deliver
Skill2 starsChanged 7 days agoMITView on GitHub
Render a selection of retrieved fragments into Claude's working context per the deliver format contract. Library-only — callable by other skills (discover, prep, review, retrospect-core) that need to present bodies, not a user-invoked skill. Stateless.
25 other projects use a version of this.
Adopted by
Most recently taken up by
- zahidakhyar/skillstheir own version, first seen Nov 8, 2026
- frostney/knipstheir own version, first seen Nov 8, 2026
- domengabrovsek/agent-configtheir own version, first seen Nov 8, 2026
- domengabrovsek/claudetheir own version, first seen Nov 8, 2026
- mblauberg/provenanttheir own version, first seen Nov 8, 2026
- domitriusclark/claude-skillstheir own version, first seen Nov 1, 2026
Used with
Projects with it also use prune, create-issue and 8 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
matthewpSkillprune
Find and remove unused CSS in a Tideway project — classes defined in stylesheets but never referenced in markup. Use whenever the user wants to prune dead CSS, find unused styles or classes, clean up or slim a stylesheet, find orphaned BEM classes, or "tree-shake" hand-written CSS.
Also in 3 projects that use this
sahinSkillcreate-issue
Also in 3 projects that use this
BlockSkillplan
Draft a TDD, PRD, or lightweight plan in the conversation without committing it.
Also in 5 projects that use this
AWSSkillship
Finalize dev work on an issue branch — update docs, push, and open a PR.
Also in 5 projects that use this
AWSSkillwait-what
Stop. That last message did not land: re-pitch it.
Also in 3 projects that use this
Hugging FaceSkillimplement
Make tests pass. Invoke after /write-tests produces failing tests.
Also in 5 projects that use this
Other versions25 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 25
- google-gemini/gemini-managed-agents-templates★ 99same name
- domengabrovsek/agent-config★ 22same name
- domengabrovsek/claude★ 22same name
- domitriusclark/claude-skills★ 11same name
- coder-xieshijie/dev-skills★ 5same name
- andeeplus/aplus★ 2same name
- MarkTripoli/skills★ 2same name
- matiopala/skills★ 2same name
- dcguim/skills★ 1same name
- frostney/knips★ 1same name
15 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository47 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .github/copilot-instructions.mdCopilot instructions
- autonomizeSkill
- blueprintSkill
- brainstormSkill
- captureSkill
- checkpointSkill
- close-outSkill
- coordinateSkill
- cycleSkill
- design-proposalSkill
- discoverSkill
- dispatchSkill
- draft-planSkill
- envisionSkill
- executeSkill
- extract-conventionsSkill
- glossarySkill
- humanizeSkill
- human-viewSkill
- improve-promptSkill
- memory-auditSkill
- new-agentSkill
- new-agents-mdSkill
- new-hookSkill
- new-mcpSkill
- orchestrateSkill
- pr-authorSkill
- prepSkill
- pre-pushSkill
- pr-triageSkill
- recapSkill
- retrospect-coreSkill
- reviewSkill
- rulesSkill
- shortcutsSkill
- specSkill
- systematic-debuggingSkill
- test-driven-developmentSkill
- update-changelogSkill
- update-codemapSkill
- using-git-worktreesSkill
- visualise-codemapSkill
- visualSkill
- work-stateSkill
- wrapSkill
- write-testsSkill
The file
We split this skill into the rules it gives an agent
5 rules. 0 are common, 4 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 25 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 54
Default priority (highest tier first):
- Very specific: line 65
If order_override == "caller", skip tiers and respect the caller's exact sequence.
- Distinctive: line 72
If a single tier's members must be split, keep the head of that tier in caller-given order.
- Distinctive: line 100
If fragments were dropped in step 3, append exactly one trailing line after the last fragment:
- Distinctive: line 122
Does not maintain state: No cache, no history, no memoization.
“Common” is measured: kept by at least 6 in 10 of the 25 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
deliver
The delivery organ. Takes an already-selected set of fragments and produces the rendered block Claude reads.
When to run
- Another skill invokes this one programmatically, passing a fragment selection it has already filtered and scored (discovery for bodies, prep at task start, review during diff inspection, plan at milestone boundaries).
- Do not respond to user prose triggers. There is no
/delivercommand. There is no "when user says X" branch. Delivery is purely a format-and-assembly helper. - Stateless per call. No memoization, no cache, no hidden state.
Inputs
Structured, from the caller:
{
fragments: Fragment[], // already-selected; delivery does not re-filter
order_override?: Order, // optional; default = the §2 tier priority
cap?: number, // optional; default 20; hard ceiling regardless of caller
}
Fragment = {
path: string, // repo-relative or ~/-relative; source-of-truth pointer
frontmatter: { // parsed YAML
name: string,
description?: string,
type?: string,
kind?: string, // "architectural-rule" | "decision" | "lesson" | "preference" | ...
scope?: string[],
relevance?: string,
},
body: string, // verbatim content — delivery does not paraphrase
}
Order = "default" | "caller" | explicit-tier-listProcedure
1. Validate inputs
fragmentspresent and non-empty. Empty → return empty string and a single-line note ([delivery: empty selection]). Never synthesise content.- Each fragment has
path,frontmatter.name,body. Missingpathorname→ render with the available fields, emit a[delivery: fragment missing <field>]marker inline so the caller notices. capbounded to[1, 20]. Caller-specified values outside this range are clamped; flag the clamp in the report line.
2. Sort
Default priority (highest tier first):
- Warnings —
frontmatter.kind == "warning". Landmines that earned their place by citing a real prior incident; surface ahead of everything because the cost of forgetting one is concrete. - Architectural rules —
frontmatter.kind == "architectural-rule". - Project-specific facts —
frontmatter.type == "project"ORfrontmatter.scopecontains anyproject-*tag. - Session recaps —
frontmatter.type == "session-recap". Episodic recall sits below project facts but above codemap, because "what I was investigating" gives more signal than raw file summaries when resuming work. - Codemap entries — fragments where
frontmatter.kind == "codemap"orfrontmatter.type == "codemap". (Discovery surfaces these when.claude/codemap.mdcontributes.) - Everything else — lessons, decisions, preferences, references, general feedback.
Within each tier, preserve caller's ordering (stable sort — typically discovery's score descending).
If order_override == "caller", skip tiers and respect the caller's exact sequence. If order_override is an explicit tier list, use that in place of the default.
3. Cap
Hard cap is the resolved cap value (default 20). When fragments.length > cap:
- Drop from the lowest-priority tier first.
- If a single tier's members must be split, keep the head of that tier in caller-given order; drop the tail.
- Record the count of dropped fragments.
4. Render
Per-fragment shape, exact:
[scope: <comma-joined scope tags> | kind: <kind or "lesson"> | path: <path>] <name>
<body verbatim>For kind: warning, prepend a callout line before the header so the warning is visually distinct from neighbors:
📛 WARNING — do not repeat
[scope: <...> | kind: warning | path: <...>] <name>
<body verbatim>Notes:
scopejoinsfrontmatter.scopewith,. If empty →[scope: -].kinddefaults tolessonwhen absent (the memory-format default).pathverbatim from input — no normalisation, no resolution.bodyverbatim — no trimming beyond preserving the original content, except strip architectural-rule bullet-id anchors (<!-- id: ... -->prefixes): they are patch-resolution targets, never context. This is the one sanctioned body edit — it removes machinery, not content. Discover's resolver strips them too; deliver does it as defense-in-depth so a caller that bypasses the resolver still never leaks anchors. No other reformatting.- One blank line between fragments.
- Warning callout is the only prepend — other kinds render plain. Keep the callout to one line; the body itself carries the actual content.
If fragments were dropped in step 3, append exactly one trailing line after the last fragment:
[N fragments dropped — narrow scope for more detail]5. Return
Return the rendered string to the caller. Caller owns display decisions (show to user, feed to another skill, etc.). Delivery does not log, does not echo, does not persist.
Failure modes
- Empty selection. Return empty string + single-line
[delivery: empty selection]marker. Caller decides whether to suppress. - Malformed fragment (missing
pathorname). Render what's available; inline a[delivery: fragment missing <field>]marker above the fragment. Never skip silently. - Body longer than reasonable (> ~5KB or so). Render verbatim anyway — delivery is not a censor, and compression is storage-time, not delivery-time. If the caller passes a giant fragment, that's a caller problem.
order_overrideunrecognised value. Fall back to default priority and emit[delivery: unknown order override, fell back to default].
What deliver does NOT do
- Does not select fragments. Selection / filtering / scoring belongs to discover or the calling skill.
- Does not compress, paraphrase, or summarise. Compression is storage-time. Delivery is faithful to source.
- Does not enforce relevance. Bodies passed in are assumed relevant by the caller.
- Does not maintain state. No cache, no history, no memoization.
- Does not display to the user. Caller decides whether the rendered block is shown, stored, or consumed internally.
- Does not modify or re-read source files. Operates only on the passed-in fragment structs.
Source-of-truth rule
Every rendered fragment carries its path in the header. Callers and downstream readers (Claude re-reading in the same session, or the user inspecting the block) can always trace a fragment back to its authoritative file. Delivery never rewrites a fragment — the rendered form is a presentation of the original, not a replacement.
See docs/delivery-organ.md for the scope map and the rationale for each rule.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

