contribution/compass
anomalyco/opencode

OpenCode

602 signals · 626 observation events

Open repository ↗

The open source coding agent.

197.0K stars25.3K forksTypeScriptMITkeyword: OpenCode
PROJECT NEWS

Release, roadmap, and discussion

All news →
anomalyco/opencode

OpenCode

Coding-Agent Infrastructure
Latest stable

v1.18.18

v1.18.18
  • Core
  • Bugfixes
  • Select the Kimi system prompt correctly for official Moonshot and Kimi providers
  • Fix xhigh reasoning effort for xai models
Original release notes ↗

Publicly indicated next

  • No public prerelease or open milestone found.

Prereleases and milestones indicate public plans; they are not delivery commitments.

Observation trail

  1. discoveredinitial snapshot
  2. changedupdatedAt, metrics, assignees
  3. changedupdatedAt, metrics
  4. discoveredinitial snapshot
  5. discoveredinitial snapshot
  6. discoveredinitial snapshot
  7. discoveredinitial snapshot
  8. changedtext, updatedAt
  9. discoveredinitial snapshot
  10. discoveredinitial snapshot
  11. changedupdatedAt, metrics, state
  12. discoveredinitial snapshot
  13. changedupdatedAt
  14. discoveredinitial snapshot
  15. discoveredinitial snapshot
  16. changedtitle, text, updatedAt
  17. changedmetrics
  18. changedmetrics
  19. changedmetrics
  20. changedmetrics
  21. changedmetrics
  22. changedmetrics
  23. changedmetrics
  24. changedmetrics
  25. changedmetrics
  26. changedmetrics
  27. changedmetrics
  28. changedmetrics
  29. changedmetrics
  30. changedtext, updatedAt, state
50 shown
issue

Desktop App: Spell Checker annoyance

### Description Prompt input field of desktop app displays spell checker error for each word not in the selected language. Example: If German is selected language, each English word is marked as grammatical error. This is due to the fact, that in Electron app the spell checker is enabled by default and cannot be disabled on Windows. (In MacOS, the spell chec

importance 5@jan370closedOriginal evidence ↗
issue

[FEATURE]:One Key Copy

### Feature hasn't been suggested before. - [x] I have verified this feature I'm about to request hasn't been suggested before. ### Describe the enhancement you want to request We need two buttons here: One is a jump button: click it once to jump to the position of my previous question. You can click it multiple times to jump to the position before that. One

importance 5@linzhongziclosedOriginal evidence ↗
issue

SSE reconnection never fires after initial connection failure

### Description The SSE reconnect loop in packages/tui/src/context/sdk.tsx only retries when the stream ends cleanly. If sdk.global.event() throws on the first call (server not ready, port not bound), the exception goes straight to .catch(() => {}) with no reconnection attempt. The TUI never receives events and appears frozen. ### OpenCode version Latest dev

importance 5@MethodWhiteclosedOriginal evidence ↗
issue

Unhandled promise rejections in session operations crash the TUI

### Description Several void SDK calls in packages/tui/src/routes/session/index.tsx fire async requests without .catch(). Bun terminates the process on unhandled rejections. Affected calls: - sdk.client.session.summarize() (line 572) - sdk.client.session.revert() (line 616) - sdk.client.experimental.session.background() (line 1025) ### OpenCode version Lates

importance 5@MethodWhiteclosedOriginal evidence ↗
issue

`@` file reference search is broken after `/move` to a git worktree

### Description `@` file reference search seems to keep stale repository context after using `/move` from an original git repository into one of its git worktrees. If I start OpenCode directly inside the worktree, `@` search works as expected. The problem only appears when I first start OpenCode in the original repository, reference/open a file there, then u

importance 5@JulfriedclosedOriginal evidence ↗
issue

[FEATURE]: Add option to edit model or provider in GUI settings without deleting them

