Files
wiki/public/raw/docs-opencode.md

6.1 KiB

OpenCode Integration

This framework includes full OpenCode support with agents, commands, skills, and plugins.


Type: post Date: 2026-01-10 Reading time: 4 min read Tags: opencode, plugins, terminal

OpenCode Integration

OpenCode is an AI-first development tool that works alongside Claude Code and Cursor. This framework includes full OpenCode support with agents, commands, skills, and plugins.


How OpenCode works

+------------------+    +-------------------+    +------------------+
|  User request    |--->|  Orchestrator     |--->|  Specialist      |
|  "Create a post" |    |  Agent routes     |    |  Agent executes  |
|                  |    |  to specialist    |    |  the task        |
+------------------+    +-------------------+    +--------+---------+
                                                         |
                                                         v
+------------------+    +-------------------+    +------------------+
|  Result          |<---|  Skills provide   |<---|  Commands wrap   |
|  returned to     |    |  context and      |    |  npm scripts     |
|  user            |    |  documentation    |    |  for quick access|
+------------------+    +-------------------+    +------------------+
  1. User makes a request in OpenCode
  2. Orchestrator agent analyzes and routes the task
  3. Specialist agent (content-writer or sync-manager) handles it
  4. Skills provide documentation context
  5. Commands offer quick keyboard shortcuts
  6. Plugins automate common workflows

Directory structure

OpenCode configuration lives in .opencode/ alongside existing .claude/ and .cursor/ directories:

.opencode/
├── config.json           # OpenCode app configuration
├── agent/
│   ├── orchestrator.md   # Main routing agent
│   ├── content-writer.md # Content creation specialist
│   └── sync-manager.md   # Sync and deployment specialist
├── command/
│   ├── sync.md           # /sync command
│   ├── sync-prod.md      # /sync-prod command
│   ├── create-post.md    # /create-post command
│   ├── create-page.md    # /create-page command
│   ├── import.md         # /import command
│   └── deploy.md         # /deploy command
├── skill/
│   ├── frontmatter.md    # Frontmatter syntax reference
│   ├── sync.md           # How sync works
│   ├── convex.md         # Convex patterns
│   └── content.md        # Content management guide
└── plugin/
    └── sync-helper.ts    # Reminder plugin for content changes

Available commands

Quick commands accessible via / prefix in OpenCode:

Command Purpose
/sync Sync markdown content to development Convex
/sync-prod Sync markdown content to production Convex
/create-post Create a new blog post with proper frontmatter
/create-page Create a new static page
/import Import content from an external URL
/deploy Full deployment workflow to production

Agents

Three specialized agents handle different types of tasks:

Orchestrator (primary agent)

  • Routes tasks to appropriate specialists
  • Handles general code changes directly
  • Coordinates multi-step workflows

Content Writer (subagent)

  • Creates blog posts and pages
  • Validates frontmatter
  • Knows content directory structure
  • Reminds you to run sync

Sync Manager (subagent)

  • Executes sync commands
  • Handles dev vs prod environments
  • Troubleshoots sync issues
  • Manages deployments

Skills

Skills provide documentation context to agents:

Skill Purpose
frontmatter Complete frontmatter syntax for posts/pages
sync How the sync system works end-to-end
convex Convex patterns (indexes, mutations, queries)
content Content management workflows

Plugins

The sync-helper plugin provides automation:

// When content files change, log a reminder
"file.edited": async (event) => {
  if (event.path.startsWith("content/")) {
    await client.app.log("info", "Content changed - run /sync to publish")
  }
}

Plugins hook into OpenCode events like file edits and session idle states.

Getting started

  1. Install OpenCode CLI (see opencode.ai)
  2. Open your project directory
  3. OpenCode automatically recognizes the .opencode/ configuration
  4. Use /sync after creating content

Compatibility

This framework works with multiple AI development tools simultaneously:

Tool Configuration Directory
OpenCode .opencode/
Claude Code .claude/skills/
Cursor .cursor/rules/

All tools can be used without conflicts. Skills are duplicated (not shared) to ensure each tool works independently.

Configuration files

File Purpose
opencode.json Root project configuration
.opencode/config.json App-level settings

Example opencode.json:

{
  "name": "markdown-publishing-framework",
  "description": "AI-first markdown publishing with Convex real-time sync",
  "plugin": []
}

When to use OpenCode vs other tools

Task Recommended Tool
Quick content creation OpenCode (/create-post)
Complex code changes Claude Code or Cursor
Sync workflows OpenCode (/sync, /deploy)
Debugging Any tool with your preference

Resources