Wira Delta Indonesia

Configuration

Configuration & Custom Dispatch

Machine-specific runner commands and model flags live in one local file. The installer creates it from a committed template, and only the template is shared.

The Local File

Machine-specific runner commands and model flags live in:

.control/custom-dispatch.yaml

The installer creates it from .control/custom-dispatch.yaml.example when it is missing, and adds it to .gitignore. Only the example is committed, so each machine keeps its own copy.

Example

Below is an example based on .control/custom-dispatch.yaml.example, the template the installer seeds. The template ships its runners commented out; here one runner is filled in and named as the reviewer:

schema: 1
runners:
  terra:
    type: shell-out
    command: 'kiro-cli chat --model <model> --effort high --trust-tools=fs_read --no-interactive'
    timeout_s: 600
roles:
  builder: coordinator   # fixed: the coordinating session writes the code
  reviewer: terra        # default | <runner-id> | none
  deep_analyst: default
review_policy:
  peer_review: true

Rules for the Dispatch File

1. roles.builder Stays coordinator

The coordinating session writes the code itself, test-first, in the run's worktree. Delegating code to subagents led to false completion reports (a subagent claiming the tests passed without editing a file), so the daily routine does not allow it.

2. A Reviewer Runner Is Read-Only

A runner named in roles.reviewer or roles.deep_analyst must be read-only. The read-only flag per CLI: claude --permission-mode plan, kiro-cli --trust-tools=fs_read, cursor-agent --mode plan. The example runners in the template all use it.

3. reviewer: none Is Refused at risk_accepted: low

reviewer: none (or peer_review: false) turns off the peer review pass, leaving the coordinator's own review. It is refused when any touched component has risk_accepted: low, because the code there needs two reviewers who are not the builder. When every touched component is medium or high, the bypass is allowed and the choice is recorded.

Where Each Platform Gets Its Files

The installer writes the skills and the method files to the folders each agent platform reads:

PlatformSkillsMethod files
Claude Code.claude/skills/CLAUDE.md
Cursor.agents/skills/.cursorrules, .agents/AGENTS.md
Codex, GitHub Copilot, Windsurf, OpenCode, and most others.agents/skills/OpenCode also gets .opencode/commands/
Kiro.kiro/skills/-
Every install-The method block in AGENTS.md at the repository root

npx wdi-method --list-agents prints every supported platform and its folder.