From siftcoder
Use to consolidate a codebase into a hidden `.source/` folder of AI-ingestion-friendly Markdown bundles — one `.md` per meaningful source folder, with each file's exact contents in fenced code blocks. Use when prepping a repo for an AI tool that only accepts Markdown, or when asked to "bundle / export source as markdown", "make the code ingestible", or "generate .source".
How this skill is triggered — by the user, by Claude, or both
Slash command
/siftcoder:source-bundleThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Turn a whole project into a small set of readable Markdown bundles under `.source/`,
Turn a whole project into a small set of readable Markdown bundles under .source/,
so an AI system that only accepts Markdown can ingest the code. Verbatim — nothing
is rewritten or summarized.
.source".document skill.codemap..source/ # hidden, git-ignored
├── index.source.md # explanation + included tree + bundle table + skip report
├── <folder>.source.md # one bundle per meaningful folder
└── <folder>.part-01.source.md # large folders split into parts
Each <folder>.source.md contains, in order:
The deterministic generator is shipped with the plugin. Run it against the target project (defaults to the current working directory):
node ${CLAUDE_PLUGIN_ROOT}/scripts/generate-source-md.mjs $ARGUMENTS
$ARGUMENTS (optional) = target project directory. Omit to bundle the CWD..source/ every run and
idempotently adds .source/ to .gitignore.description: / first # H1; leading JS/TS comment),
so output is reproducible.If the script is missing (e.g. running outside the plugin), recreate it in the
target repo at scripts/generate-source-md.mjs from the rules below, then run it.
Grouping (reasonable file count, not one file per source file):
skills/ or src/ split by subsystem; small ones stay single)..part-NN.source.md when embedded source exceeds ~350 KB.src/memory/web → src-memory-web.source.md.Exclusions (never embedded):
.git, .source, node_modules, coverage, build output (dist/build/
out — root-level only, so a /build skill folder is kept), .sfdx, .sf,
caches, virtualenvs.package-lock.json, yarn.lock, …), binaries / images /
archives / media (by extension), OS cruft (.DS_Store), and anything that looks
like a secret/key/credential (.env*, *.pem, *.key, id_rsa, .npmrc, …).IDEAS.md) when git-ignored as personal.Correctness:
node --check the script (if (re)created), then run it..source/ exists with the expected bundles + index.source.md..gitignore contains .source/ and nothing outside .source/ was
modified except .gitignore.State: files created/changed, source folders converted, Markdown files generated,
folders/files skipped (with reasons), and the regenerate command
(/siftcoder:source-bundle or node scripts/generate-source-md.mjs).
npx claudepluginhub ialameh/sift-coder --plugin siftcoderGuides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Resolves in-progress git merge or rebase conflicts by analyzing history, understanding intent, and preserving both changes where possible. Runs automated checks after resolution.