GitHub - gc-victor/supersimple: Lightweight OpenCode profile for routine dev work with focused agents, local skills, and conductor-based track management.

8 min read Original article ↗

Supersimple infography

Supersimple is a lightweight OpenCode profile for routine software work. It keeps a small core agent set, uses orchestrator as the default entry point, and adds a focused set of local skills and commands for planning, implementation, debugging, documentation, and Conductor-based track management.

Table of Contents

Installation

curl -fsSL https://raw.githubusercontent.com/gc-victor/supersimple/main/scripts/install.sh | bash

The script installs Supersimple to ~/.config/opencode/profiles/supersimple, adds the oc-s2 alias to your shell config, and walks through agent to model selection.

How it works

This profile is designed for day-to-day engineering work in OpenCode.

When you start a session with this profile active, OpenCode uses the profile's AGENTS.md, opencode.jsonc, agent/ definitions, command/ commands, and skills/ skills from this directory. The configured default agent is orchestrator, so the profile starts by routing work to the most specific specialist instead of trying to do everything in one prompt. That keeps context narrower, reduces unrelated prompt buildup, and makes parallel specialist work easier when needed.

In practice, that means:

  • routine implementation work goes to developer or fixer
  • codebase lookup and structure questions go to explorer
  • documentation work goes to writer
  • multi-step or mixed work goes through orchestrator
  • Conductor flows are available when you need track-based planning and state management
  • general code review goes to code-reviewer
  • security audit and threat analysis go to security

The profile also disables the built-in general and explore agents in opencode.jsonc, which helps keep routing focused on the profile's own agent set.

Features

  • Small default agent surface for routine coding work
  • Default orchestration through orchestrator
  • TDD-oriented implementation guidance through developer
  • Focused debugging, code-quality, simplification, and cleanup skills
  • Local Conductor commands for setup, planning, updating, and track progress
  • Plain, direct documentation behavior through the writer agent
  • Shared model links in models/ instead of duplicating model definitions

What OpenCode loads from this profile

With OPENCODE_CONFIG_DIR set to this directory, OpenCode can load:

This profile uses singular directory names such as agent/ and command/, which OpenCode still supports for backwards compatibility.

The basic workflow

  1. Start with the orchestrator - orchestrator is the default agent and routes work to the right specialist.
  2. Use the smallest specialist that fits - developer for TDD feature work, fixer for tight scoped changes, explorer for codebase lookup, code-reviewer for general review, security for security audit, writer for docs.
  3. Apply verified workflows - agents call debug, simplify, or deslop as needed.
  4. Use commands for repeatable tasks - brainstorming, audits, refactors, text rewrites, and Conductor management all have dedicated commands.
  5. Escalate to Conductor when the work needs track state - use the Conductor commands when work becomes multi-phase or needs persistent planning artifacts.

What's inside

Configured core agents

These are the agents explicitly configured in opencode.jsonc:

Agent Purpose
code-reviewer Review code for correctness, reliability, and maintainability
developer Build features and fixes with strict TDD
explorer Search codebases, trace structure, and answer read-only questions
fixer Execute narrow, pre-scoped implementation changes
orchestrator Coordinate multi-step work and delegate to specialists
security Security-focused code review, threat analysis, and hardening
writer Produce verified technical documentation

orchestrator is the default_agent for the profile.

Additional bundled agent definitions

These agent files are also present under agent/ and support specialized work in this profile:

Agent Purpose
librarian Research local and remote code, docs, and implementation history
oracle Give read-only technical recommendations and design advice
test-engineer Design focused tests and reproduce bugs with failing tests first

Skills

Skills are specialized instruction sets that agents load for particular tasks. Agents match skills to user requests automatically and follow skill-specific workflows when activated.

Skill Purpose
code-quality Review changes across correctness, readability, architecture, security, and performance
conductor Coordinate track-based work without doing code changes directly
debug Reproduce, investigate, fix, and verify bugs with evidence
deslop Remove filler and AI-style noise from code comments and prose
simplify Reduce complexity while preserving behavior
security-and-hardening Apply security constraints to code handling user data, auth, or external systems

Commands

Commands are reusable request patterns that invoke structured workflows. Users invoke commands by name; agents interpret the intent and execute the corresponding skill-guided process.

Command Purpose
audit Audit a repository and report only evidence-backed issues
brainstorming Explore an idea through conversation before design or implementation
curate Remove low-value or redundant tests in a target area
drill Ask focused questions until a design or plan is fully understood
guard Simplify the last commit to keep the code robust and maintainable
refactor Refactor a target area while preserving behavior and strengthening tests
rewrite Rewrite text for clarity, concision, and precision
setup-conductor Initialize a .conductor/ workspace with guided setup
track-planner Turn feature goals into track plans or task artifacts
track-updater Update track state, completion markers, and logs
update-conductor Maintain .conductor/ configs and track lifecycle docs

Models

opencode.jsonc maps each configured agent model to a file under models/ using the {file:./models/...} form. Each file currently contains a single model identifier.

File Used by Current value Role in this profile
developer.txt developer opencode-go/kimi-k2.6 Model selection for TDD-oriented implementation work
explorer.txt explorer opencode-go/deepseek-v4-flash Model selection for read-only codebase search and structure lookup
fixer.txt fixer opencode-go/minimax-m2.7 Model selection for narrow, pre-scoped code changes
code-reviewer.txt code-reviewer opencode-go/kimi-k2.6 Model selection for systematic code review work
security.txt security opencode-go/qwen3.6-plus Model selection for security-focused review and threat analysis
orchestrator.txt orchestrator opencode-go/deepseek-v4-pro Model selection for the default coordinating agent
writer.txt writer opencode-go/qwen3.6-plus Model selection for verified technical documentation work

This keeps model selection separate from the rest of the agent configuration. In this profile, opencode.jsonc points each configured agent at one of these files rather than inlining model identifiers directly in the config.

Creators

Creators are guides under create/ for building new OpenCode assets. They provide step-by-step workflows for agent, profile, skill, and tool creation.

Creator Purpose
agent Create and configure custom OpenCode agents with proper YAML frontmatter, permissions, and system prompts
agentmd Create or update concise, repo-specific AGENTS.md files for coding agents
profile Create or extend OpenCode profiles from one prompt or a short intake, following repository conventions
skill Create, package, and iterate on reusable skills with scripts, references, and assets
tool Create custom OpenCode tools in TypeScript with the @opencode-ai/plugin API

Conductor

Supersimple includes a local Conductor workflow for teams or repos that want persistent planning state.

Use it when the work needs a .conductor/ workspace, track-based planning, resumable setup, and persistent task state.

In this profile, the practical flow is:

  1. Set up or resume with /setup-conductor. This creates the .conductor/ workspace, can resume an incomplete setup, and can optionally create an initial track. After setup, .conductor/workflow.md becomes the workflow source of truth for planning, quality gates, and lifecycle decisions.
  2. Plan the work with /track-planner. It validates that Conductor is set up, loads the .conductor/ context files, asks the planning questions one at a time, and then creates either track artifacts under .conductor/tracks/ or task files under /tasks/, depending on scope.
  3. Hand execution to @orchestrator. The Conductor skill is coordination-only, so implementation still runs through the normal execution path. In track-based work, @orchestrator reads the Conductor context, follows workflow.md, and coordinates task execution and review flow.
  4. Update track state with /track-updater. Use it after completed work to confirm state transitions, sync plan.md, metadata.json, and log.md, and record the commit SHA for completed tasks.

/update-conductor is for maintaining the global .conductor/ configuration after setup, not for day-to-day task execution.

For smaller one-session tasks, the profile's normal path is still direct implementation rather than Conductor.

References

This profile runs on OpenCode, a terminal agent platform:

  • OpenCode — the terminal agent platform that loads and runs agent profiles, skills, and commands from a configuration directory. See custom directory configuration for details on pointing OpenCode at a profile directory.

The Conductor skill and commands in this profile are based on Google Conductor:

Contributing

If you update this profile:

  1. Verify the behavior from the files in this directory before documenting it.
  2. Keep the README aligned with AGENTS.md, opencode.jsonc, agent/, skills/, and command/.
  3. Do not document agents, skills, models, or commands that are not actually present.
  4. Prefer small, profile-specific changes over broad documentation drift.

If you change the profile's commands, agents, or skills, update this README in the same change.

License

This profile does not include a profile-specific license file. Follow the license terms defined at the repository level if and when a repository-wide license is provided.