agentleFS
manu-kaushikmanu-kaushik/agent-kit/skills/source/SKILL.md

source

Skill0 starsChanged 3 months agoMITView on GitHub

Maintain SOURCE.md as the persistent project record. Use for /source init (bootstrap), /source check (read-only health report), or /source refresh (reconcile from repo). Optional flags --agents or --claude.

1 other project uses a version of this.

Adopted by

Most recently taken up by

  • Other versions1 project uses a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 1

    1. flowing-abyss/obsidian-vault-skills★ 9same name

    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 repository3 other files it gives its agents.

The file

Show its rules and text

We split this skill into the rules it gives an agent

15 rules. About 0 are common, 8 are distinctive, and 7 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈8

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 7

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use system/context signals from the current session — not install path, not chat history:

    line 44
  2. Distinctive:

    All templates live in templates/.

    line 54
  3. Distinctive:

    No flag on init → detect running tool (see table above).

    line 64
  4. Distinctive:

    No flag on refresh → detect running tool.

    line 65
  5. Very specific:

    Check without flags → report SOURCE only unless --agents / --claude limits guidance checks.

    line 66
  6. Very specific:

    Read README.md, dependency manifests, Makefile, CI configs, top-level layout, key scripts

    line 80
  7. Distinctive:

    When conversation context is empty or minimal, treat this step as primary

    line 81
  8. Very specific:

    Do not invent facts; use <!-- TODO: confirm --> when uncertain

    line 82
  9. Distinctive:

    Do not overwrite non-empty values

    line 83
  10. Very specific:

    If SOURCE.md is missing → tell the user to run /source init first.

    line 108
  11. Very specific:

    Update factual fields (Stack, Commands, Repository layout) only when SOURCE is empty, contains <!-- TODO: confirm -->, or repo evidence …

    line 111
  12. Very specific:

    When ambiguous, add <!-- stale: … --> rather than overwriting

    line 112
  13. Distinctive:

    Remove completed Deferred items only when repo or conversation evidence clearly shows completion

    line 114
  14. Very specific:

    If markers absent → insert template block after ## Boundaries.

    line 118
  15. Distinctive:

    Never remove project-specific additions

    line 119

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Source

SOURCE.md is the persistent project record — stack, architecture, decisions, deferrals, focus. Chats are temporary; SOURCE.md is not. Any agent in any chat reads it first and updates it when project truth changes.

FileRole
SOURCE.mdRequired — whole project on disk
AGENTS.mdAgent workflow; enforces SOURCE-first behavior
CLAUDE.mdClaude Code guidance; imports SOURCE via @SOURCE.md

Guidance files and tools

ScopeGuidance fileTools
agentsAGENTS.mdCursor, Codex, Amp, Cline, Windsurf, Antigravity, and similar
claudeCLAUDE.mdClaude Code only

Commands

SOURCE.md is always in scope. Guidance file scope is controlled by flags or detection (init and refresh only).

InvocationAction
/source initBootstrap — create or update SOURCE + detected guidance file
/source init --agentsBootstrap — SOURCE + AGENTS.md
/source init --claudeBootstrap — SOURCE + CLAUDE.md
/source checkRead-only health report — no file writes
/source check --agentsCheck SOURCE + AGENTS Boundaries only
/source check --claudeCheck SOURCE + CLAUDE Boundaries only
/source refreshReconcile SOURCE (and guidance sync per scope) from repo evidence
/source refresh --agentsRefresh SOURCE + sync AGENTS.md
/source refresh --claudeRefresh SOURCE + sync CLAUDE.md

For both guidance files, run init --agents and init --claude separately.

Detect running tool (init without flags)

Use system/context signals from the current session — not install path, not chat history:

Running inGuidance scope
Claude Codeclaude
Cursor, Codex, Amp, Cline, Windsurf, Antigravity, or similaragents
Unknownagents

Templates

All templates live in templates/.

