Claude-skill-registry creating-opencode-agents
Use when creating OpenCode agents - provides markdown format with YAML frontmatter, mode/tools/permission configuration, and best practices for specialized AI assistants
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/creating-opencode-agents" ~/.claude/skills/majiayu000-claude-skill-registry-creating-opencode-agents && rm -rf "$T"
manifest:
skills/data/creating-opencode-agents/SKILL.mdsource content
Creating OpenCode Agents
Expert guidance for creating OpenCode AI agents with proper configuration, tools, and permissions.
When to Use
Use when:
- User asks to create an OpenCode agent
- Need specialized AI assistant for specific tasks
- Building domain-focused development tools
- Configuring agent tools and permissions
Don't use for:
- OpenCode plugins (use creating-opencode-plugins skill)
- OpenCode slash commands (different format)
- Generic AI prompts (not OpenCode-specific)
Quick Reference
File Location
- Project:
.opencode/agent/<name>.md - Global:
~/.config/opencode/agent/<name>.md
Minimal Agent Structure
--- description: Brief explanation of the agent's purpose mode: all --- System prompt content here...
Required Fields
(string): Brief explanation of the agent's purpose (REQUIRED)description
Optional Fields
| Field | Type | Description |
|---|---|---|
| | | | How agent can be used (default: ) |
| string | Override model (e.g., ) |
| number | Response randomness 0.0-1.0 |
| string | Path to prompt file: |
| number | Maximum iterations (unlimited if unset) |
| object | Enable/disable tools with boolean values |
| object | Tool access: , , or |
| boolean | Deactivate the agent |
Agent Modes
: Main assistant for direct interaction, switchable via Tab keyprimary
: Specialized assistant invoked by primary agents orsubagent@mentions
: Default; usable in both contextsall
Common Patterns
Code Reviewer (Read-Only)
--- description: Reviews code for best practices and security mode: subagent model: anthropic/claude-sonnet-4-20250514 temperature: 0.1 tools: write: false edit: false bash: false read: true grep: true glob: true permission: edit: deny bash: deny --- # Code Review Agent You are an expert code reviewer with deep knowledge of software engineering principles. ## Instructions - Check for code smells and anti-patterns - Verify test coverage - Ensure documentation exists - Review error handling and security - Suggest improvements with examples ## Review Checklist - [ ] Code follows project conventions - [ ] Tests are comprehensive - [ ] No security vulnerabilities - [ ] Documentation is clear
Backend Developer
--- description: Node.js/Express API development with database optimization mode: all temperature: 0.3 tools: read: true write: true edit: true bash: true grep: true glob: true permission: bash: "npm test": allow "npm run *": allow "git *": ask "*": deny --- # Backend Development Agent You are a backend development expert specializing in Node.js, Express, and database optimization. ## Focus Areas - RESTful API design - Input validation and error handling - Database query optimization - Security best practices ## Standards - Always use async/await - Implement proper logging - Validate all inputs - Use TypeScript interfaces
Test Writer
--- description: Writes comprehensive test suites with high coverage mode: subagent temperature: 0.2 maxSteps: 50 tools: read: true write: true bash: true permission: bash: "npm test*": allow "*": deny --- # Test Writer Agent You are a testing expert focused on comprehensive test coverage. ## Test Requirements - Unit tests for all functions - Edge case coverage - Proper mocking - AAA pattern (Arrange, Act, Assert) - Descriptive test names ## Frameworks - Vitest for unit tests - Playwright for E2E - MSW for API mocking
Documentation Writer (Limited Tools)
--- description: Technical documentation and API reference writer mode: subagent temperature: 0.5 tools: read: true write: true edit: true bash: false --- # Documentation Agent You write clear, comprehensive technical documentation. ## Focus - API reference documentation - README files - Architecture docs - Code comments and JSDoc ## Style - Clear and concise - Include examples - Use proper markdown formatting - Follow project documentation standards
Tools Configuration
Available Tools
| Tool | Description |
|---|---|
| Read file contents |
| Create new files |
| Modify existing files |
| Execute shell commands |
| Search file contents |
| Find files by pattern |
| Fetch web content |
| Search the web |
Wildcard Patterns
Disable groups of tools with wildcards:
tools: mymcp_*: false # Disable all MCP tools starting with mymcp_
Permission Configuration
Simple Permissions
permission: edit: ask # Prompt before editing bash: deny # Block all bash commands webfetch: allow # Allow web fetching
Per-Command Bash Permissions
permission: bash: "git push": ask # Ask before pushing "git *": allow # Allow other git commands "npm test": allow # Allow testing "*": deny # Deny everything else
Temperature Guidelines
| Temperature | Use Case |
|---|---|
| 0.0-0.2 | Code review, debugging, analysis |
| 0.3-0.5 | General development, refactoring |
| 0.6-1.0 | Documentation, brainstorming, creative work |
Common Mistakes
| Mistake | Problem | Fix |
|---|---|---|
| Missing description | Required field | Add description in frontmatter |
| Granting all tools | Security risk | Only grant necessary tools |
| Vague prompt | Ineffective agent | Be specific about domain and tasks |
| Wrong mode | Agent not accessible | Use for flexibility |
| No tool restrictions | Agent can do anything | Use tools/permission to limit scope |
Best Practices
Naming
- Use kebab-case:
, notcode-reviewerCodeReviewer - Be specific:
, notreact-testing-experthelper - Indicate domain:
,aws-infrastructuremobile-ui-designer
Prompts
- Define expertise area clearly
- List specific focus areas
- Specify standards/conventions
- Provide examples when helpful
- Set clear expectations
Security
- Grant minimum necessary tools
- Use permissions to restrict dangerous operations
- Disable bash for read-only agents
- Use glob patterns for bash permissions
- Consider maxSteps for long-running agents
PRPM Integration
Package Manifest (prpm.json)
{ "name": "@username/my-agent", "version": "1.0.0", "description": "My OpenCode agent", "format": "opencode", "subtype": "agent", "files": [".opencode/agent/my-agent.md"], "tags": ["opencode", "agent", "development"] }
Installation
# Install from registry prpm install @username/agent-name --format opencode # Installs to: .opencode/agent/<agent-name>.md
Publishing
prpm publish
Navigation & Usage
- Tab key: Switch between primary agents
- @ mention: Invoke subagents (e.g.,
)@code-reviewer check this function - <Leader>+Right/Left: Navigate parent/child sessions
Troubleshooting
Agent Not Found
- Check file is in
.opencode/agent/ - Verify
extension.md - Validate YAML frontmatter syntax
Tools Not Working
- Verify tool names (lowercase in OpenCode)
- Check permission settings
- Ensure mode allows tool access
Agent Ineffective
- Be more specific in prompt
- Add concrete examples
- Reference team standards
- Structure with markdown headers
Schema Reference:
packages/converters/schemas/opencode.schema.json
Documentation: https://opencode.ai/docs/agents/