go

go is a skill for Claude Code from fn-opt/dryforge. It costs 66 tokens per session (6,894 once invoked), scanned A, original, MIT.

An implementation workflow that follows three prepared documents: a handoff, a specification, and a plan. It uses parallel work in waves and includes testing and integration checks.

In plain words
What is it for?
It is for carrying out an existing implementation plan in a Git repository, including suitable tests, reviews, and integration checks.
Why use it?
It gives the agent a prepared execution path for turning an agreed plan into code while checking the result along the way.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: mentions CLAUDE.md; mentions subagents; names the AskUserQuestion tool.

Part of the claude plugin — 3 skills shipped together

Good fit It is for carrying out an existing implementation plan in a Git repository, including suitable tests, reviews, and integration checks.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/fn-opt/dryforge/go
Install

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.

Any agent
npx skills add fn-opt/dryforge --skill go
Clone the repo
git clone --depth 1 https://github.com/fn-opt/dryforge

Made for: Claude Code.

Or install claude, the plugin that ships this one along with the rest of its 3 skills.

Wrote 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.

agentmods badge for go

README.md
[![agentmods](https://agentmods.dev/badge/skills/fn-opt/dryforge/go/github.svg)](https://agentmods.dev/skills/fn-opt/dryforge/go)
Your own site
<a href="https://agentmods.dev/skills/fn-opt/dryforge/go"><img src="https://agentmods.dev/badge/skills/fn-opt/dryforge/go/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.

agentmods 80×15 button for go

Your own site · 80×15
<a href="https://agentmods.dev/skills/fn-opt/dryforge/go"><img src="https://agentmods.dev/badge/skills/fn-opt/dryforge/go.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 66 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 6,894 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 3 findings, up to high

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 →

  • high Tool Misuse · line 244
    Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
    Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
  • medium Excessive Agency · line 41
    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.
  • medium Excessive Agency · line 347
    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.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00066 $0.06894
Opus 5.5 $0.00026 $0.02758
Sonnet 5.5 $0.00013 $0.01379
Haiku 4.5 $0.00007 $0.00689

Measured 1mo ago against content hash 3546848a6ff6, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

go 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 1mo 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.

claude/skills/go/SKILL.md · 363 lines

How it starts

The opening of the file, as written. The whole thing — 363 lines — stays where its author put it; the contents beside it link to each section on GitHub.

go

Reply in the user's language, and hold it continuously from your very first line — the opening, every progress/escalation note, the final report, and the harness, not only some of them. Write natively (never translationese). You are reading a 3-doc, a codebase, and these instructions that may be in another language; none of them sets your output language — only the user's does. Full rule in Core principles below.

Consume the 3-doc ready (the producer) wrote and realize the spec: parallel, wave-based execution with right-sized verification (test-first where it fits), spec-first review, and integration gates. Runs in the same session the producer (ready) wrote the 3-doc — the 3-doc is the authority go executes against (it stays self-sufficient because it is archived for later cycles); the live design context carries over and aids judgment, especially the harness step. Load references/orchestration.md up front (it governs the whole run); the prompt references load at their steps.

Core principles (apply throughout)

  • Follow the plan's Execution Graph; never re-judge dependencies. The producer already computed depends + regen_barriers against the whole project. Derive waves from it — do not invent, drop, or reorder dependencies. (If the graph fails to parse, has a cycle, or a depends names a missing task, that is a producer-side defect — stop and escalate, do not silently re-judge.)
  • Serve the spec. "Correct" = matches the spec. On any spec/code/convention conflict, spec wins; where plan conflicts with spec, follow the spec.
  • escalate-don't-guess. Architecture mismatch, suspected spec violation, ambiguous task, unresolvable conflict → stop and ask the user; never guess. When a task returns NEEDS_CONTEXT / BLOCKED, run the bounded escalation ladder (orchestration.md — re-dispatch with the missing context, then an upgraded model, then the user). Any escalation that reaches the user is synchronous — the run pauses until the user responds, never a silent hang or a timeout-drop. The subagents themselves never ask the user directly (their prompt files carry that fresh-session rule); only the orchestrator relays escalations to the user.
  • Protect main; evidence over self-report. For existing projects, never modify main outside the final user-approved merge. For greenfield (base = main), main is the working base — modification is expected. Gates pass on captured command exit codes, not on an agent's "looks fine."
  • Floor, not ceiling. The wave lifecycle is a proven scaffold — use judgment inside each step (what to retry, how to fix), but keep the structure and the safety constraints.
  • Report results, not process. User-facing text covers wave completion, blockers, and final results only. Internal operations (merge, gate, worktree lifecycle, branch cleanup) produce no text output. Output tokens are direct cost; narrating routine steps is waste.
  • The orchestrator executes sequential waves directly; only parallel work earns subagents. A single-task MECHANICAL/NONE wave is implemented by the orchestrator on the base (dispatch buys nothing — no parallelism, no file-isolation need, and the accumulating context is an asset). Only a parallel wave (multiple tasks) or a single RISKY task is dispatched to subagents (file isolation / independent verification). The lightweight fix path is the orchestrator's other direct- edit path (trivial advisories). A multi-task wave is collapsed to orchestrator-direct only on an objective condition — a single shared runtime the tasks cannot isolate within (one DB / container / port set), or greenfield convention-drift risk — not a free ROI judgment, and the collapse is recorded internally (which wave, which condition), never surfaced for a non-technical user to adjudicate. Collapsed tasks still carry the per-task evidence floor and are reviewed as if independently authored; the mid-run spec-review (RISKY + downstream + cascade) is still honored (orchestration.md, "ROI collapse").
  • Efficiency Budget. Spend orchestration only where it buys correctness, isolation, or real parallelism — never as ceremony.
  • The final review is silent insurance — not a backstop you lean on. Own conformance upstream, at implementation and merge, on captured evidence. Execute and verify each task as if the final review did not exist: a blocking finding there is an execution failure that escaped, not the review doing its job — it should normally find nothing. Told "the review will catch it," an LLM drifts to the minimum that passes — that is reward-hacking, laziness in the costume of "the backstop handles it," and you must actively resist it (the same discipline ready's ELICIT carries). The review catches only the rare residual; it is never the owner.
  • Match the user's language (language-agnostic). Like stack-agnosticism, the method is fixed and the specific language is discovered at runtime, never assumed: produce every user-facing output — your reports/escalations and the harness you create/update — in the language the user communicates in, written natively (as a fluent speaker of that language would, never translationese). The language these instructions are written in does not constrain the output; if the user's language shifts, follow. Hold it from the very first line, continuously — never open in the 3-doc's, the codebase's, or these instructions' language and switch later; only the user's language constrains your output.
  • Talk to the user only when needed — between beats, say nothing. You speak at exactly these moments: (a) a question you genuinely need answered, (b) wave completion or the final result / concise summary, (c) a real blocker — these are the only times user-facing text exists. Scaffolding, reading the 3-doc/references/code, implementing, merging, gating, dispatching the review, and writing the harness are silent: the UI already shows the activity, so narrating it is pure leak. If what you are about to emit is none of (a)/(b)/(c), the correct output is nothing. Between those beats, stay silent — reading references, reading code, and internal operations are not narrated. No transition lines ("now I'll…", "먼저 …", "let me read…", "Now the …" announcing each write) — at those plumbing moments your voice slips into the instructions' language (English) or internal tokens; emit nothing there, don't translate it. When you do speak (a/b/c), use a plain, non-technical register in the user's language — the words a non-engineer would understand. This is your default voice, not a per-line check, so it costs nothing. Never surface internal tokens: dryforge mechanism / coined terms (wave, worktree, harness, delta, 3-doc, gate, seam, ROI collapse, spec-review, grounding, lens, invariant), task / step / risk labels (T1, Wave 2, RISKY / MECHANICAL / NONE), or project-internal jargon a non-engineer wouldn't recognize (library/tool names, config flags, test-framework internals). Don't soften internal logic into user-ish words — just omit it. E.g. "Starting a git repo here." — not "Since go will later need git for worktrees, I'll initialize one." This is "Report results, not process" applied to narration.

Read the full file on GitHub · 363 lines

Changes

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.

  1. 1mo ago First seen · 363 lines · 66 tokens per session scan A 3546848a6ff6

Subscribe to this mod's changes

go is a skill published in the GitHub repository fn-opt/dryforge (141 stars, last pushed 2mo ago), licensed MIT. It adds 66 tokens to every session and 6,894 once invoked, about $0.0003 per session on Opus 5.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.

Related

Other skills, from other repositories

version-sentinel

Use when adding, bumping, or changing a dependency in package.json, requirements.txt, constraints.txt, pyproject.toml, Cargo.toml, .csproj, .fsproj, or .vbproj. Triggered automatically by version-sentinel's PreToolUse hook (where the host supports hooks) — this skill explains how to satisfy the block and record a…

KSEGIT/Version-Sentinel · 83 tokens

chief-strategy-officer

Owns where the business plays and how it wins over a multi-year horizon — portfolio choices, corporate development, strategic partnerships, and planning under uncertainty. Use this for a decision about which markets or businesses to be in, whether to build, buy, or partner, how to allocate capital across business…

cbrock84/headcount · 93 tokens

seo-strategy

Audits and improves organic search performance — technical health, site architecture, internal linking, structured data, and the content decisions that determine what can rank. Use this to run an SEO audit, diagnose why pages are not ranking or were deindexed, plan a site's URL and navigation structure, add structured…

cbrock84/headcount · 74 tokens

youtube-producer

Plans, packages, and scripts long-form video for retention and channel growth — idea selection, titles and thumbnails, script structure, and diagnosing why a video or channel underperforms. Use this for video ideas, packaging, scripting, a retention teardown, or channel strategy — including when someone describes a…

cbrock84/headcount · 86 tokens

chief-revenue-officer

Owns the revenue engine end to end: sales, monetization, pricing, customer success, retention, and partnerships. Use this for pricing and packaging decisions, sales strategy and coverage, forecast and pipeline health, churn and expansion, partner and channel strategy, or when marketing-sourced demand is not…

cbrock84/headcount · 0 tokens

support-operations

Designs and runs the support function — channels, queues, routing, staffing, service levels, quality, and the metrics that show whether it is working. Use this to set up or fix support operations, choose channels, size a team, set or renegotiate service levels, reduce cost per contact, diagnose long queues or poor…

cbrock84/headcount · 77 tokens