This document guides AI assistants through the micode plugin installation process.
micode uses Claude Opus 4.5 for its primary agents (commander, brainstormer, project-initializer). Ask the user:
Do you have a Claude Pro/Max subscription?
If YES:
- Add ToDo: "Setup Claude Pro/Max Auth"
- Ask follow-up: "Are you on max20 (20x mode)?"
- If max20: Full Claude Opus 4.5 available for all agents
- If not max20: Consider using lighter models for subagents
If NO:
- Inform user: "micode works best with Claude Opus 4.5. Without Claude, you'll need to configure alternative models."
- Create
~/.config/opencode/micode.json:
{
"agents": {
"commander": { "model": "opencode/big-pickle" },
"brainstormer": { "model": "opencode/big-pickle" },
"project-initializer": { "model": "opencode/big-pickle" }
}
}if command -v opencode &> /dev/null; then
echo "OpenCode $(opencode --version) is installed"
else
echo "OpenCode is not installed. Please install it first."
echo "Ref: https://opencode.ai/docs"
fiIf OpenCode isn't installed, guide user to https://opencode.ai/docs or spawn a subagent to handle installation.
if [ -f ~/.config/opencode/opencode.jsonc ]; then
echo "Found opencode.jsonc - edit this file"
elif [ -f ~/.config/opencode/opencode.json ]; then
echo "Found opencode.json - edit this file"
else
echo "No config found - will create new one"
fiIf config exists:
if command -v jq &> /dev/null; then
jq '.plugin = ((.plugin // []) + ["micode"] | unique)' \
~/.config/opencode/opencode.json > /tmp/oc.json && \
mv /tmp/oc.json ~/.config/opencode/opencode.json
else
echo "Please add \"micode\" to the plugin array in ~/.config/opencode/opencode.json"
fiIf no config exists:
mkdir -p ~/.config/opencode
echo '{"plugin":["micode"]}' > ~/.config/opencode/opencode.jsonopencode --version # Should be 1.0.132 or higher
cat ~/.config/opencode/opencode.json # Should contain "micode" in plugin arrayopencode auth login
# Interactive Terminal: Provider: Select Anthropic
# Interactive Terminal: Login method: Select Claude Pro/Max
# Guide user through OAuth flow in browser
# Wait for completion
# Verify success- Run
opencodein terminal - Check that commander agent is available
- Try
/initcommand to test project-initializer
Say to user:
Congratulations! 🎉 You have successfully set up micode!
What you can do now:
- Use commander as your main orchestrator
- Use brainstormer for design exploration
- Run
/initto generate ARCHITECTURE.md and CODE_STYLE.mdWorkflow: Brainstorm → Research → Plan → Implement → Review
Type
opencodein your terminal to start!
After everything is set up and working:
"If you found this helpful, would you like to star the repository? It helps the project grow! ⭐"
Only if user explicitly agrees:
gh repo star vtemian/micodeNever run this automatically without consent.
| Agent | Model | Purpose |
|---|---|---|
| commander | claude-opus-4-5 | Main orchestrator |
| brainstormer | claude-opus-4-5 | Design exploration |
| project-initializer | claude-opus-4-5 | Generate docs |
| codebase-locator | - | Find files |
| codebase-analyzer | - | Analyze code |
| pattern-finder | - | Find patterns |
| implementer | - | Execute tasks |
| reviewer | - | Review code |
| Command | Description |
|---|---|
/init |
Initialize project with ARCHITECTURE.md and CODE_STYLE.md |
| Tool | Description |
|---|---|
ast_grep_search |
AST-aware code search |
ast_grep_replace |
AST-aware code replace |
look_at |
Screenshot analysis |
micode respects your OpenCode default model. Set it in ~/.config/opencode/opencode.json:
{
"model": "github-copilot/gpt-5-mini"
}This model will be used for all micode agents automatically.
To override specific agents, create ~/.config/opencode/micode.json:
{
"agents": {
"brainstormer": { "model": "openai/gpt-4o" }
}
}Model resolution priority:
- Per-agent override in
micode.json(highest) - Default model from
opencode.json"model"field - Plugin default (hardcoded in agent definitions)
Models must use the format provider/model where:
provideris the provider ID from youropencode.json(e.g.,openai,anthropic,github-copilot)modelis the model ID configured under that provider
To find valid model names:
- Check your
~/.config/opencode/opencode.jsonfor theprovidersection - Look for the provider name (the key) and model names under
models
Example opencode.json structure:
{
"provider": {
"github-copilot": {
"models": {
"gpt-5-mini": { "limit": { "context": 128000 } }
}
}
}
}For the above config, use "model": "github-copilot/gpt-5-mini".
Important: The provider name must match exactly. If OpenCode shows github-copilot as the provider ID, use github-copilot/model-name (not github/copilot:model-name or other variations).
The following model bypasses validation:
opencode/big-pickle- OpenCode's default model, always valid