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 skills/alexpialetski/doccraft/doccraft-closenpx skills add alexpialetski/doccraft --skill doccraft-closegit clone --depth 1 https://github.com/alexpialetski/doccraftWrote 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/alexpialetski/doccraft/doccraft-close)<a href="https://agentmods.dev/skills/alexpialetski/doccraft/doccraft-close"><img src="https://agentmods.dev/badge/skills/alexpialetski/doccraft/doccraft-close.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.1 | $0.00161 | $0.02423 |
| Opus 5 | $0.00081 | $0.01211 |
| Sonnet 5 | $0.00032 | $0.00485 |
| Haiku 4.5 | $0.00016 | $0.00242 |
Grade A, and why
doccraft-close 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 5d 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 — 207 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Managed by doccraft —
doccraft updateregenerates this file. Local edits will be overwritten. Seedoccraft.jsonto override project-specific vocabulary and paths without touching this file.
doccraft — close a story (transactional)
When to use
- The user wants to close / ship / finish / resolve a specific story and have the planning surface end up consistent — not just the story file.
- Work is moving to any terminal state:
done, or a non-promoting terminal likedone-no-promote,abandoned,absorbed. - The user pastes "mark P1.30 done", "close audio-engine/STR-0042", "we shipped the retry flow", or similar.
Not for: authoring or re-scoping a story (use doccraft-story), a general
"what's unblocked / fix the queue" sweep with no specific story to close
(use doccraft-queue-audit), or recording a decision (use doccraft-adr).
Closing a story is a multi-file transaction. The story file is only step one; the backlog row, the queue row, and (with epics) the parent epic table all describe the same work and drift the moment one is updated without the others. This skill owns the whole transition so a close never lands halfway.
Configuration
Read doccraft.json at invocation. Every key below has a default in this
body, so a missing config file is a soft fallback, not an error.
docsDir— root folder for all docs. Default:docs. Stories, queue, and backlog live at{docsDir}/stories/,{docsDir}/queue.md,{docsDir}/backlog.md.story.status— the allowedstatus:values. The terminal values are whichever of these mean "no longer active work" —donealways, plus any the project adds (done-no-promote,abandoned,absorbed). Read this list rather than assumingdoneis the only terminal state; a story closed asabsorbedis just as closed as one markeddone.queue.tables.suggestedOrder,queue.tables.platformSpikes— heading text used to locate the queue tables. Defaults:Suggested order,Platform spikes. Matched on heading text, not row position.
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.
- 5d ago First seen · 207 lines · 161 tokens per session scan A cadae99d2158
doccraft-close is a skill published in the GitHub repository alexpialetski/doccraft (4 stars, last pushed 2mo ago), licensed MIT. It adds 161 tokens to every session and 2,423 once invoked, about $0.0008 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
extract-source-sample
Given the path to a finished content-goose ad-run folder, extract everything that defines that ad — recipe shot list, VO script, characters, voices, world, atom-skills, master mp4 — and emit a source-sample.json in the exact shape the upload-ad-sample skill writes to the Goose Ads library. Also links every character…
create-video-seedance-2-fal
Generate a single 4-15s vertical video clip with ByteDance Seedance 2.0 reference-to-video via fal.ai. Multi-image reference (avatar + product + setting), native lip-synced VO + ambient audio (generate-audio on by default), internal multi-cut handling within one render. Routes through the GooseWorks FAL proxy (bills…
comprehensive-enrichment
Enrich any person or company from any identifier — email, name, LinkedIn URL, domain, company name, Twitter/X handle. Use when asked to enrich, look up, or research a lead, contact, person, or company.
google-search-ads-builder
End-to-end Google Search Ads campaign builder. Performs deep keyword research (competitor SEO, review language mining, Reddit/HN community terminology, site audit), builds keyword architecture with funnel mapping and intent classification, creates ad group structure, generates headline/description variants, builds…
create-dashboard
Create a custom web dashboard (React + Vite + Express) inside your sandbox to visualize the agent's Turso database. The dashboard is served on port 3847 and the user sees it live in the "App" tab in Gooseworks. Use when the user asks for a dashboard, visualization, chart, metric view, or any custom UI powered by their…
create-workflow-diagram
Create FigJam/Miro-style workflow diagrams as high-quality PNG images from plain-text workflow descriptions. Renders beautiful HTML diagrams with connected nodes, arrows, and labels, then screenshots them for sharing.