### Feature hasn't been suggested before. - [x] I have verified this feature I'm about to request hasn't been suggested before. ### Describe the enhancement you want to request I modify my local model configuration once a week since I frequently switch the model settings. It's very frustrating that I need to either open the config file in notepad or delete t

importance 5@vektorprimeclosedOriginal evidence ↗
issue

GitHub Integration with Opencode Zen

### Description Im getting this error when my workflow file runs : ```bash Error: Unexpected error undefined is not an object (evaluating 'p.rest') ``` This is my current workflow file : ```yml name: opencode on: issue_comment: types: [created] pull_request_review_comment: types: [created] permissions: contents: write pull-requests: write issues: write id-to

importance 5@FabrzyTechopenOriginal evidence ↗
issue

[Bug] zen/go model compatibility in Anthropic /v1/messages for coding-agent tool use

# [Bug] `zen/go` model compatibility in Anthropic `/v1/messages` for coding-agent tool use ## Summary Using OpenCode `zen/go` with Anthropic-compatible `POST /v1/messages` in coding-agent workflows, model behavior is inconsistent: - `qwen3.7-max` works with tool calls. - `glm-5.2` succeeds for plain text but fails when tools are included. - `kimi-k2.7-code`

importance 5@lixinjie97openOriginal evidence ↗
issue

Bug: Plan mode allows creating GitHub issues via gh CLI

## Description While in Plan Mode (read-only), it is possible to create GitHub issues using `gh issue create` and make API calls via `gh api`/curl. This violates the constraint that Plan Mode should be read-only. ## Steps to Reproduce 1. Be in Plan Mode 2. Run any of: - `gh issue create -R <repo> --title "test" --body "test"` - `curl -X PATCH -H "Authorizati

importance 5@sporteka2openOriginal evidence ↗
issue

tui: default_agent is ignored on startup in V2

## Summary The OpenCode V2 full TUI ignores `default_agent` when starting a new session and selects `Build` instead. This occurs with both built-in and custom primary agents. ## Environment - opencode version: `opencode2 v0.0.0-next-15636` - OS: Linux 7.1.2-arch3-1, x86_64 - Terminal: tmux (`TERM_PROGRAM=tmux`, `TERM=xterm-256color`, `COLORTERM=truecolor`) -

importance 5@chrisae9open2.0Original evidence ↗
issue

Free Usage Exceeded on 1st use after signup

### Description Bro just signed up using my github and then configured using api key, and tried using, only to find an error for Free Usage Exceeded, Subscribe to go.... I thought i might have used the github account before so signed up using a different google account to find the same error ### Plugins No plugins ### OpenCode version 1.18.8 ### Steps to rep

importance 5@Xkid0525Original evidence ↗
issue

[FEATURE]: Support private GitHub repos in opencode.json instructions remote URLs

### Feature hasn't been suggested before. - [x] I have verified this feature I'm about to request hasn't been suggested before. --- ### Problem The `instructions` field in `opencode.json` supports remote URLs, but only does an unauthenticated HTTP GET. Private repos — where most organizations keep their shared coding guidelines — return 404, making this feat

importance 5@InsighttfulopenOriginal evidence ↗
issue

GitHub Action ignores GHES API endpoint variables

### Description The GitHub Action creates its REST and GraphQL clients with GitHub.com defaults even when GitHub Actions provides `GITHUB_API_URL` and `GITHUB_GRAPHQL_URL` on GHES. REST requests can therefore target GitHub.com, while deriving GraphQL from the REST endpoint would also use the wrong GHES path. ### Plugins None ### OpenCode version Current `dev

importance 5@rover0811openOriginal evidence ↗
issue

[FEATURE]: Allow per-MCP-server trust configuration

## Problem Many MCP servers run inside private networks without publicly trusted TLS certificates. Examples include: - OPNsense / pfSense firewalls - TrueNAS / Synology appliances - Proxmox servers - Kubernetes clusters - Home Assistant - Enterprise internal services These services commonly use: - Self-signed certificates - Private certificate authorities -

importance 5@karupopenOriginal evidence ↗
issue

