3.0 KiB

CONFIG KNOWLEDGE BASE

OVERVIEW

Zod schema definitions for plugin configuration. 21 component files composing OhMyOpenCodeConfigSchema with multi-level inheritance and JSONC support.

STRUCTURE

config/
├── schema/                    # 21 schema component files
│   ├── oh-my-opencode-config.ts # Root schema composition (57 lines)
│   ├── agent-names.ts         # BuiltinAgentNameSchema (11 agents), BuiltinSkillNameSchema
│   ├── agent-overrides.ts     # AgentOverrideConfigSchema (model, variant, temp, thinking...)
│   ├── categories.ts          # 8 categories: visual-engineering, ultrabrain, deep, artistry, quick, ...
│   ├── hooks.ts               # HookNameSchema (100+ hook names)
│   ├── commands.ts            # BuiltinCommandNameSchema
│   ├── experimental.ts        # ExperimentalConfigSchema
│   ├── dynamic-context-pruning.ts # DynamicContextPruningConfigSchema (55 lines)
│   ├── background-task.ts     # BackgroundTaskConfigSchema
│   ├── claude-code.ts         # ClaudeCodeConfigSchema
│   ├── comment-checker.ts     # CommentCheckerConfigSchema
│   ├── notification.ts        # NotificationConfigSchema
│   ├── ralph-loop.ts          # RalphLoopConfigSchema
│   ├── sisyphus.ts            # SisyphusConfigSchema
│   ├── sisyphus-agent.ts      # SisyphusAgentConfigSchema
│   ├── skills.ts              # SkillsConfigSchema (45 lines)
│   ├── tmux.ts                # TmuxConfigSchema, TmuxLayoutSchema
│   ├── websearch.ts           # WebsearchConfigSchema
│   ├── browser-automation.ts  # BrowserAutomationConfigSchema
│   ├── git-master.ts          # GitMasterConfigSchema
│   └── babysitting.ts         # BabysittingConfigSchema
├── schema.ts                  # Barrel export (24 lines)
├── schema.test.ts             # Validation tests (735 lines)
├── types.ts                   # TypeScript types from schemas
└── index.ts                   # Barrel export (33 lines)

ROOT SCHEMA

OhMyOpenCodeConfigSchema composes: $schema, new_task_system_enabled, default_run_agent, auto_update, disabled_{mcps,agents,skills,hooks,commands,tools}, agents (14 agent keys), categories (8 built-in), claude_code, sisyphus_agent, comment_checker, experimental, skills, ralph_loop, background_task, notification, babysitting, git_master, browser_automation_engine, websearch, tmux, sisyphus

CONFIGURATION HIERARCHY

Project (.opencode/oh-my-opencode.json) → User (~/.config/opencode/oh-my-opencode.json) → Defaults

AGENT OVERRIDE FIELDS

model, variant, category, skills, temperature, top_p, maxTokens, thinking, reasoningEffort, textVerbosity, prompt, prompt_append, tools, permission, providerOptions, disable, description, mode, color

AFTER SCHEMA CHANGES

Run bun run build:schema to regenerate dist/oh-my-opencode.schema.json