T3d init
Initialize the current project with the DDD+TDD harness — copies CLAUDE.md, CONTEXT-MAP.md, contexts/_TEMPLATE/, contexts/_shared_kernel/, and docs/adr/ from the plugin. Use when adopting the harness in a fresh repo or onboarding an existing one. Run from the project root.From its SKILL.md
npx -y skills add coolsocket/t3d --skill t3d-initAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 1 stars1 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.
- runs commandsInstructs the agent to run 3 commands, including `cp -r` and 2 more.
SKILL.md
2.5 KB, 559 tokens by cl100k_base, as published. Nobody here has run it
t3d-init
Copy the harness templates into the current project root (the directory where Claude Code was launched).
Plan
- Resolve the project root from
${CLAUDE_PROJECT_DIR}. Print it. - For each template file under
${CLAUDE_PLUGIN_ROOT}/templates/:- Compute destination path under
${CLAUDE_PROJECT_DIR}/. - If destination exists, ask the user before overwriting (do NOT silently clobber
CLAUDE.md). - Otherwise,
cpit across, preserving directory structure.
- Compute destination path under
- After copying, print a "next steps" message:
- Open
CLAUDE.mdand fill the<!-- FILL IN -->project-identity section. - Open
CONTEXT-MAP.mdand list your bounded contexts. - Run
/t3d-new-context <your-first-context>to scaffold the first context.
- Open
Required tool calls
You must use the Bash tool to run cp -r. Do not use the Write tool for
copying — it would re-author files and lose timestamps/perms.
Templates to copy
The plugin ships this layout under ${CLAUDE_PLUGIN_ROOT}/templates/:
templates/
├── CLAUDE.md # generic harness rules (with FILL IN placeholders)
├── CONTEXT-MAP.md # empty bounded-context inventory
├── contexts/
│ ├── _TEMPLATE/ # 4-layer skeleton — copy-paste source for new contexts
│ └── _shared_kernel/ # example pure value objects (Money, Timestamp, ModelName, TokenCount)
└── docs/
└── adr/
├── README.md # Matt Pocock 3-condition ADR rule
└── NNNN-template.md # ADR template
Conflict handling
If ${CLAUDE_PROJECT_DIR}/CLAUDE.md already exists, ask the user one of:
keep— leave existing, don't copy CLAUDE.md (default)overwrite— replace with plugin versionview-diff— show diff first
Do not overwrite contexts/_shared_kernel/ if it exists either — that
directory often has project-specific value objects.
Done criteria
After running, the user should be able to:
- Edit a file at
contexts/anything/domain/x.pycontainingimport fastapiand see the PreToolUse hook DENY it. - Run
/t3d-new-context billingand seecontexts/billing/appear with the full 4-layer skeleton.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.