Bun segfault (address 0x0) recurring with identical crash signature during long agentic sessions with high subprocess-spawn count

## Summary `opencode` (single instance, no other opencode process running) has crashed twice with an identical Bun segfault signature during long-running agentic sessions with heavy tool-call/subprocess-spawn activity. Both crashes decode to the **same `bun.report` URL**, indicating a deterministic, reproducible crash location rather than two unrelated incid

importance 5@shlomoweb1openOriginal evidence ↗
issue

RTL/bidi broken for mixed Arabic-script + Latin text in TUI

**Environment:** opencode 1.18.11, Windows, reproduced identically in both Windows Terminal and the desktop app. Any line containing both Persian/Arabic (RTL) and an embedded Latin word (LTR) renders in scrambled order instead of correct right-to-left. Pure single-direction lines render fine. The TUI appears to lay text out cell-by-cell in a monospace grid w

importance 5@rahgozar94725openOriginal evidence ↗
issue

[FEATURE]: Support GITHUB_TOKEN in install script (API rate limit + private repos)

### Feature hasn't been suggested before. - [x] I have verified this feature I'm about to request hasn't been suggested before. ### Describe the enhancement you want to request The `install` script makes three anonymous GitHub requests: 1. Version detection: `curl -s https://api.github.com/repos/anomalyco/opencode/releases/latest` 2. Release existence check:

importance 5@rwenz2004openOriginal evidence ↗
issue

opencode run hangs indefinitely when the usage quota is exhausted, instead of reporting the error it already has

### Summary When a model's usage quota is exhausted, `opencode run` **never exits and never reports the reason**. The process hangs indefinitely with no output on stdout and nothing but a banner on stderr — even though the error is known internally within ~170 ms and written to opencode's own log file. Any non-interactive use (scripts, CI, an app shelling ou

importance 5@BallootaopenOriginal evidence ↗
issue

MiniMax models fall through to the Claude-oriented default prompt

### Description `SystemPrompt.provider()` in `packages/opencode/src/session/system.ts` picks a system prompt by substring-matching the model id. There is a branch for Kimi (`kimi.txt`, the open-weight agentic prompt) but none for MiniMax, so every MiniMax model falls through to `PROMPT_DEFAULT` (`default.txt`), which is written for Claude. `default.txt` assu

importance 5@quickbeardclosedOriginal evidence ↗
issue

[FEATURE] Desktop: voice input for prompts (mic → text) and optional voice summary output

## Feature request Desktop app has no way to control OpenCode by voice / from mobile. On Windows desktop, users would like: 1. **Voice input for the prompt box** (Windows Speech Recognition or Whisper-style): press a hotkey, speak, and the prompt is transcribed into the input — far faster for long commands than typing Chinese/English on a keyboard. 2. Option

importance 5@liudongyan13701205717-sourceclosedOriginal evidence ↗
issue

Context compression loses initial user question and reasoning chain, model responds with hallucinated content

### Description markdown Bug Description After context compression kicks in, the model loses awareness of the original user question and its own prior reasoning chain. It then responds with plausible-looking but factually incorrect content that bears no relation to the actual task. This is a significant usability issue — the model effectively "forgets" what

importance 5@bai101315Original evidence ↗
issue

[BUG]: Windows Desktop sidecar crashes with exitCode -2147483645, then "Failed to fetch"

### Description OpenCode Desktop starts normally on Windows and the local server initially becomes available, but after a short time the `opencode server` sidecar crashes. The UI then reports `TypeError: Failed to fetch`. The issue is reproducible on both 1.18.15 and 1.18.16, including with a completely empty local project outside OneDrive. The logs show: si

importance 5@Annie9682openOriginal evidence ↗
issue

Manual /compact with DeepSeek V4 Flash degenerates into thousands of repeated lines

### Description A manual `/compact` request using `opencode-go/deepseek-v4-flash` entered an intra-response repetition loop. This differs from repeatedly triggering multiple `Session compacted` cycles: one compaction request itself generated a transcript-like prefix and then repeated the same short line 1,511 times. The compaction never completed. I cancelle

