Suppport for airgapped installation · Issue #2224 · anomalyco/opencode · GitHub
Skip to content

Suppport for airgapped installation #2224

Closed as not planned
Closed as not planned

Description

@mahabal-org-ind

I want to run opencode in kubernetes in an airgapped environment, which only has access to my model endpoint. I installed opencode in my docker image using

RUN curl -fsSL https://opencode.ai/install | bash

But when I try to run opencode in my pod after deployment, I get the following error:

> OPENCODE_CONFIG=claude.jsonc opencode run "what is 2+2"

INFO  2025-08-24T16:33:14 +0ms service=plugin path=opencode-copilot-auth@0.0.2 loading plugin
INFO  2025-08-24T16:33:14 +1ms service=bun pkg=opencode-copilot-auth version=0.0.2 installing package using Bun's default registry resolution
INFO  2025-08-24T16:33:14 +0ms service=bun cmd=["/root/.opencode/bin/opencode","add","--force","--exact","--cwd","/root/.cache/opencode","opencode-copilot-auth@0.0.2"] cwd=/root/.cache/opencode running
INFO  2025-08-24T16:33:14 +26ms service=bun code=1 stdout=bun add v1.2.19 (aad3abea)
 stderr=Resolving dependencies
Resolved, downloaded and extracted [6]
error: ConnectionRefused downloading package manifest opencode-copilot-auth
 done
ERROR 2025-08-24T16:33:14 +6ms service=default pkg=opencode-copilot-auth version=0.0.2 name=BunInstallFailedError message=BunInstallFailedError cause=Error: Command failed with exit code 1 fatal

I would love it if there was a config or environment variable which would prevent network access of any kind, except the model API call. Thanks.

Activity

  1. github-actions commented on Aug 24, 2025

    @github-actions
    Contributor

    This issue might be a duplicate of existing issues. Please check:

    Feel free to ignore if none of these address your specific case.

  2. rekram1-node commented on Aug 24, 2025

    @rekram1-node
    Collaborator

    yeah we should do some environment var for sure

  3. jamestrew commented on Aug 26, 2025

    @jamestrew

    I got a very similar error message and started digging through the code and found these.

    OPENCODE_DISABLE_DEFAULT_PLUGINS=true
    OPENCODE_DISABLE_LSP_DOWNLOAD=true
    

    But you still get stuck with opencode trying to install provider sdks.
    Would love to see a workaround for this.

  4. rekram1-node commented on Aug 26, 2025

    @rekram1-node
    Collaborator

    it is a little more complicated than just a var depending on the models you use since we don't ship all sdks out of the box

  5. Ninja3047 commented on Aug 26, 2025

    @Ninja3047
    Contributor

    I think for offline use, it would make sense to just include the open ai compatible sdk by default.

  6. ad-ops commented on Sep 4, 2025

    @ad-ops

    I managed to get it working by downloading the dependencies during docker build, but I was not able to recreate it in current versions.

    Perhaps an interim solution could be having a flag that prevents the download like the LSPs as it would allow us to build the image or otherwise download the packages separately from running.

    But I agree it would be nice if you could get a standalone airgapped version with all dependencies included.

  7. jamestrew commented on Sep 4, 2025

    @jamestrew

    But I agree it would be nice if you could get a standalone airgapped version with all dependencies included.

    I can live without having all (LSP, copilot/anthropic auth) dependencies.
    But the lack of provider SDKs being included is legitimately a blocker keeping me from using opencode in certain environments. A shame since I do enjoy using it where I can.

    @rekram1-node do you know if there's interest in potential baking in SDKs from the maintainer?

  8. rekram1-node commented on Sep 4, 2025

    @rekram1-node
    Collaborator

    I will ask

  9. rekram1-node commented on Sep 4, 2025

    @rekram1-node
    Collaborator

    @jamestrew which providers do you need? you could install the providers yourself and then install opencode, but perhaps all providers should be bundled out of box

  10. r4ravi2008 commented on Sep 30, 2025

    @r4ravi2008

    I managed to get it working by downloading the dependencies during docker build, but I was not able to recreate it in current versions.

    Perhaps an interim solution could be having a flag that prevents the download like the LSPs as it would allow us to build the image or otherwise download the packages separately from running.

    But I agree it would be nice if you could get a standalone airgapped version with all dependencies included.

    Trying to do this as well - any pointers?

  11. jpsullivan commented on Oct 6, 2025

    @jpsullivan

    @rekram1-node I think bundling "@ai-sdk/openai-compatible" into builds would make a lot of sense for an offline-only kind of mode, mostly since in that kind of capacity you're only going to be hitting models that are being served locally.

  12. rekram1-node commented on Oct 6, 2025

    @rekram1-node
    Collaborator

    @jpsullivan yeah I mentioned this to dax, we may just bundle all the providers because only a few are really used:

    • google
    • anthropic
    • openai
    • openai compatible (most fall under this category)

    that accounts for 99% of usage

  13. jpsullivan commented on Oct 6, 2025

    @jpsullivan

    That would be perfect!

  14. dnollshai commented on Oct 23, 2025

    @dnollshai

    To be clear... other than trying to download these provider models is it possible to run fully locally? I'm trying to make sure no telemetry will not be sent upstream if I'm running a local model.

  15. 2 remaining items

  16. rekram1-node commented on Nov 20, 2025

    @rekram1-node
    Collaborator

    gonna start bundling in the providers by default in next release or two

  17. lucasperin commented on Nov 20, 2025

    @lucasperin

    Another comment if I may, opencode also gets stuck for quite some time trying to fetch models.dev.
    Perhaps also add a way to skip this?

    I am trying to set the provider list in the json config to empty for opencode, anthropic and openai. Not sure how to disable the models.dev yet.

  18. taqtiqa-mark commented on Nov 21, 2025

    @taqtiqa-mark
  19. bbartels commented on Jan 9, 2026

    @bbartels
    Contributor

    gonna start bundling in the providers by default in next release or two

    We'd love to use opencode for our airgapped company setup to have an alternative to claude. Any update on bundling? @thdxr @rekram1-node

  20. navieSimple commented on Mar 6, 2026

    @navieSimple

    mark

  21. Deftera186 commented on Mar 8, 2026

    @Deftera186

    Bump. Seems like there's already PRs that solve this issue

  22. practicusai commented on Mar 16, 2026

    @practicusai

    Bump. This is preventing us to roll-out OpenCode.

  23. github-actions commented on May 16, 2026

    @github-actions
    Contributor

    To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.

  24. brutesque commented on Aug 10, 2026

    @brutesque

    Not planned? Ridiculous! Air-gapping is an important safety measure.

  25. brutesque commented on Aug 10, 2026

    @brutesque

    Imagine not focussing on airgapping agents, while companies are getting attacked by sandbox escaping harnesses.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions