원클릭으로
ratchet-pair
Add a new agent pair to an existing Ratchet configuration
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Add a new agent pair to an existing Ratchet configuration
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Run agent pairs through phase-gated debates — guided by epic roadmap and current focus
Analyze project and generate tailored agent pairs through codebase analysis and human interview
Tighten the ratchet — analyze all improvement signals and sharpen the system
View or continue an ongoing debate
Manage guards — list, add, run, and override deterministic checks at phase boundaries
View quality metrics and trends per pair
| name | ratchet:pair |
| description | Add a new agent pair to an existing Ratchet configuration |
Add a new generative-adversarial agent pair to an existing Ratchet configuration.
/ratchet:pair [name]
If [name] provided, use it as pair name. Otherwise, analyst suggests a name based on discussion.
.ratchet/ must exist (run /ratchet:init first).ratchet/project.yaml must exist.ratchet/workflow.yaml must existIf prerequisites not met, inform user and suggest /ratchet:init.
Read .ratchet/project.yaml and .ratchet/workflow.yaml for: tech stack, architecture, existing pairs (avoid overlap), testing capabilities.
Spawn analyst agent using generative model from workflow.yaml (models.generative, default opus). Config:
subagent_type: analystmodel: value of workflow.yaml → models.generative (or opus if unset)tools: Read, Grep, Glob, Bash, Write, Edit, AskUserQuestionTask prompt:
A new agent pair is being added to this Ratchet-configured project.
Project profile: [contents of .ratchet/project.yaml]
Existing pairs: [list from workflow.yaml]
Requested pair name: [name if provided, otherwise "to be determined"]
Your task:
1. If no name was provided, use `AskUserQuestion` to ask the human what quality dimension they want to cover
- Options: suggest 3-4 dimensions based on project profile, plus "Other" for custom input
2. Use `AskUserQuestion` to discuss the scope and focus with the human
- Options: suggest file glob patterns based on project structure
3. Review the codebase areas relevant to this concern
4. Generate the pair:
- .ratchet/pairs/<name>/generative.md — builder agent with project-specific knowledge
- .ratchet/pairs/<name>/adversarial.md — critic agent with testing commands baked in
5. Present the pair definition to the human for approval using `AskUserQuestion`
- Options: "Approve (Recommended)", "Modify scope", "Modify agents", "Start over"
6. On approval, write the agent files and update `.ratchet/workflow.yaml` to register the new pair with component and phase fields.
Follow the same agent generation conventions as init:
- Generative: tools: Read, Grep, Glob, Bash, Write, Edit
- Adversarial: tools: Read, Grep, Glob, Bash, disallowedTools: Write, Edit
- Include project-specific knowledge in prompts
- Define tight file scope globs
- Encode the guilty-until-proven-innocent principle: test failures on a PR branch are caused by the PR unless definitively proven otherwise. Generative agents must fix failures, not dismiss them. Adversarial agents must reject dismissals lacking evidence.
Verify new pair was created and registered:
# Verify agent files exist
test -f .ratchet/pairs/<name>/generative.md || { echo "Error: generative.md not created for pair '<name>'" >&2; exit 1; }
test -f .ratchet/pairs/<name>/adversarial.md || { echo "Error: adversarial.md not created for pair '<name>'" >&2; exit 1; }
# Verify registered in workflow.yaml
yq eval '.pairs[] | select(.name == "<name>")' .ratchet/workflow.yaml | grep -q 'name:' \
|| { echo "Error: pair '<name>' not registered in workflow.yaml" >&2; exit 1; }
If analyst agent fails (returns error or empty output), inform user: "Pair generation failed. May be due to insufficient project context or invalid pair name." Then AskUserQuestion with options: "Try again", "Try with different name", "Cancel".
Report:
New pair added: [name]
Scope: [file glob]
Quality dimension: [what it checks]
Generative: .ratchet/pairs/[name]/generative.md
Adversarial: .ratchet/pairs/[name]/adversarial.md
Run /ratchet:run [name] to test the new pair.
After reporting, AskUserQuestion to guide user: