Init
Use when the user wants to set up an FDE-SKILLS workspace or start a new client engagement (e.g. "set up fde", "scaffold fde here", "new engagement with Acme", "start the Globex engagement"). First run creates the .fde/ deterministic spine (config, schemas, bin scripts, empty corpus); with a client name it also creates the per-client engagement directory.From its SKILL.md
npx -y skills add mk668a/FDE-SKILLS --skill initAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.8 KB, 632 tokens by cl100k_base, as published. Nobody here has run it
fde-init — scaffold the workspace and open engagements
Creates the .fde/ spine in the current directory (once), and one directory
per client engagement (any time). A workspace is personal and spans all
clients so knowledge compounds across them; isolation between clients is by
directory.
Steps
- Scaffold the spine — skip this whole step if
.fde/config.ymlalready exists (don't clobber; say it's already initialized). The templates ride inside this skill, so${CLAUDE_SKILL_DIR}points at them no matter how the pack was installed:src="${CLAUDE_SKILL_DIR}/templates" mkdir -p .fde/bin .fde/schemas .fde/corpus engagements cp "$src/config.yml" .fde/config.yml cp "$src"/schemas/*.schema.yml .fde/schemas/ cp "$src"/bin/*.sh .fde/bin/ chmod +x .fde/bin/*.sh - Gitignore the confidential layer — if the workspace is a git repo, add
to
.gitignore:
Everything underengagements/ .fde/dashboard.htmlengagements/is raw client material and must never be committed; the dashboard contains client slugs. The shared.fde/corpus/(anonymized) and.fde/schemas/are commit-safe. - Open the engagement — if the user named a client:
This creates.fde/bin/fde-new.sh "<Client Display Name>"engagements/<slug>/{notes,deliverables}/, writesengagement.yml, and registers the slug in.fde/index.yml. - Print the layout and point at
/fde:draftfor the first deliverable.
The workspace layout
.fde/
config.yml deliverable types + paving threshold + extra identifiers
schemas/ <type>.schema.yml — slot defs that evolve across engagements
corpus/ <type>.yml — anonymized priors with sighting counters
bin/ deterministic scripts (no LLM): new, coverage, promote,
validate, identifiers, dashboard
index.yml registry of engagements (created by fde-new.sh)
dashboard.html the compounding wall (fde-dashboard.sh; never commit)
engagements/
<client>/ one dir per client — CONFIDENTIAL, never cross-read
engagement.yml, notes/, deliverables/
Hard rules
- Never write client-identifying content into
.fde/corpus/. Only/fde:promotemoves knowledge up, and it anonymizes on the way. - The spine scripts are the source of truth for counting/redaction/paving. Don't reimplement their logic in prose — call them.
What ships with it: 15 files
44.7 KB alongside SKILL.md, 6 of them executable
templates/
- bin/fde-coverage.shruns2.4 KB
- bin/fde-dashboard.shruns8.8 KB
- bin/fde-identifiers.shruns2.6 KB
- bin/fde-new.shruns1.5 KB
- bin/fde-promote.shruns9.7 KB
- bin/fde-validate.shruns1.2 KB
- config.yml2.0 KB
- schemas/delivery-schedule.schema.yml2.6 KB
- schemas/discovery-doc.schema.yml2.5 KB
- schemas/enablement-plan.schema.yml1.9 KB
- schemas/findings-report.schema.yml1.6 KB
- schemas/integration-spec.schema.yml2.7 KB
- schemas/ontology-map.schema.yml1.8 KB
- schemas/risk-register.schema.yml1.7 KB
- schemas/stakeholder-map.schema.yml1.6 KB