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 agentmods add commands/gnayj/claude-code-sop/sop-langgit clone --depth 1 https://github.com/Gnayj/claude-code-sopWrote 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/commands/gnayj/claude-code-sop/sop-lang)<a href="https://agentmods.dev/commands/gnayj/claude-code-sop/sop-lang"><img src="https://agentmods.dev/badge/commands/gnayj/claude-code-sop/sop-lang.svg" alt="Measured on agentmods" height="20"></a>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 | $0.00068 | $0.04189 |
| Opus 5 | $0.00034 | $0.02094 |
| Sonnet 5 | $0.00014 | $0.00838 |
| Haiku 4.5 | $0.00007 | $0.00419 |
Grade A, and why
sop-lang 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 4d 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 — 232 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/sop-lang — re-materialize ccsop-owned docs in another language
Translate-once, in place. Plugin root = ${CLAUDE_PLUGIN_ROOT}; target = ${CLAUDE_PROJECT_DIR}.
$ARGUMENTS = target language (e.g. zh or de), or --check <lang> (drift report). The canonical source is always
the EN plugin template (via each manifest entry's template_id), not the currently-materialized file.
Host task-tool guard (whole command): the steps below are the complete execution plan. Do not
call any host task/todo-tracking tool, including but not limited to TaskCreate, TaskUpdate,
TaskList, TaskGet, and TodoWrite, and do not discover such a tool just to mirror this plan.
These tools are not required for language materialization and may be absent from the live
discovered-tool set. This command has no interactive decision point: do not call a user-question
tool. If the target-language argument is missing or invalid, report the usage/error and stop.
Step 0 — orphaned-root guard: if ${CLAUDE_PLUGIN_ROOT}/.orphaned_at exists, abort (stale
cache snapshot; restart the session / reload plugins first). Never auto-resolve to a sibling dir.
Before resolving any Codex skill path/set, read
${CLAUDE_PLUGIN_ROOT}/templates/control-surface/codex-skill-host-contract.md; its
canonical/legacy roots and five-entry set are authoritative.
Mode & source resolution (maintained-first)
See docs/design/ccsop-framework/i18n-docs-design.md. The exported
MAINTAINED_LANGUAGE_ALIASES table and resolveLanguage function in
${CLAUDE_PLUGIN_ROOT}/mcp/codex-review/src/control-surface-contract.ts are the machine authority.
Trim surrounding whitespace, use case-insensitive lookup with _ converted to - for lookup only,
and preserve the trimmed spelling of valid unmaintained locales. The exact maintained aliases are
zh / zh-CN / zh_CN / zh-Hans / zh_Hans → zh-CN and
de / de-DE / de_DE → de-DE. Values such as de-AT, de-CH, zh-Hant, zh-TW,
dee, and de-Latn remain valid unmaintained locales; missing, empty, or grammar-invalid values
are invalid. Use a maintained canonical form for the manifest lookup, --check, copied artifacts,
and recorded language / translation_source.
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.
- 4d ago First seen · 232 lines · 68 tokens per session scan A d138073f37b0
sop-lang is a command published in the GitHub repository Gnayj/claude-code-sop (2 stars, last pushed 23d ago), licensed MIT. It adds 68 tokens to every session and 4,189 once invoked, about $0.0003 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-31.
Other commands, from other repositories
translation-review
全面审核翻译质量: 对比原版、专项检查、质量评分与发布验证, 发现问题时自动衔接修复流程.
03-gap
Translate the visibility baseline + brand context into a ranked list of content actions that should move the needle. Identifies absent queries, contested queries, and competitor-displacement opportunities. Outputs contentpriorities.json validated against schema. Use after 02-audit; consumed by 04-content-brief.
issue-resolve
Drive an assessed gflow-cli issue (verdict CONFIRMED-BUG or LIKELY-BUG, with localized verifiable scope) to a fix: isolated worktree off develop, test-first fix, /gflow:check, then a DRAFT PR for human review. Mutating and gated — runs inside a strict action envelope (never merges, never spends credits, never marks a…
warden-cost
Dollar accounting — what does each active rule actually save, in money? Translates the token-measured verdict into dollars using a price table and the agent's own token-type mix, with a per-session net and a break-even. Read-only; spends no tokens.
wp-polylang
Translate an existing WordPress site into a second language using Polylang.
auto
Manage language auto-detection settings.