agentleFS
puretensorpuretensor/agent-context-bundles/skills/ctx/SKILL.md

ctx

Skill1 starsChanged 5 months agoMITView on GitHub

Load deep context bundles for specific work domains. Use when user says /ctx, "load context for", or needs domain-specific operational knowledge before working on a project.

4 other projects use a version of this.

Adopted by

Most recently taken up by

  • Other versions4 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 4

    1. ctxrs/ctx★ 1.2ksame name
    2. motiful/ctx★ 1same name
    3. ctx-hq/ctx★ 0same name
    4. umitsu-tech/claude-code-discord-bot★ 0same 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.

The file

Show its rules and text

We split this skill into the rules it gives an agent

19 rules. About 0 are common, 13 are distinctive, and 6 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈13

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 6

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use these paths in order for community bundles and stop at the first existing directory:

    line 21
  2. Very specific:

    Use ~/.claude/contexts/ for user bundles.

    line 35
  3. Very specific:

    If the bundle contains Current State or Recent Changes, show those sections.

    line 118
  4. Distinctive:

    If not found, check the community bundle directory above

    line 127
  5. Distinctive:

    If neither exists, list available bundles and suggest the closest match

    line 128
  6. Distinctive:

    Read the full bundle file

    line 129
  7. Distinctive:

    If multiple bundles loaded, note integration points between them

    line 131
  8. Distinctive:

    If 4+ bundles requested, warn about context cost

    line 132
  9. Very specific:

    Create ~/.claude/contexts/ if missing.

    line 139
  10. Very specific:

    If the copied file lacks ## Current State, append it.

    line 141
  11. Distinctive:

    Do not overwrite an existing local bundle unless the user explicitly asks.

    line 143
  12. Distinctive:

    Use this exact append block when the sections are missing:

    line 146
  13. Distinctive:

    Update an existing user bundle after a work session.

    line 160
  14. Distinctive:

    Keep the bundle focused and under ~3000 words.

    line 166
  15. Distinctive:

    Create a new user bundle from scratch.

    line 170
  16. Distinctive:

    If no path is provided, ask for the project directory.

    line 172
  17. Very specific:

    Use the bundled template from the community bundle directory: _template.md.

    line 174
  18. Very specific:

    Write the result to ~/.claude/contexts/<name>.md.

    line 175
  19. Distinctive:

    When working across domains, load all relevant bundles.

    line 182

≈ “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

Context Bundle Loader

Context bundles are deep domain briefings that give Claude Code instant operational knowledge for a technology stack or work domain. Instead of discovering patterns through trial and error, load a bundle and skip the ramp-up.

There are two bundle classes:

  • User bundles: ~/.claude/contexts/ -- private, project-specific, stateful bundles
  • Community bundles: shipped inside this installed skill -- static stack briefings

User bundles take priority when names conflict.

Bundle lookup

Use these paths in order for community bundles and stop at the first existing directory:

BUNDLE_DIR=""
for d in \
  ./.claude/skills/ctx/bundles \
  "$HOME/.claude/skills/ctx/bundles" \
  ./skills/ctx/bundles
  do
  [ -d "$d" ] && BUNDLE_DIR="$d" && break
done
[ -n "$BUNDLE_DIR" ] || echo "Community bundle directory not found"

Use ~/.claude/contexts/ for user bundles.

Commands

/ctx list or /ctx (no args)

List all available bundles from both locations.

