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 n-n-code/n-n-code-skills --skill story-repo-scoutgit clone --depth 1 https://github.com/n-n-code/n-n-code-skillsWrote 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/n-n-code/n-n-code-skills/story-repo-scout)<a href="https://agentmods.dev/skills/n-n-code/n-n-code-skills/story-repo-scout"><img src="https://agentmods.dev/badge/skills/n-n-code/n-n-code-skills/story-repo-scout/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/n-n-code/n-n-code-skills/story-repo-scout"><img src="https://agentmods.dev/badge/skills/n-n-code/n-n-code-skills/story-repo-scout.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00076 | $0.03441 |
| Opus 5 | $0.00038 | $0.01721 |
| Sonnet 5 | $0.00015 | $0.00688 |
| Haiku 4.5 | $0.00008 | $0.00344 |
Grade A, and why
story-repo-scout 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 — 288 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Story Repo Scout
Turn a searchable change request into evidence-backed Repo Context. This skill
owns that artifact; it does not clarify product intent, design the solution, or
implement the change.
Required Input
Accept a story card, ticket, issue, acceptance criteria, or rough request when it provides at least one distinctive search anchor, such as an observable behavior, domain term, route, command, UI label, error, config key, data field, or known symbol. A complete story card is useful but not required.
When the input names a path, issue, or URL, treat that source as part of the input rather than relying on its title or excerpt. Read the full accessible, authorized body plus material comments and linked decisions. Record its stable identifier and exposed revision, update time, or commit. If access is partial or unavailable, record the exact gap and its planning consequence.
If the intended behavior is too ambiguous to establish a search boundary, use
story-clarifier. If repository access or every available input lacks a
searchable anchor, return a truthful non-ready artifact instead of guessing.
Workflow
- Establish scope. From the required input, identify the repository, likely workspace or component, requested change, search anchors, and provenance or access gap.
- Read governing instructions and decisions. Inspect the applicable root
and nested
AGENTS.mdfiles or equivalent repository policy before drawing boundaries. As candidate paths emerge, read any more-specific instructions that govern them. Follow relevant current domain glossaries, ADRs, and design decisions, including supersession links. Record each item's exact scope, status, and planning consequence. A decision record is a hard boundary only when its authority, current status, and scope establish one; do not treat all ADRs or design notes as do-not-edit rules. - Map the repository cheaply. Use a fast file listing such as
rg --fileswhen available, then inspect enough root docs, manifests, workspace definitions, directory structure, and repository metadata to understand how the project is organized. Discover the layout generically; do not assume a language, build system, or fixed set of workspace directory names. - Search evidence-first. Search exact anchors and their path or naming variants, then follow imports, registrations, callers, tests, docs, config, schemas, history, or neighboring conventions only where observed evidence points. Tests may be early anchors when their names or assertions express the requested behavior; do not defer them to a final pass.
- Inspect every candidate. Include an existing path only after inspecting its content or directory listing for support. Record the observed symbol, route, assertion, key, phrase, ownership rule, or structural convention. A filename alone is not evidence.
- Classify useful evidence. Give each existing path a role, planning priority, reason, and evidence strength. Docs, generated sources, vendored code, fixtures, and migrations are legitimate when their role matters; distinguish source-of-truth, generated-output, ownership, and integration roles rather than rejecting categories wholesale. Apply the external- evidence contract below to bounded planning-critical claims.
- Ground greenfield paths. When the change needs a file that does not yet
exist, list it under
Proposed Paths, never as existing evidence. Support it with an inspected parent directory, sibling pattern, manifest, registration point, or documented convention. If no such basis exists, state the missing decision as an open question instead of inventing a path. - Separate boundaries from distractions. Treat a path as an
Authoritative Constraint / Do Not Editonly when a user instruction, applicable repository policy, ownership rule, source-generation rule, or similarly authoritative source establishes that boundary. Put tempting but apparently unrelated paths in optionalNearby Non-targets; do not turn scout inference into a hard constraint. - Reconcile language and classify gaps. Surface material conflicts between
request terms and repository terms, behavior, or structure. Do not silently
rewrite the request to match the code. Label inspectable evidence work as a
[Fact]action and resolve it through authorized inspection; never ask the user to speculate about a repository fact the scout can inspect. Label an authority choice as a[Decision]question and name its owner. When a material fact cannot be inspected, record the access or evidence gap and make the artifact non-ready. - Stop on diminishing returns. Keep evidence that changes where an implementer would read, edit, add, or validate. Do not target a model-based path quota, summarize whole files, or keep collecting equivalent weak hits.
- Write idempotently. Return an appendable artifact. When the user asks
to update a source file that already contains
Repo Context, replace that artifact in place while preserving surrounding content; never append a second copy.
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 · 288 lines · 76 tokens per session scan A 257d08d128d6
story-repo-scout is a skill published in the GitHub repository n-n-code/n-n-code-skills (4 stars, last pushed 5d ago), licensed MIT. It adds 76 tokens to every session and 3,441 once invoked, about $0.0004 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 skills, from other repositories
astro-dso-doc
Generates a complete, polished HTML documentation page, a processing checklist, an AstroBin post JSON, a PixInsight process icon set (XPSM), AND a ready-to-paste PixInsight project Description field for a deep-sky object (DSO) astrophotography project. Use this skill whenever the user mentions astrophotography, a DSO…
document-code
Apply Google Style documentation standards to Python, Go, TypeScript, and Terraform code. Use when writing or reviewing code that needs docstrings/comments/JSDoc, when asked to "document this code", "add docstrings", "follow Google Style", or when improving code documentation quality. Supports Python docstrings, Go…
work-on-ticket
Fetches Jira ticket details, creates an appropriately named branch, and initiates the task planning workflow. Use when the user says "work on [TICKETID]" or similar phrases.
datadog
Use this skill when you need to search Datadog logs, query metrics, tail logs in real-time, trace distributed requests, investigate errors, compare time periods, find log patterns, check service health, or export observability data.
design-feature
Turn a raw idea or existing feature into a designed product SPEC by completing entity, integration, role, and expectation closure. Upserts never destroy recorded decisions. Triggers: "design-feature", "design this feature", "define product scope".
audit-pr
Audit a whole PR against the delivery contract and return MERGE-READY or evidenced blockers with the full URL. Consumes the current review-change REVIEW-PASS receipt instead of re-running review axes; posts a SHA-bound ready comment; never edits or merges. Triggers: "audit-pr", "is this PR ready", "merge gate".