mcpField
O
opencode-config

opencode-config

github.com/wojonsAgent workflows345 installsUpdated 30w ago
Repository

About opencode-config

opencode-config is a skill for understanding, creating, and validating OpenCode configuration. It covers configuration formats and precedence, and emphasizes checking current details against official documentation.

Key features

  1. 01Explain JSON, JSONC, and Markdown formats
  2. 02Clarify global and project setting precedence
  3. 03Provide configuration examples
  4. 04Validate files with an included script
  5. 05Generate configs with schema and substitutions

Use cases

  1. 01Set up OpenCode for a project
  2. 02Establish team configuration standards
  3. 03Diagnose settings that are not applied
  4. 04Update deprecated configuration patterns

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/wojons/skills --skill opencode-config

After installing, type/opencode-configin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

README.md
references/
README.md
scripts/
validate-config.sh

Details

From the project README

OpenCode Configuration Skill

Understand and manage OpenCode configuration files in JSON or Markdown format, with proper precedence between global and project settings. This skill emphasizes research-driven verification because configuration details change over time.

When to use me

  • Setting up OpenCode for a new project with custom settings
  • Creating team-wide configuration standards
  • Understanding why certain settings aren't being applied (precedence issues)
  • Migrating from deprecated configuration patterns to current best practices
  • Verifying configuration details against official documentation

What I do

  • Explain OpenCode configuration formats (JSON/JSONC vs Markdown with YAML frontmatter)
  • Clarify precedence order between global, project, and environment-based configs
  • Provide examples for common configuration scenarios (models, permissions, tools, modes)
  • Validate configuration files and check for common issues using included scripts
  • Emphasize research-driven verification using search tools to stay current with changes
  • Generate configuration files with proper schema references and variable substitution
  • Include validation script (scripts/validate-config.sh) to check existing configuration files

Examples

# Create a project-specific opencode.json with custom model
cat > opencode.json << EOF
{
  "$schema": "https://opencode.ai/config.json",
  "model": "anthropic/claude-haiku-4-5",
  "permission": {
    "edit": "ask",
    "bash": "ask"
  }
}
EOF

# Create a global mode using Markdown
mkdir -p ~/.config/opencode/modes/
cat > ~/.config/opencode/modes/review.md << 'EOF'
---
temperature: 0.1
tools:
  write: false
  edit: false
  bash: false
---

You are in code review mode. Focus on code quality, potential bugs, and security considerations without making direct changes.
EOF

Output format

When analyzing configuration:

config_source: ~/.config/opencode/opencode.json
config_type: global
format: json
precedence: 2/6
effective_settings:
  model: anthropic/claude-sonnet-4-5
  autoupdate: true

When creating configuration:

{
  "status": "created",
  "file": ".opencode/modes/debug.md",
  "format": "markdown",
  "precedence": "project"
}

Notes

  • Critical: OpenCode configuration changes frequently. ALWAYS verify details using search tools (searxng_searxng_web_search, searxng_web_url_read) before providing specific implementation guidance.
  • Configuration precedence (later overrides earlier):
    1. Remote config (.well-known/opencode)
    2. Global config (~/.config/opencode/opencode.json)
    3. Custom config (OPENCODE_CONFIG env var)
    4. Project config (opencode.json in project)
    5. .opencode directories (agents, commands, plugins)
    6. Inline config (OPENCODE_CONFIG_CONTENT env var)
  • JSON and JSONC formats are supported for opencode.json; Markdown with YAML frontmatter is supported for modes, agents, commands, etc.
  • The $schema field provides validation and autocomplete in editors.
  • Use {env:VAR} and {file:path} for variable substitution in config files.
  • Modes are now configured through the agent option (deprecated mode option).

Comments

Markdown supported