importance 5@a-green-hand-jackclosedOriginal evidence ↗
issue

Instance bootstrap hangs forever (Linux): spawned git child exits but is never reaped — TUI renders, but Enter can never start a session

## Summary On Linux, `opencode` (TUI) intermittently hangs **forever during instance bootstrap**: a `git` child spawned during init **exits but is never reaped** (it stays `<defunct>` for the life of the process), the bootstrap await never settles, and the window renders normally — accepts typing — but Enter can never start a session because the server side

importance 5@oren-kkopenOriginal evidence ↗
issue

LLM retry has no max attempts: stream errors cause infinite retry loop, UI stuck on Thinking

## Summary LLM retry has no maximum attempt limit. RETRY_MAX_DELAY is set to 2147483647ms (~24 days). When DeepSeek returns a stream error, the retry loop continues indefinitely — the UI shows "Thinking..." forever with no error feedback. ## Evidence - 5 processes died on `llm runtime selected` immediately after `stream error` - RETRY_MAX_DELAY = 2147483647

importance 5@teran-netizenopenOriginal evidence ↗
issue

cli: generated Zsh completions fail with doubled argument definition

## Summary The Zsh script generated by `opencode2 --completions zsh` defines both the optional directory and command as positional argument 1. Pressing Tab after `opencode2 ` fails instead of showing completions. ## Environment - opencode version: `opencode2 v0.0.0-next-17276` - OS: Windows 11 with WSL2; Linux 6.18.33.2-microsoft-standard-WSL2 x86_64 - Termi

importance 5@AdiY00closed2.0Original evidence ↗
issue

fix(mcp): retry failed MCP connections to handle parallel spawn race condition

## Problem When opencode spawns MCP servers in parallel (concurrency: unbounded), some subprocesses close their stdio pipe before completing the MCP initialize handshake, causing intermittent "Connection closed" errors - different MCPs fail on each run. ## Expected behavior All configured MCP servers connect reliably regardless of spawn order/parallelism. ##

importance 5@herjarsaOriginal evidence ↗
issue

feat(config): add mcp_inherit flag to control global MCP inheritance

## Feature request Add a `mcp_inherit` config field (defaults to `true`) that lets projects opt out of inheriting globally configured MCP servers. Currently every project inherits all global MCPs, and disabling them per-server is tedious. ## Expected behavior A project can set `mcp_inherit: false` to not inherit any global MCP servers.

importance 5@herjarsaOriginal evidence ↗
issue

feat(memory): add agent_memory table and memory-tools plugin

## Feature request Add an `agent_memory` table (SQLite, with FTS5 full-text search and tags) plus a `memory-tools` plugin exposing save/search/consolidate operations, enabling cloud backup/restore of OpenCode AgentMemory via Supabase. ## Expected behavior Memory records persist across sessions in a structured table and can be queried/synced by the memory-too

importance 5@herjarsaOriginal evidence ↗
issue

feat(app): add confirmation dialog before archiving session

## Feature request Show a confirmation dialog before archiving a session from the message timeline, following the same pattern as the existing `DialogDeleteSession`, so accidental archive clicks are prevented. ## Expected behavior Clicking archive on a session shows a confirmation dialog with the session name before archiving.

importance 5@herjarsaOriginal evidence ↗
issue

Missing tool description (undefined) on a plugin tool causes ALL sessions to crash with "Expected string, got undefined at [description]"

## Summary When a local plugin registers tools via `ctx.tool.transform` → `tools.add({...})`, and one tool is missing its required `description` string field, it does NOT just make that one tool unusable — it breaks every session and every message, including a trivial "Reply with exactly: SMOKE_OK" that never touches the tool. The whole chat fails to get a r

importance 5@system1970closed2.0Original evidence ↗
issue

limit

### Description Error: 429: {"type":"FreeUsageLimitError","message":"Error from provider (Console): Rate limit exceeded. Please try again later ### Plugins _No response_ ### OpenCode version _No response_ ### Steps to reproduce _No response_ ### Screenshot and/or share link _No response_ ### Operating System _No response_ ### Terminal _No response_

importance 5@rkobrooclosedOriginal evidence ↗
issue

fix(app): settings dialog handler locks up after scope cleanup

### Problem When useSettingsDialog is registered in the command palette or global keybindings, its internal dead flag gets set to true whenever the parent component scope triggers onCleanup. Subsequent calls to open the settings dialog via keyboard shortcut (Cmd+,) or command palette fail silently because the internal Promise check if (dead || run !== curren

importance 5@MaaBlockclosedOriginal evidence ↗
issue

403

### Description Upstream request failed: [403] This model is not available in your region. ### Plugins _No response_ ### OpenCode version _No response_ ### Steps to reproduce _No response_ ### Screenshot and/or share link _No response_ ### Operating System _No response_ ### Terminal _No response_

importance 5@shixin2010gitclosedOriginal evidence ↗
issue

Not working

### Description My opencode is not working well with ai provider why?? Retrying in 51s · attempt 7 Free limit reached Subscribe to OpenCode Go for reliable access to the best open-source models, starting at $5/month. ### Plugins _No response_ ### OpenCode version _No response_ ### Steps to reproduce _No response_ ### Screenshot and/or share link _No response

importance 5@HotShotLabelclosedOriginal evidence ↗
issue

Billing Issue: OpenCode Go Paid $5 Promo, Account Stuck on Free Tier (Invoice NFGKFBRU-0001)

### Description Good day, I am writing to report an issue with my subscription activation for OpenCode Go.I signed up using the first-month promotional offer of $5.00, and my credit card (ending in 3796) was successfully charged $5.00 on August 12, 2026. However, my account profile and API key are still showing as being on the "Free" tier, and the applicatio

importance 5@JustsefclosedOriginal evidence ↗
issue

payment

its asking me to pay for subscription even tho im using your free models

importance 5@krishaysatish1-blipclosedOriginal evidence ↗
issue

MON OPEN CODE DESKTOP BUG

Hello, the OpenCode application is glitching for me. When I open it, the chat window appears, but when I try to select a model or a provider, nothing shows up—it only gives me the option to add a provider manually. I’ve tried various things and different methods, but the bug persists. Please help me.

importance 5@m222K564closedOriginal evidence ↗
issue

Todo state never flows back to the model: agents forget todowrite maintenance (proposal: inject via SessionReminders)

## Summary The `todowrite` tool asks the agent to "update status in real time", but the model has **no feedback channel for current todo state** — it only sees todo state in its own past `todowrite` tool outputs. As the conversation grows (and especially after compaction), the agent reliably forgets to maintain the list: stale `in_progress` items linger, com

importance 5@cenglin123closedOriginal evidence ↗
issue

v2 provider: HTTP 400 from Copilot model restarts active session server

## Summary An active session repeatedly restarts when GitHub Copilot rejects `gpt-5.6-sol` on the `/chat/completions` endpoint. This interrupts tool calls and requires the user to ask the agent to continue. ## Environment - opencode version: `0.0.0-next-17297` - OS: Darwin 25.6.0, arm64 - Terminal: Ghostty (`TERM=xterm-256color`, `COLORTERM=truecolor`) - She

importance 5@stevolandopen2.0Original evidence ↗
issue

Is OpenCursor Really free?

### Description I am Using A Free Model Called Big pickle Whenever I try to run something it says <img width="551" height="175" alt="Image" src="https://github.com/user-attachments/assets/92b8c7c5-4d17-41bc-bc7d-8d4655c5de78" /> ### Plugins nothing ### OpenCode version 1.18.16 ### Steps to reproduce _No response_ ### Screenshot and/or share link _No response

importance 5@baconroaster23openOriginal evidence ↗