echo "=== Your Bundles ==="
for f in ~/.claude/contexts/*.md; do
  [ ! -f "$f" ] && continue
  [ "$(basename "$f")" = "_template.md" ] && continue
  name=$(basename "$f" .md)
  desc=$(head -5 "$f" | grep '^> ' | sed 's/^> //')
  lines=$(wc -l < "$f")
  printf "  %-18s (%3d lines)  %s\n" "$name" "$lines" "$desc"
done

BUNDLE_DIR=""
for d in ./.claude/skills/ctx/bundles "$HOME/.claude/skills/ctx/bundles" ./skills/ctx/bundles; do
  [ -d "$d" ] && BUNDLE_DIR="$d" && break
done
if [ -d "$BUNDLE_DIR" ]; then
  echo ""
  echo "=== Community Bundles ==="
  for f in "$BUNDLE_DIR"/*.md; do
    [ ! -f "$f" ] && continue
    [ "$(basename "$f")" = "_template.md" ] && continue
    [ "$(basename "$f")" = "example.md" ] && continue
    name=$(basename "$f" .md)
    desc=$(head -5 "$f" | grep '^> ' | sed 's/^> //')
    lines=$(wc -l < "$f")
    printf "  %-18s (%3d lines)  %s\n" "$name" "$lines" "$desc"
  done
fi

Present the output as a clean formatted list. Skip empty sections.

/ctx catalog

List only shipped community bundles. Show name, description, and section outline.

BUNDLE_DIR=""
for d in ./.claude/skills/ctx/bundles "$HOME/.claude/skills/ctx/bundles" ./skills/ctx/bundles; do
  [ -d "$d" ] && BUNDLE_DIR="$d" && break
done
for f in "$BUNDLE_DIR"/*.md; do
  [ ! -f "$f" ] && continue
  [ "$(basename "$f")" = "_template.md" ] && continue
  [ "$(basename "$f")" = "example.md" ] && continue
  name=$(basename "$f" .md)
  desc=$(head -5 "$f" | grep '^> ' | sed 's/^> //')
  lines=$(wc -l < "$f")
  sections=$(grep '^## ' "$f" | sed 's/^## //' | paste -sd ', ' -)
  printf "  %-18s (%3d lines)  %s\n" "$name" "$lines" "$desc"
  printf "                              Sections: %s\n\n" "$sections"
done

/ctx show <name>

Preview a bundle without loading it. Search user bundles first, then community bundles.

name=$1
if [ -f ~/.claude/contexts/${name}.md ]; then
  f=~/.claude/contexts/${name}.md
else
  BUNDLE_DIR=""
  for d in ./.claude/skills/ctx/bundles "$HOME/.claude/skills/ctx/bundles" ./skills/ctx/bundles; do
    [ -d "$d" ] && BUNDLE_DIR="$d" && break
  done
  f="$BUNDLE_DIR/${name}.md"
fi
head -5 "$f"
echo ""
grep '^## ' "$f"

Then:

  • If the bundle contains Current State or Recent Changes, show those sections.
  • Otherwise show the most relevant operational sections that exist, preferring Common Operations, Gotchas, and one stack-specific section.

/ctx <name> or /ctx <name1> <name2> ...

Load one or more bundles into the conversation.

  1. For each requested bundle:
    • Check ~/.claude/contexts/<name>.md first
    • If not found, check the community bundle directory above
    • If neither exists, list available bundles and suggest the closest match
  2. Read the full bundle file
  3. Confirm: Loaded **<name>** context. Key focus: <description line>.
  4. If multiple bundles loaded, note integration points between them
  5. If 4+ bundles requested, warn about context cost

/ctx install <name>

Copy a community bundle to ~/.claude/contexts/ for project customization.

  1. Find <name>.md in the community bundle directory.
  2. Create ~/.claude/contexts/ if missing.
  3. Copy to ~/.claude/contexts/<name>.md.
  4. If the copied file lacks ## Current State, append it.
  5. If the copied file lacks ## Recent Changes, append it.
  6. Do not overwrite an existing local bundle unless the user explicitly asks.
  7. Confirm that the local bundle is now project-specific and ready for /ctx update.

Use this exact append block when the sections are missing:

## Current State

- Customize this section for your project: deployment status, active work, known issues.

## Recent Changes

- YYYY-MM-DD -- Installed from community bundle; replace with project-specific updates.

/ctx update <name>

Update an existing user bundle after a work session.

  1. Read ~/.claude/contexts/<name>.md.
  2. Refuse to update a community bundle in place; require a local installed copy.
  3. Based on work done in this session, update only the sections that changed.
  4. Append a dated entry to Recent Changes.
  5. Keep the bundle focused and under ~3000 words; summarize older entries when needed.

/ctx new <name> [<path>]

Create a new user bundle from scratch.

  1. If no path is provided, ask for the project directory.
  2. Explore the project: README, entry points, config, git activity, and directory structure.
  3. Use the bundled template from the community bundle directory: _template.md.
  4. Write the result to ~/.claude/contexts/<name>.md.
  5. Present the draft for user review.

Important rules

  • Bundles complement CLAUDE.md and MEMORY.md -- never duplicate their content.
  • Cross-reference secrets or credentials rather than copying them into bundles.
  • When working across domains, load all relevant bundles.
  • Suggest /ctx update <name> after significant work on a local project bundle.
  • Community bundles are static stack briefings. User bundles are project-state documents.
  • User bundles always take priority over community bundles of the same name.

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.