anomalyco / anomalyco/opencode
[FEATURE]: Todo Sidebar with Linear integration (project-scoped issue management)
@Brendonovich is already working on this.
Since Jul 21, 2026.
- Dominant language
- TypeScript
- Stars
- 209k
- Forks
- 27.5k
- PR merge metrics
- PR metrics pending
Description
Feature hasn't been suggested before.
- I have verified this feature I'm about to request hasn't been suggested before.
Describe the enhancement you want to request
The problem
OpenCode currently has a per-session flat todo list (session.sql.ts → TodoTable) tied to a single chat session. When the session ends, the todos are stranded. There is no project-scoped task management surface, and no integration with external issue trackers like Linear. Users working on a multi-session feature lose their task context between sessions and have no way to sync work with their team's Linear workspace.
The enhancement
Add a Linear-style Todo / Issue management feature to OpenCode Desktop. The feature is an independent project-scoped system that can optionally collaborate with the Linear MCP server (https://mcp.linear.app/sse).
Core capabilities:
- Two-level hierarchy — L1 todos run sequentially, L2 sub-todos run in parallel. The feature does not validate ordering.
- Linear-aligned statuses —
Backlog,Todo,In Progress,In Review,Done,Canceled,Duplicate. - Priorities —
Urgent,High,Medium,Low,No priority. - Project/workspace scope — each OpenCode directory maps to one project; todos persist across sessions in that workspace, independent of any chat session.
- Linear MCP integration (optional) — a directory maps to a Linear Project; opening a directory switches the Linear context. Sync pull/push keeps local todos and Linear issues aligned. The Linear integration is an add-on; the sidebar works standalone without it.
- Agent integration — agents can auto-create / re-order / update todos as work progresses, via a thin kernel tool or through the existing Linear MCP system.
Why this is not a duplicate
- #21590 covers session-level status management (status flags on chat sessions themselves, sidebar filtering by status). This request is about a project-scoped task system that lives outside any session — todos persist across sessions and reference sessions/messages but are not sessions.
- #5971 covers a plugin API for custom sidebar panels. This request is for a first-party Todo surface, not a plugin API.
Implementation status
A complete implementation is proposed in #38082 (8 atomic commits, rebased on dev). UI screenshots and full design rationale (ADRs 0001–0007) are in the PR description.
Benefits
- Todos become first-class project-scoped work items, not stranded chat artifacts
- Users can manage AI-assisted work like a lightweight task board across sessions
- Linear users can sync their local todos with their team's Linear workspace without leaving OpenCode
- Agents gain a stable task surface to track multi-step work
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.