Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add rp1-run/rp1 --skill socratic-duelgit clone --depth 1 https://github.com/rp1-run/rp1Wrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/rp1-run/rp1/socratic-duel)<a href="https://agentmods.dev/skills/rp1-run/rp1/socratic-duel"><img src="https://agentmods.dev/badge/skills/rp1-run/rp1/socratic-duel/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/rp1-run/rp1/socratic-duel"><img src="https://agentmods.dev/badge/skills/rp1-run/rp1/socratic-duel.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Excessive Agency · line 74 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00026 | $0.01721 |
| Opus 5 | $0.00013 | $0.00860 |
| Sonnet 5 | $0.00005 | $0.00344 |
| Haiku 4.5 | $0.00003 | $0.00172 |
Grade A, and why
socratic-duel scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 132 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Socratic Duel
§ROLE: Debate participant and debate artifact steward for /rp1-base:socratic-duel.
§OBJ
- Treat
{TARGET_PATH}as read-only Markdown source material. - Create or append the durable debate record only at the coordinator-returned
debate_pathunder{workRoot}/debates/. - Preserve accepted prior turns exactly and append at most 6 accepted turns.
- Keep every claim, counterpoint, unresolved item, and terminal summary focused on
{TOPIC}or the inferred effective topic. - Coordinate exactly two participants through backend locks only.
- End with an explicit terminal outcome:
ACCEPTED_CONSENSUS,DISSENT,MAX_TURNS,TIMEOUT, orINVALIDATED. - Close the rp1 run on every terminal outcome.
- Resist unsupported agreement, deference, and repeated arguments.
§BOUNDARY
- Backend owns participant registration, active lock status, lock claim, lock refresh, lock expiry, lock release, source/topic identity, and debate artifact path allocation.
- Agent owns source reading, topic inference, artifact template loading, artifact creation, participant table rendering, turn numbering, alternation checks, candidate convergence state, turn structure checks, evidence discipline, terminal outcome selection, terminal summaries, and Markdown artifact updates.
- Agent owns template selection by reading the artifact template directly (with fallback to
/rp1-base:artifact-templatesindex); do not implement or expect TypeScript template rendering. - Backend
statusis not debate truth. Treat the debate artifact as the debate record. - The source document is not the artifact. Do not add or require
rp1:socratic-duelboundary markers during normal recording. - This base skill MUST NOT call rp1-dev commands or subagents.
- This standalone skill intentionally duplicates the participant agent's critical turn contract so direct and launcher modes are self-contained; keep
§TURN_RULESand§OUTCOMESin sync withplugins/base/agents/socratic-duel-participant.md.
§CTX
- Use generated Workflow Bootstrap values:
RUN_ID,projectRoot,workRoot,codeRoot, resolved arguments. - Determine
CURRENT_HOST:claude-code,codex,gh-copilot,opencode,amp, elseunknown; defaultcodex. TARGET_PATH: required absolute readable.mdor.markdownsource path. Do not require write access.TOPIC: optional. If blank, read the source document and use the first Markdown heading as the effective topic, falling back to the source filename stem.PARTICIPANT_NAME: required unique participant identity; do not replace it withCURRENT_HOST.MODEL_ID: if unknown, keepunknown-model; do not invent model metadata.debate_path,source_path,topic, andtopic_slugcome fromjoinand are authoritative after registration.- Open research is allowed when useful, but every external claim needs a citation.
- Waiting is always bounded and non-interactive; do not prompt the user during peer or lock waits.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 11d ago First seen · 132 lines · 26 tokens per session scan A 8ca2255845b4
socratic-duel is a skill published in the GitHub repository rp1-run/rp1 (38 stars, last pushed 4d ago), licensed Apache-2.0. It adds 26 tokens to every session and 1,721 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
skill-curator
A Chinese-language evaluator for deciding whether developer tools and agent resources are suitable for a curated collection. It checks real repositories, installation paths, activity, duplicates, and security boundaries using evidence.
git-workflow
A guide for handling Git repository work safely, including status checks, branches, commits, pushes, pull requests, and rebasing. Git is a version-control system that records code changes and coordinates work between developers.
i18n-helper
A helper for adding internationalization, which lets software show different languages and regional text. It finds user-visible text written directly in code and moves it into language files.
brainstorm
Explore ambiguous or early-stage ideas interactively — tracks wish-readiness and crystallizes into a design for wish.
refactor-advisor
A code review helper that finds common design and maintenance problems in a codebase and suggests ways to restructure the code.
acceptance-test-authoring
Use when creating or modifying acceptance tests, configuring cucumber-js or behave runners, writing or refactoring step definitions, linting executable Gherkin specs, choosing an acceptance stack, or implementing OpenSpec tasks that involve acceptance tests.