Workflow

  1. Confirm target directory — workspace root unless the user specifies another path.
  2. Determine command — init, check, or refresh.
  3. Determine guidance scope (init and refresh only)
    • --agents or --claude → use that scope.
    • No flag on init → detect running tool (see table above).
    • No flag on refresh → detect running tool.
    • Check without flags → report SOURCE only unless --agents / --claude limits guidance checks.
  4. Resolve filenames — prefer SOURCE.md, AGENTS.md, CLAUDE.md. Treat lowercase variants as the same file.

init — bootstrap

  1. SOURCE.md
    • Missing → create from templates/SOURCE.md only. Do not prepend anything else.
    • Exists → never erase project content from ## Overview downward.
      • Marker — if source: marker is absent, add <!-- source: source-of-truth marker --> as the first line.
      • Normalize header — between # Source and ## Overview, keep exactly one intro paragraph (from template). Remove duplicate source-of-truth intros from older runs.
      • Sections — append template sections not already present; do not overwrite non-empty values.
  2. Bootstrap from repository — fill empty table cells and placeholders only:
    • Read README.md, dependency manifests, Makefile, CI configs, top-level layout, key scripts
    • When conversation context is empty or minimal, treat this step as primary
    • Do not invent facts; use <!-- TODO: confirm --> when uncertain
    • Do not overwrite non-empty values
  3. Merge durable project knowledge — from the current conversation, append where missing: Decisions, Deferred, Architecture; rewrite Current focus only when focus clearly shifted. Skip if no conversation context.
  4. AGENTS.md (when guidance scope is agents) — create from template if missing; prepend pointer if marker absent; sync default Boundaries block from template (marker rules below).
  5. CLAUDE.md (when guidance scope is claude) — create from template if missing; prepend pointer if marker absent; sync default Boundaries block from template.
  6. Summarize init — scope, one-line status per file touched, gaps needing input (≤5 lines). If the other guidance file does not exist, note: run /source init --[other] if this repo is also used with that tool.

check — read-only health report

Do not create, edit, or delete any file.

  1. Read SOURCE.md, README.md, dependency manifests, CI configs, top-level directory layout, and guidance files in scope.
  2. Report to the user in three groups:
    • OK — sections that match the repo or need no action
    • Stale — SOURCE claims X, repo shows Y (cite paths)
    • Missing — template sections absent, marker missing, duplicate header intros, Boundaries block behind template, empty critical cells with repo data available
  3. End with: Run /source refresh to reconcile. Do not fix anything.

refresh — reconcile

If SOURCE.md is missing → tell the user to run /source init first; stop.

  1. SOURCE.md — apply init steps 5–7, plus conservative reconciliation:
    • Update factual fields (Stack, Commands, Repository layout) only when SOURCE is empty, contains <!-- TODO: confirm -->, or repo evidence clearly contradicts SOURCE
    • When ambiguous, add <!-- stale: … --> rather than overwriting
    • Normalize header (one intro between # Source and ## Overview)
    • Remove completed Deferred items only when repo or conversation evidence clearly shows completion
  2. AGENTS.md / CLAUDE.md (per guidance scope) — sync default Boundaries from template:
    • Replace block between <!-- source: boundaries-default --> and <!-- /source: boundaries-default --> (markers inclusive)
    • If markers absent → insert template block after ## Boundaries; preserve <!-- Project-specific additions below --> and content after it
    • Never remove project-specific additions
  3. Summarize refresh — what changed, what remains stale or needs manual input (≤5 lines). Suggest /source check to verify.

Boundaries sync (init and refresh)

Extract the marked block from templates/AGENTS.md or templates/CLAUDE.md. Never overwrite content after <!-- Project-specific additions below -->.

Separation

Project facts live in SOURCE.md only. Guidance files enforce read/update behavior; do not duplicate facts.

Ongoing use

During normal work, agents update SOURCE.md when project truth changes — without waiting for /source init. Agent behavior → edit AGENTS.md or CLAUDE.md. Project facts → edit SOURCE.md.

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.