Are you the author? Sign in to claim
OpenConfig — best OpenCode + oh-my-openagent (OmO) + OpenRouter AI coding agent config. Sisyphus · Claude · GPT · DeepSe
Pinned global config for OpenCode + OpenRouter + oh-my-openagent (OmO).
v1.5.34 · CLI oc · identity openconfig/opencode-configs
git clone https://github.com/jesseoue/opencode-configs.git
cd opencode-configs
oc install --quick # or: ./install.sh --yes
# Fresh machine
curl -fsSL https://raw.githubusercontent.com/jesseoue/opencode-configs/main/install.sh | bash
source ~/.zshrc && oc doctor && oc launch
| Pins | OpenConfig 1.5.34 · OpenCode 1.18.5+ · OmO oh-my-openagent@4.19.1 · @opencode-ai/plugin 1.18.5 |
| Default lead | sisyphus (GLM Exacto) |
| Config path | ~/.config/opencode → this repo (symlink) |
| Projects home | oc new → ~/Projects/<name> |
| Health | oc doctor · oc versions · oc test |
Plugin name must stay
oh-my-openagent@…(not legacyoh-my-opencode).
Schema URL basename staysoh-my-opencode.schema.json(theoh-my-openagent.schema.jsonpath 404s).
Decision log: AGENTS.md · Stance: prompts/core.md · Changelog: CHANGELOG.md
export OPENROUTER_API_KEY=… # required
export OPENAI_API_KEY=… # GPT lane (Hephaestus / Oracle / Momus / …)
export EXA_API_KEY=… # OmO websearch
export CONTEXT7_API_KEY=… # library docs
oc install --quick
oc signature && oc test && oc versions && oc doctor
oc launch
Or edit keys after install:
$EDITOR ~/.config/opencode/.env # chmod 600; never commit
source ~/.zshrc
oc doctor && oc launch
oc install --quick # install / refresh
oc check # validate + doctor --quick
oc heal # probe-first self-repair
oc launch [dir] # TUI (never starts in the config repo)
oc new myapp # scaffold under ~/Projects
oc run "…" # headless to completion
oc admin health # live OpenRouter + OpenAI probes
oc models --providers # OpenRouter provider health for routed models
oc versions # pins vs npm + GitHub (+ other opencode.json)
oc versions --fix # align ~/.opencode @opencode-ai/plugin to CLI
oc locate # repo / CLI / keys
oc signature # identity fingerprint
oc test # smoke + idempotency
oc doctor # full readiness
oc doctor --quick --json # machine summary (heal/check tooling)
Prefer oc <cmd> over raw ./foo.sh. Full help: oc help.
Floors and the OmO pin live in versions.json. The OmO plugin string in opencode.json must match. Audit anytime:
oc versions # local pins + npm/GitHub latest
oc versions --local # no network
oc versions --json # machine-readable
oc versions --fix # set ~/.opencode @opencode-ai/plugin to match OpenCode CLI
| Package | Source of truth | Current |
|---|---|---|
| OpenConfig | versions.json → opencode_configs | 1.5.34 |
| OpenCode CLI | install + versions.json → opencode.min | 1.18.5+ |
| OmO | opencode.json plugin + versions.json → oh_my_openagent.pin | 4.19.1 |
@opencode-ai/plugin | ~/.opencode/package.json (peer; not in this repo) | match CLI |
oc versions also lists other opencode.json files under ~/Projects and /Users/Shared. Those are project overlays — OmO stays pinned globally here.
| Need | Tool | Notes |
|---|---|---|
| Local code | read · grep · glob · codegraph · LSP | Always first |
| Library / framework APIs | Context7 MCP | resolve-library-id → query-docs |
| GitHub call sites | grep_app (OmO) | Public-repo patterns |
| Current web | websearch (Exa) | Ideal-page queries; then webfetch |
| Known URL | webfetch | Clean markdown |
| Screenshots / UI | look_at (OmO) | multimodal-looker |
Exa: describe the ideal page, not keyword soup. Optional: category:company · category:people · category:news · category:research paper.
| Surface | Status |
|---|---|
| Context7 MCP | Enabled (CONTEXT7_API_KEY) |
| Exa websearch | Enabled (EXA_API_KEY) |
| codegraph | Enabled · telemetry off · ~/.omo/codegraph |
| LSP | TypeScript · Python · Go only |
| Formatters | Prettier + Ruff |
| Skills | content-aware-recon · content-aware-audit under skills/ (fenced) |
OmO security-* skills | Disabled (hang headless oc run) — use local content-aware skills |
| Extra MCPs | Disabled (PostHog, Sentry, Playwright MCP, …) |
| Telemetry | Off (OpenCode share/OTel · OmO PostHog · codegraph · DO_NOT_TRACK) |
Disabled on purpose (noisy / footguns): interactive_bash, monitor tools, session_list / session_search.
Encoded in prompts/core.md, sisyphus, and librarian.
| Agent | Model | Role |
|---|---|---|
| sisyphus | GLM 5.2 Exacto | Default orchestrator / lead |
| hephaestus | GPT-5.6 Sol (direct OpenAI) | Implementation |
| prometheus | GLM 5.2 Exacto | Planner |
| atlas | GLM 5.2 Exacto | Plan executor after /start-work |
| content-aware-research | DeepSeek V4 Pro | Full-depth research (edit denied) |
task / call_omo_agent — not team members)| Agent | Model | Role |
|---|---|---|
| oracle | GPT-5.6 Sol | Critique / adjudication |
| librarian | DeepSeek Flash Nitro | Docs (Context7-first) |
| explore | DeepSeek Flash Nitro | Codebase map |
| multimodal-looker | Claude Sonnet 5 | Vision (look_at) |
| metis | Claude Sonnet 5 | Pre-planning critic |
| momus | GPT-5.6 Sol max | Plan / review gate |
| sisyphus-junior | DeepSeek Flash Nitro | Cheap delegated work |
Native OpenCode build is disabled. plan stays demoted for hyperplan handoff — do not put it in disabled_agents.
| Category | Model | Use |
|---|---|---|
bug-hunt | GLM Exacto | Reproduce → root cause → fix |
refactor-safe | GLM Exacto | Behavior-preserving refactors |
arch-review | GPT-5.6 Sol | Coupling / blast radius |
content-aware-fast | DeepSeek Flash Nitro | Attack-surface recon |
content-aware-deep | DeepSeek Pro Exacto | Deep vuln research |
writing | Gemini 3.6 Flash Nitro | Docs / prose |
visual-engineering | Gemini 3.1 Pro | Ship UI |
artistry | Gemini 3.1 Pro | Design direction |
quick | DeepSeek Flash Nitro | Cheap fast tasks |
deep / ultrabrain | GPT-5.6 Sol | Heavy / max reasoning |
unspecified-low / unspecified-high | Flash / Claude Fable | Hyperplan critics |
| Say | Effect |
|---|---|
ultrawork / ulw | Claude Fable max ceiling |
team | Team-mode expansion |
hyperplan / hpp / /hyperplan | Adversarial planning (from sisyphus) |
/goal | Disabled — OmO 4.19 goal hook breaks /start-work. Use /start-work → Atlas (prompts/goal.md) |
/start-work | Atlas executes an approved Prometheus plan |
Lead: sisyphus. Specs in teams/ are symlinked to ~/.omo/teams/ by oc setup.
Eligible: sisyphus, atlas, sisyphus-junior, hephaestus (teammate: allow), or kind: category.
Hard-rejected as teammates: explore · librarian · oracle · metis · momus · multimodal · prometheus.
Knobs: max_parallel_members=4 · max_members=5 · mailbox poll 1000ms · tmux main-vertical / inline.
| Team | Members (inline prompts: ROLE / DELIVERABLE / Mailbox) |
|---|---|
explorers | scout-code (deep) + scout-docs (quick) |
ship-feature | forge (hephaestus) + junior + verifier (bug-hunt) |
debug-team | reproducer (bug-hunt) + root-cause (ultrabrain) |
review-panel | arch + bugs + cleanup (findings/proposals only) |
refactor-team | analyzer (arch-review) + executor (refactor-safe) |
docs-team | api-docs + guide (writing) |
content-aware-audit | recon (content-aware-fast) + deep (content-aware-deep) |
| Lane | Models | Used for |
|---|---|---|
| Orchestration | z-ai/glm-5.2:exacto | Sisyphus / Atlas / Prometheus / bug-hunt |
| GPT (direct) | openai/gpt-5.6-sol (+ terra / 5.5 fallbacks) | Hephaestus / Oracle / Momus / deep |
| Recon | deepseek/deepseek-v4-flash:nitro | explore / librarian / junior / quick |
| Depth | deepseek/deepseek-v4-pro:exacto | content-aware / hard fallback |
| Visual / writing | Gemini 3.1 Pro · 3.6 Flash Nitro | artistry / visual / writing |
| Ceiling | anthropic/claude-fable-5 | ultrawork · unspecified-high |
OpenRouter is primary. GPT agents prefer direct OpenAI. Fallbacks + runtime_fallback on API errors. Stream timeouts: 900s.
Priority: modelConcurrency → providerConcurrency → defaultConcurrency. oc heal / fix.sh re-apply caps if they drift.
| Knob | Value |
|---|---|
background_task.defaultConcurrency | 4 |
| OpenRouter / OpenAI / Anthropic | 6 / 4 / 2 |
| Flash / Exacto / Sol / Fable | 4 / 3 / 3 / 1 |
| Team parallel / max members | 4 / 5 |
| Goal / stale / TTL | off / 180s / 30m |
| Key | Required | Enables |
|---|---|---|
OPENROUTER_API_KEY | yes | OpenRouter models |
OPENAI_API_KEY | yes for GPT lane | Hephaestus / Oracle / Momus / deep / … |
EXA_API_KEY | for websearch | OmO Exa |
CONTEXT7_API_KEY | recommended | Context7 |
OPENROUTER_MGMT_KEY | optional | oc admin |
OC_PROJECTS_DIR | optional | oc new home (default ~/Projects) |
Copy .env.example → .env (chmod 600). Never commit .env.
oc setup --sync-env imports allowlisted keys only from Infisical/Doppler — never a full vault dump.
Every OmO agent/category loads a prompt_append from prompts/. Profiles under prompts/profiles/ brief oc new scaffolds.
| Path | What |
|---|---|
prompts/core.md | Session-wide stance, tool matrix, team eligibility |
prompts/goal.md | Why /goal is off; use /start-work → Atlas |
prompts/agents/*.md | Agent appends |
prompts/categories/*.md | Category appends |
prompts/profiles/*.md | Profile briefs |
agents/content-aware-research.md | OpenCode primary-agent def (synced with prompts) |
oc new myapp # ~/Projects/myapp · profile high
oc new myapp --profile research
oc new myapp --profile content-aware
oc projects --list
| Profile | Agent | Tuning |
|---|---|---|
high | sisyphus | Default Exacto · balanced tool_output |
low | sisyphus | Cost-first · smaller tool_output |
fast | hephaestus | Direct GPT Sol · skip ceremony |
research | sisyphus | Large tool_output · deep / ultrabrain / content-aware |
debug | sisyphus | Large tool_output · bug-hunt / debug-team |
writing | sisyphus | Gemini Flash small_model · writing category |
content-aware | content-aware-research | Edit deny · Pro + recon/audit skills |
Each project gets opencode.json + AGENTS.md. Do not set OPENCODE_CONFIG to .opencode/profile.json.
rm -rf /|~, mkfs, sudo, git push --force*, gh repo delete*.127.0.0.1:4097 · share disabled · mdns off.\033[?1049l (won’t wipe the visible screen)opencode() / oc launch never start inside the config repo or bare ~/Projectsopencode-configs/
├── oc · install.sh · setup.sh · doctor.sh · validate.sh · fix.sh
├── models.sh · versions.sh · cleanup.sh · signature.sh · locate.sh
├── opencode.json · oh-my-openagent.json · tui.json
├── versions.json · signature.json · projects.json · AGENTS.md
├── agents/content-aware-research.md
├── profiles/ · prompts/ · teams/ · skills/
├── .env.example
└── zshrc.snippet · ghostty.conf · tmux.conf
~/.config/opencode → this repo
~/Projects/ → oc new home
~/.omo/teams/ → team specs
~/.opencode-backups/→ backups + heal/install logs
oc signature && oc test && oc validate && oc versions && oc doctor
bunx oh-my-openagent@4.19.1 doctor # upstream: System OK
Idempotency: re-running install / setup / heal / fix on a healthy box must not clobber .env, rewrite correct symlinks, or bump clean config mtimes.
| Layer | Docs | Source |
|---|---|---|
| OpenCode | opencode.ai/docs | anomalyco/opencode |
| OmO | omo.vibetip.help/docs | code-yeongyu/oh-my-openagent |
| OpenRouter | openrouter.ai/docs | Exacto / Nitro routing |
| Context7 | context7.com | upstash/context7 |
| Exa | docs.exa.ai | exa-labs |
Installer pulls OpenCode from https://opencode.ai/install and OmO from npm oh-my-openagent@4.19.1 only.
oh-my-openagentplan in disabled_agents (breaks hyperplan).env, package.json, node_modules, .omo, .sisyphus, or plugins/ hereoc new.opencode/profile.json as OPENCODE_CONFIGsecurity-* skills/goal on OmO 4.19 until /start-work is safeKeep:
skills/ (fenced) — never re-enable OmO security-*oc models --providers after OpenRouter host churn (don’t hand-edit order/ignore blindly)oc versions after OpenCode / OmO releases (bump versions.json + plugin pin together)oc new (apps stay outside this tree)Skip:
disabled_mcpsnode_modules into the config dirDesign enforcement with memory — keeps your UI consistent across a project
Create animation-rich HTML presentations using a coding agent's frontend skills
1000+ skills curated from Anthropic, Vercel, Stripe, and other engineering teams
Detects 37 AI writing patterns and rewrites text with human rhythm across 5 voice profiles