@imix-js/taproot 0.2.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -18,3 +18,4 @@ export interface AdapterResult {
18
18
  }>;
19
19
  }
20
20
  export declare function generateAdapters(agents: AgentName | AgentName[] | 'all', projectRoot: string): AdapterResult[];
21
+ export declare function buildInvocationBlock(cli?: string): string;
@@ -42,14 +42,15 @@ function generateAdapter(agent, projectRoot) {
42
42
  const { config } = loadConfig(projectRoot);
43
43
  const pack = config.language ? loadLanguagePack(config.language) : null;
44
44
  const vocab = config.vocabulary ?? null;
45
+ const cli = config.cli;
45
46
  const skills = loadSkills(pack, vocab);
46
47
  switch (agent) {
47
- case 'claude': return generateClaudeAdapter(skills, projectRoot);
48
- case 'cursor': return generateCursorAdapter(skills, projectRoot);
49
- case 'copilot': return generateCopilotAdapter(skills, projectRoot);
50
- case 'windsurf': return generateWindsurfAdapter(skills, projectRoot);
51
- case 'gemini': return generateGeminiAdapter(skills, projectRoot);
52
- case 'generic': return generateGenericAdapter(skills, projectRoot);
48
+ case 'claude': return generateClaudeAdapter(skills, projectRoot, cli);
49
+ case 'cursor': return generateCursorAdapter(skills, projectRoot, cli);
50
+ case 'copilot': return generateCopilotAdapter(skills, projectRoot, cli);
51
+ case 'windsurf': return generateWindsurfAdapter(skills, projectRoot, cli);
52
+ case 'gemini': return generateGeminiAdapter(skills, projectRoot, cli);
53
+ case 'generic': return generateGenericAdapter(skills, projectRoot, cli);
53
54
  }
54
55
  }
55
56
  function loadSkills(pack, vocab) {
@@ -84,7 +85,7 @@ function extractFirstSentence(content) {
84
85
  const TREE_MODIFYING_SKILLS = new Set([
85
86
  'intent', 'behaviour', 'implement', 'refine', 'promote', 'decompose', 'trace', 'discover', 'sweep',
86
87
  ]);
87
- function generateClaudeAdapter(skills, projectRoot) {
88
+ function generateClaudeAdapter(skills, projectRoot, cli) {
88
89
  const targetDir = join(projectRoot, '.claude', 'commands');
89
90
  mkdirSync(targetDir, { recursive: true });
90
91
  const files = [];
@@ -98,11 +99,11 @@ function generateClaudeAdapter(skills, projectRoot) {
98
99
  // Configuration Quick Reference — a standalone reference file (not a skill launcher)
99
100
  const refPath = join(targetDir, 'tr-taproot.md');
100
101
  const refExisted = existsSync(refPath);
101
- writeFileSync(refPath, buildClaudeConfigRefFile(), 'utf-8');
102
+ writeFileSync(refPath, buildClaudeConfigRefFile(cli), 'utf-8');
102
103
  files.push({ path: refPath, status: refExisted ? 'updated' : 'created' });
103
104
  return { agent: 'claude', files };
104
105
  }
105
- function buildClaudeConfigRefFile() {
106
+ function buildClaudeConfigRefFile(cli) {
106
107
  return `---
107
108
  name: 'tr-taproot'
108
109
  description: 'Taproot configuration quick reference — settings.yaml options and how to apply them'
@@ -112,7 +113,7 @@ description: 'Taproot configuration quick reference — settings.yaml options an
112
113
 
113
114
  This file is a quick reference for configuring taproot. Read it when asked to change taproot settings (language, vocabulary, definition of done, etc.).
114
115
 
115
- ${buildConfigQuickRef()}
116
+ ${buildConfigQuickRef(cli)}
116
117
  `;
117
118
  }
118
119
  function buildClaudeSkillFile(skill) {
@@ -137,19 +138,19 @@ IT IS CRITICAL THAT YOU FOLLOW THESE STEPS EXACTLY:
137
138
  }
138
139
  // ─── Cursor adapter ───────────────────────────────────────────────────────────
139
140
  // .cursor/rules/taproot.md — one combined rules file
140
- function generateCursorAdapter(skills, projectRoot) {
141
+ function generateCursorAdapter(skills, projectRoot, cli) {
141
142
  const targetDir = join(projectRoot, '.cursor', 'rules');
142
143
  mkdirSync(targetDir, { recursive: true });
143
144
  const destPath = join(targetDir, 'taproot.md');
144
145
  const existed = existsSync(destPath);
145
- const content = buildCursorRulesFile(skills);
146
+ const content = buildCursorRulesFile(skills, cli);
146
147
  writeFileSync(destPath, content, 'utf-8');
147
148
  return {
148
149
  agent: 'cursor',
149
150
  files: [{ path: destPath, status: existed ? 'updated' : 'created' }],
150
151
  };
151
152
  }
152
- function buildCursorRulesFile(skills) {
153
+ function buildCursorRulesFile(skills, cli) {
153
154
  const skillIndex = skills.map(s => `- \`@taproot ${s.name}\` — ${s.description}`).join('\n');
154
155
  const skillSections = skills.map(s => `
155
156
  ---
@@ -180,19 +181,19 @@ ${skillIndex}
180
181
  - Validate with: \`taproot validate-structure\` and \`taproot validate-format\`
181
182
  - See coverage: \`taproot coverage\`
182
183
 
183
- ${buildConfigQuickRef()}
184
+ ${buildConfigQuickRef(cli)}
184
185
 
185
186
  ${skillSections}
186
187
  `.trimStart();
187
188
  }
188
189
  // ─── GitHub Copilot adapter ───────────────────────────────────────────────────
189
190
  // .github/copilot-instructions.md — appends/replaces a marked section
190
- function generateCopilotAdapter(skills, projectRoot) {
191
+ function generateCopilotAdapter(skills, projectRoot, cli) {
191
192
  const targetDir = join(projectRoot, '.github');
192
193
  mkdirSync(targetDir, { recursive: true });
193
194
  const destPath = join(targetDir, 'copilot-instructions.md');
194
195
  const existed = existsSync(destPath);
195
- const taprootSection = buildCopilotSection(skills);
196
+ const taprootSection = buildCopilotSection(skills, cli);
196
197
  let finalContent;
197
198
  if (existed) {
198
199
  const existing = readFileSync(destPath, 'utf-8');
@@ -207,7 +208,7 @@ function generateCopilotAdapter(skills, projectRoot) {
207
208
  files: [{ path: destPath, status: existed ? 'updated' : 'created' }],
208
209
  };
209
210
  }
210
- function buildCopilotSection(skills) {
211
+ function buildCopilotSection(skills, cli) {
211
212
  const skillSummary = skills.map(s => `- **\`/taproot:${s.name}\`** — ${s.description}. Full definition: \`.taproot/skills/${s.filename}\``).join('\n');
212
213
  return `${TAPROOT_START}
213
214
  ## Taproot Requirement Hierarchy
@@ -236,16 +237,16 @@ Run these to validate and inspect the hierarchy:
236
237
  - Commits that implement a behaviour: \`taproot(<intent>/<behaviour>/<impl>): <message>\`
237
238
  - Full conventions: \`taproot/CONVENTIONS.md\`
238
239
 
239
- ${buildConfigQuickRef()}
240
+ ${buildConfigQuickRef(cli)}
240
241
  ${TAPROOT_END}
241
242
  `;
242
243
  }
243
244
  // ─── Windsurf adapter ─────────────────────────────────────────────────────────
244
245
  // .windsurfrules — appends/replaces a marked section
245
- function generateWindsurfAdapter(skills, projectRoot) {
246
+ function generateWindsurfAdapter(skills, projectRoot, cli) {
246
247
  const destPath = join(projectRoot, '.windsurfrules');
247
248
  const existed = existsSync(destPath);
248
- const taprootSection = buildWindsurfSection(skills);
249
+ const taprootSection = buildWindsurfSection(skills, cli);
249
250
  let finalContent;
250
251
  if (existed) {
251
252
  const existing = readFileSync(destPath, 'utf-8');
@@ -260,7 +261,7 @@ function generateWindsurfAdapter(skills, projectRoot) {
260
261
  files: [{ path: destPath, status: existed ? 'updated' : 'created' }],
261
262
  };
262
263
  }
263
- function buildWindsurfSection(skills) {
264
+ function buildWindsurfSection(skills, cli) {
264
265
  const skillIndex = skills.map(s => `- \`/taproot:${s.name}\` — ${s.description}`).join('\n');
265
266
  const skillSections = skills.map(s => `
266
267
  ### /taproot:${s.name}
@@ -276,7 +277,7 @@ This project uses Taproot to maintain traceability from business intent to code.
276
277
 
277
278
  ${skillIndex}
278
279
 
279
- ${buildConfigQuickRef()}
280
+ ${buildConfigQuickRef(cli)}
280
281
 
281
282
  ## Skill Definitions
282
283
 
@@ -287,7 +288,7 @@ ${TAPROOT_END}
287
288
  // ─── Gemini CLI adapter ───────────────────────────────────────────────────────
288
289
  // One .toml file per skill in .gemini/commands/, prefixed with tr-
289
290
  // Invoked as /tr-<name> in Gemini CLI
290
- function generateGeminiAdapter(skills, projectRoot) {
291
+ function generateGeminiAdapter(skills, projectRoot, cli) {
291
292
  const targetDir = join(projectRoot, '.gemini', 'commands');
292
293
  mkdirSync(targetDir, { recursive: true });
293
294
  const files = [];
@@ -301,11 +302,12 @@ function generateGeminiAdapter(skills, projectRoot) {
301
302
  // Configuration Quick Reference reference file
302
303
  const refPath = join(targetDir, 'tr-taproot.toml');
303
304
  const refExisted = existsSync(refPath);
304
- writeFileSync(refPath, buildGeminiConfigRefFile(), 'utf-8');
305
+ writeFileSync(refPath, buildGeminiConfigRefFile(cli), 'utf-8');
305
306
  files.push({ path: refPath, status: refExisted ? 'updated' : 'created' });
306
307
  return { agent: 'gemini', files };
307
308
  }
308
- function buildGeminiConfigRefFile() {
309
+ function buildGeminiConfigRefFile(cli) {
310
+ const prefix = cli ?? DEFAULT_CLI_PREFIX;
309
311
  return `description = "Taproot configuration quick reference — settings.yaml options and how to apply them"
310
312
 
311
313
  prompt = """
@@ -321,6 +323,11 @@ Options:
321
323
  - language: Language pack for section headers and keywords (e.g. de, fr, es). Default: English.
322
324
  - vocabulary: Domain-specific term substitutions in skill output (e.g. feature: story).
323
325
  - definitionOfDone: Shell commands run as gates before implementation commits.
326
+ - cli: CLI invocation prefix. Default: ${DEFAULT_CLI_PREFIX}. Override: cli: taproot (global install).
327
+
328
+ <!-- taproot:cli-invocation: ${prefix} -->
329
+ When running taproot commands in this project, replace bare \`taproot\` with: ${prefix}
330
+ Example: ${prefix} dod taproot/some-intent/some-behaviour/impl-name/impl.md
324
331
 
325
332
  See .taproot/CONFIGURATION.md for the full reference and examples.
326
333
  """
@@ -344,10 +351,10 @@ IT IS CRITICAL THAT YOU FOLLOW THESE STEPS EXACTLY:
344
351
  }
345
352
  // ─── Generic adapter ──────────────────────────────────────────────────────────
346
353
  // AGENTS.md at project root — readable by any AI agent on startup
347
- function generateGenericAdapter(skills, projectRoot) {
354
+ function generateGenericAdapter(skills, projectRoot, cli) {
348
355
  const destPath = join(projectRoot, 'AGENTS.md');
349
356
  const existed = existsSync(destPath);
350
- const taprootSection = buildGenericAgentsFile(skills);
357
+ const taprootSection = buildGenericAgentsFile(skills, cli);
351
358
  let finalContent;
352
359
  if (existed) {
353
360
  const existing = readFileSync(destPath, 'utf-8');
@@ -362,7 +369,7 @@ function generateGenericAdapter(skills, projectRoot) {
362
369
  files: [{ path: destPath, status: existed ? 'updated' : 'created' }],
363
370
  };
364
371
  }
365
- function buildGenericAgentsFile(skills) {
372
+ function buildGenericAgentsFile(skills, cli) {
366
373
  const skillIndex = skills.map(s => `- **\`/taproot:${s.name}\`** — ${s.description}`).join('\n');
367
374
  const skillSections = skills.map(s => `
368
375
  ---
@@ -404,7 +411,7 @@ taproot sync-check # detect stale specs
404
411
  taproot link-commits # auto-link git commits to impl.md
405
412
  \`\`\`
406
413
 
407
- ${buildConfigQuickRef()}
414
+ ${buildConfigQuickRef(cli)}
408
415
 
409
416
  ## Commit Convention
410
417
 
@@ -419,8 +426,18 @@ ${skillSections}
419
426
  ${TAPROOT_END}
420
427
  `;
421
428
  }
429
+ // ─── CLI Invocation Block ─────────────────────────────────────────────────────
430
+ const DEFAULT_CLI_PREFIX = 'npx @imix-js/taproot';
431
+ const CLI_INVOCATION_MARKER_PREFIX = '<!-- taproot:cli-invocation:';
432
+ export function buildInvocationBlock(cli) {
433
+ const prefix = cli ?? DEFAULT_CLI_PREFIX;
434
+ return `${CLI_INVOCATION_MARKER_PREFIX} ${prefix} -->
435
+ When running taproot commands in this project, replace bare \`taproot\` with: \`${prefix}\`
436
+ Example: \`${prefix} dod taproot/some-intent/some-behaviour/impl-name/impl.md\``;
437
+ }
422
438
  // ─── Configuration Quick Reference ───────────────────────────────────────────
423
- function buildConfigQuickRef() {
439
+ function buildConfigQuickRef(cli) {
440
+ const prefix = cli ?? DEFAULT_CLI_PREFIX;
424
441
  return `## Configuration Quick Reference
425
442
 
426
443
  Edit \`.taproot/settings.yaml\` to configure taproot. Run \`taproot update\` after changes.
@@ -430,8 +447,11 @@ Edit \`.taproot/settings.yaml\` to configure taproot. Run \`taproot update\` aft
430
447
  | \`language\` | string | Language pack for section headers and keywords (e.g. \`de\`, \`fr\`, \`es\`). Default: English. |
431
448
  | \`vocabulary\` | map | Domain-specific term substitutions in skill output (e.g. \`feature: story\`). |
432
449
  | \`definitionOfDone\` | list | Shell commands run as gates before implementation commits. |
450
+ | \`cli\` | string | CLI invocation prefix. Default: \`${DEFAULT_CLI_PREFIX}\`. Override: \`cli: taproot\` (global install). |
451
+
452
+ See \`.taproot/CONFIGURATION.md\` for the full reference and examples.
433
453
 
434
- See \`.taproot/CONFIGURATION.md\` for the full reference and examples.`;
454
+ ${buildInvocationBlock(prefix)}`;
435
455
  }
436
456
  // ─── Helpers ──────────────────────────────────────────────────────────────────
437
457
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,10 @@
1
1
  import type { Command } from 'commander';
2
2
  import { type LanguagePack } from '../core/language.js';
3
3
  import { type AgentName } from '../adapters/index.js';
4
+ export declare const AVAILABLE_TEMPLATES: readonly ["webapp", "book-authoring", "cli-tool"];
5
+ export type TemplateName = typeof AVAILABLE_TEMPLATES[number];
4
6
  export declare const SKILL_FILES: string[];
7
+ export declare function applyTemplate(templateName: string, cwd: string, force?: boolean): string[];
5
8
  export declare function registerInit(program: Command): void;
6
9
  export declare function runInit(options: {
7
10
  cwd?: string;
@@ -1,4 +1,4 @@
1
- import { existsSync, mkdirSync, writeFileSync, readdirSync, readFileSync } from 'fs';
1
+ import { existsSync, mkdirSync, writeFileSync, readdirSync, readFileSync, cpSync } from 'fs';
2
2
  import { resolve, join, dirname } from 'path';
3
3
  import { fileURLToPath } from 'url';
4
4
  import yaml from 'js-yaml';
@@ -8,11 +8,15 @@ import { intentTemplate, behaviourTemplate, implTemplate } from '../templates/in
8
8
  import { generateAdapters, ALL_AGENTS, AGENT_TIERS, getTierLabel } from '../adapters/index.js';
9
9
  import checkbox from '@inquirer/checkbox';
10
10
  import confirm from '@inquirer/confirm';
11
+ import select from '@inquirer/select';
11
12
  const __dirname = dirname(fileURLToPath(import.meta.url));
12
13
  // Bundled skills directory — two levels up from src/commands/ → package root → skills/
13
14
  const BUNDLED_SKILLS_DIR = resolve(__dirname, '..', '..', 'skills');
14
15
  // Bundled docs directory — two levels up from src/commands/ → package root → docs/
15
16
  const BUNDLED_DOCS_DIR = resolve(__dirname, '..', '..', 'docs');
17
+ // Bundled examples directory — two levels up from src/commands/ → package root → examples/
18
+ const BUNDLED_EXAMPLES_DIR = resolve(__dirname, '..', '..', 'examples');
19
+ export const AVAILABLE_TEMPLATES = ['webapp', 'book-authoring', 'cli-tool'];
16
20
  export const SKILL_FILES = [
17
21
  'analyse-change.md',
18
22
  'review.md',
@@ -34,7 +38,38 @@ export const SKILL_FILES = [
34
38
  'sweep.md',
35
39
  'commit.md',
36
40
  'bug.md',
41
+ 'browse.md',
42
+ 'backlog.md',
37
43
  ];
44
+ export function applyTemplate(templateName, cwd, force = false) {
45
+ const messages = [];
46
+ if (!AVAILABLE_TEMPLATES.includes(templateName)) {
47
+ throw new Error(`Unknown template: '${templateName}'. Available: ${AVAILABLE_TEMPLATES.join(', ')}`);
48
+ }
49
+ const templateDir = join(BUNDLED_EXAMPLES_DIR, templateName);
50
+ if (!existsSync(templateDir)) {
51
+ throw new Error(`Template directory not found: ${templateDir}`);
52
+ }
53
+ const srcTaprootDir = join(templateDir, 'taproot');
54
+ const destTaprootDir = join(cwd, 'taproot');
55
+ if (existsSync(srcTaprootDir)) {
56
+ cpSync(srcTaprootDir, destTaprootDir, { recursive: true });
57
+ messages.push(`created taproot/ (from ${templateName} template)`);
58
+ }
59
+ const srcSettings = join(templateDir, '.taproot', 'settings.yaml');
60
+ const destSettings = join(cwd, '.taproot', 'settings.yaml');
61
+ if (existsSync(srcSettings)) {
62
+ if (!existsSync(destSettings) || force) {
63
+ mkdirSync(join(cwd, '.taproot'), { recursive: true });
64
+ cpSync(srcSettings, destSettings);
65
+ messages.push(`created .taproot/settings.yaml (from ${templateName} template)`);
66
+ }
67
+ else {
68
+ messages.push(`exists .taproot/settings.yaml (kept — template settings not applied)`);
69
+ }
70
+ }
71
+ return messages;
72
+ }
38
73
  export function registerInit(program) {
39
74
  program
40
75
  .command('init')
@@ -43,8 +78,37 @@ export function registerInit(program) {
43
78
  .option('--with-ci <provider>', 'Generate CI workflow (github|gitlab)')
44
79
  .option('--with-skills', 'Install canonical skill definitions into taproot/skills/')
45
80
  .option('--agent <name>', `Generate agent adapter (${[...ALL_AGENTS, 'all'].join('|')})`)
81
+ .option('--template <type>', `Start from a template (${AVAILABLE_TEMPLATES.join('|')})`)
82
+ .option('--force', 'Overwrite existing files when applying a template')
46
83
  .option('--path <path>', 'Directory to initialize in', process.cwd())
47
84
  .action(async (options) => {
85
+ // Template prompt — only when taproot/ doesn't exist yet (fresh init)
86
+ let template = options.template;
87
+ if (!template) {
88
+ const taprootDir = resolve(options.path, DEFAULT_CONFIG.root);
89
+ if (!existsSync(taprootDir)) {
90
+ const wantsTemplate = await confirm({
91
+ message: 'Start from a template?',
92
+ default: false,
93
+ });
94
+ if (wantsTemplate) {
95
+ template = await select({
96
+ message: 'Choose a template:',
97
+ choices: [
98
+ { name: 'webapp — User auth, profiles, common web app patterns', value: 'webapp' },
99
+ { name: 'book-authoring — Manuscript, chapters, editorial review', value: 'book-authoring' },
100
+ { name: 'cli-tool — Command dispatch, help output, configuration', value: 'cli-tool' },
101
+ ],
102
+ });
103
+ }
104
+ }
105
+ }
106
+ if (template) {
107
+ const templateMessages = applyTemplate(template, options.path, options.force ?? false);
108
+ for (const msg of templateMessages) {
109
+ process.stdout.write(msg + '\n');
110
+ }
111
+ }
48
112
  let agent = options.agent;
49
113
  if (!agent) {
50
114
  const AGENT_BASE_LABELS = {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -89,6 +89,24 @@ definitionOfReady:
89
89
 
90
90
  ---
91
91
 
92
+ ## cli
93
+
94
+ CLI invocation prefix. Controls which command agents use when executing taproot CLI steps (e.g. in skill files that reference \`taproot dod\`, \`taproot link-commits\`, etc.).
95
+
96
+ \`\`\`yaml
97
+ cli: taproot
98
+ \`\`\`
99
+
100
+ **Default:** \`npx @imix-js/taproot\` (safe in any environment — works whether or not taproot is globally installed)
101
+
102
+ **Common overrides:**
103
+ - \`cli: taproot\` — use if taproot is globally installed (\`npm install -g @imix-js/taproot\`)
104
+ - \`cli: ./node_modules/.bin/taproot\` — use if taproot is a project \`devDependency\`
105
+
106
+ **Requires \`taproot update\`:** yes — the invocation block in agent adapter files is regenerated.
107
+
108
+ ---
109
+
92
110
  ## Full example
93
111
 
94
112
  \`\`\`yaml
@@ -1 +1 @@
1
- {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/core/configuration.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,UAAU,oBAAoB;IAClC,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE9C,OAAO;;;;;;;;;;;;;;;;;wBAiBe,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmF5B,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/core/configuration.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,UAAU,oBAAoB;IAClC,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE9C,OAAO;;;;;;;;;;;;;;;;;wBAiBe,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqG5B,CAAC;AACF,CAAC"}
@@ -56,6 +56,14 @@ function resolveCondition(entry) {
56
56
  correction: question,
57
57
  };
58
58
  }
59
+ if (typeof entry === 'object' && 'require-discussion-log' in entry) {
60
+ return {
61
+ name: 'require-discussion-log',
62
+ agentCheck: true,
63
+ description: 'discussion.md required at declaration commit time (enforced by DoR hook, not DoD)',
64
+ correction: 'This condition is enforced at declaration commit time, not DoD time.',
65
+ };
66
+ }
59
67
  if (typeof entry === 'string') {
60
68
  const builtin = BUILTINS[entry];
61
69
  if (!builtin) {
@@ -1 +1 @@
1
- {"version":3,"file":"dod-runner.js","sourceRoot":"","sources":["../../src/core/dod-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dod-runner.js","sourceRoot":"","sources":["../../src/core/dod-runner.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { existsSync, readFileSync } from 'fs';
2
- import { join, dirname, resolve } from 'path';
2
+ import { join, dirname, resolve, relative } from 'path';
3
3
  import { spawnSync } from 'child_process';
4
4
  import { parseMarkdown } from './markdown-parser.js';
5
5
  import { loadConfig } from './config.js';
@@ -131,6 +131,17 @@ export function runDorChecks(implMdPath, cwd) {
131
131
  correction: `Resolve this agent check and record it in impl.md under ## DoR Resolutions.`,
132
132
  });
133
133
  }
134
+ else if (typeof entry === 'object' && 'require-discussion-log' in entry && entry['require-discussion-log'] === true) {
135
+ const implDir = dirname(resolve(cwd, implMdPath));
136
+ const discussionPath = join(implDir, 'discussion.md');
137
+ const exists = existsSync(discussionPath);
138
+ results.push({
139
+ name: 'require-discussion-log',
140
+ passed: exists,
141
+ output: exists ? '' : `discussion.md missing in ${relative(cwd, implDir)}/`,
142
+ correction: 'Record the session rationale before declaring this implementation. See skills/implement.md step 5b.',
143
+ });
144
+ }
134
145
  else if (typeof entry === 'string') {
135
146
  const r = spawnSync(entry, { shell: true, cwd, encoding: 'utf-8', timeout: 30_000 });
136
147
  results.push({
@@ -1 +1 @@
1
- {"version":3,"file":"dor-runner.js","sourceRoot":"","sources":["../../src/core/dor-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dor-runner.js","sourceRoot":"","sources":["../../src/core/dor-runner.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,8 @@ export type DodConditionEntry = string | {
40
40
  'check-if-affected-by': string;
41
41
  } | {
42
42
  'check': string;
43
+ } | {
44
+ 'require-discussion-log': boolean;
43
45
  };
44
46
  export interface TaprootConfig {
45
47
  version: number;
@@ -65,4 +67,5 @@ export interface TaprootConfig {
65
67
  };
66
68
  definitionOfDone?: DodConditionEntry[];
67
69
  definitionOfReady?: DodConditionEntry[];
70
+ cli?: string;
68
71
  }
package/docs/cli.md CHANGED
@@ -9,11 +9,13 @@ The Taproot CLI handles setup, validation, and reporting. It does not generate c
9
9
  ### `taproot init`
10
10
 
11
11
  ```bash
12
- taproot init [--with-hooks] [--with-ci github|gitlab] [--with-skills] [--agent claude|cursor|copilot|windsurf|generic|all]
12
+ taproot init [--with-hooks] [--with-ci github|gitlab] [--with-skills] [--agent claude|cursor|copilot|windsurf|generic|all] [--template webapp|book-authoring|cli-tool] [--force]
13
13
  ```
14
14
 
15
15
  Initializes Taproot in the current directory. Creates `taproot/` and `.taproot/settings.yaml` if they don't exist, then installs whichever integrations you request.
16
16
 
17
+ When run on an empty project (no `taproot/` directory yet), the command prompts: **"Start from a template? [y/N]"** — entering `y` presents a list of starter hierarchies to choose from.
18
+
17
19
  | Option | Effect |
18
20
  |--------|--------|
19
21
  | `--with-hooks` | Installs `.git/hooks/pre-commit` running `taproot commithook` |
@@ -21,6 +23,8 @@ Initializes Taproot in the current directory. Creates `taproot/` and `.taproot/s
21
23
  | `--with-ci gitlab` | Generates a `taproot-validate` job in `.gitlab-ci.yml` |
22
24
  | `--with-skills` | Copies skill definitions to `.taproot/skills/`. Implied by `--agent claude` — only needed if you want skills without a Claude adapter. |
23
25
  | `--agent <name>` | Generates agent adapter files (see [Agent Setup](agents.md)) |
26
+ | `--template <type>` | Skip the prompt and apply a starter template directly (`webapp`, `book-authoring`, or `cli-tool`). Copies the starter's `taproot/` hierarchy and `.taproot/settings.yaml` into the project. |
27
+ | `--force` | When used with `--template`, overwrites an existing `.taproot/settings.yaml` with the template's version. |
24
28
 
25
29
  Running `taproot init` again on an existing project is safe — it skips files that already exist and reports `exists` for each.
26
30
 
@@ -139,6 +139,19 @@ When a `check:` condition is present in `definitionOfReady`, the agent reasons a
139
139
  - condition: check: is this spec complete enough? | note: yes, all flows are specified | resolved: 2026-03-20T10:00:00.000Z
140
140
  ```
141
141
 
142
+ ### `require-discussion-log`
143
+
144
+ Require a `discussion.md` alongside every `impl.md` at declaration commit time. Off by default — enable for teams that want to enforce the record-decision-rationale habit:
145
+
146
+ ```yaml
147
+ definitionOfReady:
148
+ - require-discussion-log: true
149
+ ```
150
+
151
+ When enabled, the pre-commit hook checks whether `discussion.md` exists in the impl folder before accepting the declaration commit. If missing, the commit is rejected with the expected file path. The check is existence-only — content quality is not verified by the hook.
152
+
153
+ See `taproot/requirements-compliance/record-decision-rationale/` for what `discussion.md` should contain and how the agent writes it.
154
+
142
155
  ### When DoR runs
143
156
 
144
157
  DoR runs once: when the declaration commit is made (committing `impl.md` alone, before any source code). It is enforced by the pre-commit hook's declaration tier.
@@ -240,6 +253,26 @@ Applied as a second substitution pass after the language pack (if any). Re-appli
240
253
 
241
254
  ---
242
255
 
256
+ ## CLI invocation
257
+
258
+ ### `cli`
259
+
260
+ Controls which command agents use when executing taproot CLI steps (e.g. `taproot dod`, `taproot link-commits`). The value is injected into agent adapter files as a machine-readable block — agents read it at session start and substitute it wherever a skill step says `taproot <subcommand>`.
261
+
262
+ ```yaml
263
+ cli: taproot
264
+ ```
265
+
266
+ **Default:** `npx @imix-js/taproot` — works in any environment, whether or not taproot is globally installed.
267
+
268
+ **Common overrides:**
269
+ - `cli: taproot` — globally installed (`npm install -g @imix-js/taproot`)
270
+ - `cli: ./node_modules/.bin/taproot` — local `devDependency`
271
+
272
+ **Requires `taproot update`:** yes — the invocation block in agent adapter files is regenerated.
273
+
274
+ ---
275
+
243
276
  ## Validation settings
244
277
 
245
278
  ### `require_dates`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@imix-js/taproot",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "AI-driven specs, enforced at commit time. Code without traceability doesn't merge.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -39,6 +39,7 @@
39
39
  "dependencies": {
40
40
  "@inquirer/checkbox": "^5.1.2",
41
41
  "@inquirer/confirm": "^6.0.10",
42
+ "@inquirer/select": "^5.1.2",
42
43
  "chalk": "^5.6.2",
43
44
  "commander": "^14.0.3",
44
45
  "js-yaml": "^4.1.1"
@@ -0,0 +1,72 @@
1
+ # Skill: backlog
2
+
3
+ ## Description
4
+
5
+ Capture ideas, findings, and deferred work mid-session with a single command — without interrupting current flow. Called with an argument: captures instantly, no prompts. Called with no argument: opens triage — review each item and discard, keep, or promote to `/tr-ineed`.
6
+
7
+ ## Inputs
8
+
9
+ - `idea` (optional): One-liner text to capture. If omitted, triage mode opens.
10
+
11
+ ## Steps
12
+
13
+ ### Capture mode (argument present)
14
+
15
+ 1. Detect that an argument was provided.
16
+ 2. If the argument is blank or whitespace only: warn *"Nothing to capture — provide a description."* and stop.
17
+ 3. Create `.taproot/backlog.md` if absent. Append the item:
18
+ `- [YYYY-MM-DD] <idea>` using today's date.
19
+ 4. Confirm in one line: *"✓ Captured: <idea>"*
20
+ No follow-up response required from the developer — the session continues.
21
+
22
+ ### Triage mode (no argument)
23
+
24
+ 1. Read `.taproot/backlog.md`.
25
+ - If absent or contains no standard items: report *"Backlog is empty. Use `/tr-backlog <idea>` to capture something."* and stop.
26
+
27
+ 2. Present all standard items as a numbered list (FIFO order, oldest first):
28
+ ```
29
+ Backlog — N items
30
+ 1. [YYYY-MM-DD] item text
31
+ 2. [YYYY-MM-DD] item text
32
+ ...
33
+ ```
34
+ Non-standard lines (not matching `- [YYYY-MM-DD] <text>`) are silently skipped in the display but preserved in the file.
35
+
36
+ 3. Offer: `D <n>` discard · `P <n>` promote · `A <n>` analyze · `done` finish
37
+
38
+ 4. Accept commands one at a time:
39
+ - **`D <n>`** — remove item n from `.taproot/backlog.md`. Confirm: *"✓ Discarded #n"*. Redisplay the updated numbered list.
40
+ - **`P <n>`** — remove item n from `.taproot/backlog.md`. Invoke `/tr-ineed` with the item text. On return, redisplay the updated numbered list.
41
+ - **`A <n>`** — display the full text of item n and ask: *"[P] Promote · [K] Keep · [D] Discard"*. After the choice, redisplay the updated numbered list.
42
+ - **`done`** — end triage. Items not acted on are kept implicitly.
43
+
44
+ 5. After `done`: *"Triage complete — X discarded, Y promoted, Z kept."*
45
+ If any non-standard lines were skipped: *"Skipped N non-standard line(s) — they remain in `.taproot/backlog.md`."*
46
+
47
+ If the developer exits without `done`: unprocessed items remain unchanged. If any actions were taken, show the summary; otherwise continue naturally.
48
+
49
+ 6. Present next steps (triage mode only — skip for capture mode):
50
+
51
+ > 💡 If this session is getting long, consider running `/compact` or starting a fresh context before the next task.
52
+
53
+ **What's next?**
54
+ [A] `/tr-ineed <idea>` — route a kept item into the hierarchy now
55
+ [B] `/tr-status` — see current project health
56
+
57
+ ## Output
58
+
59
+ **Capture:** item written to `.taproot/backlog.md`, one-line confirmation.
60
+ **Triage:** backlog updated in place; promoted items handed to `/tr-ineed`; completion summary shown.
61
+
62
+ ## CLI Dependencies
63
+
64
+ None.
65
+
66
+ ## Notes
67
+
68
+ - Capture is instant — no confirmation, no required fields, no prompts beyond the one-line acknowledgement.
69
+ - Item format: `- [YYYY-MM-DD] <text>`. Items are presented FIFO (oldest first) during triage.
70
+ - Items promoted via `[P]` are removed from the backlog before `/tr-ineed` is invoked. If the developer abandons the `/tr-ineed` discovery, re-capture the item with `/tr-backlog <idea>`.
71
+ - This is a scratchpad, not a project management tool — no priority, labels, or status tracking.
72
+ - Storage is `.taproot/backlog.md` — a committed markdown file inside the taproot config directory, versioned with the project.
@@ -82,6 +82,8 @@ Define a UseCase (observable system behaviour) under an intent or another behavi
82
82
 
83
83
  9. Create the directory `<parent>/<slug>/` and write `usecase.md`.
84
84
 
85
+ 9b. **Optionally write `discussion.md`** — if the session involved meaningful discovery dialogue (scope decisions, alternate flows surfaced, pivotal questions that changed the spec), draft a brief `discussion.md` in the behaviour folder alongside `usecase.md`. Use the same four-section template as `tr-implement` (Pivotal Questions, Alternatives Considered, Decision, Open Questions) but set `Skill: tr-behaviour`. Skip if the spec authoring was straightforward with no significant exploration.
86
+
85
87
  10. Update the parent document's `## Behaviours <!-- taproot-managed -->` section:
86
88
  - Read the parent `intent.md` (or parent `usecase.md` for sub-behaviours).
87
89
  - If the `## Behaviours` section does not exist, insert it immediately before `## Status` (or append at end of file if `## Status` is absent), with the heading `## Behaviours <!-- taproot-managed -->`.
@@ -0,0 +1,84 @@
1
+ # Skill: browse
2
+
3
+ ## Description
4
+
5
+ Read a taproot hierarchy document section by section in the terminal — without opening an external editor. Presents each section one at a time, offers inline editing via `[M] Modify`, and lists what's below at the end. Distinct from `/tr-review` (which is an agent-driven critique); browse is the developer reading the spec themselves.
6
+
7
+ ## Inputs
8
+
9
+ - `path` (required): Path to a hierarchy document (`intent.md`, `usecase.md`, or `impl.md`) or the folder containing one.
10
+
11
+ ## Steps
12
+
13
+ 1. **Resolve the target document.**
14
+ - If `path` points directly to a file (`intent.md`, `usecase.md`, or `impl.md`): use it as-is.
15
+ - If `path` points to a folder: look for `intent.md`, then `usecase.md`, then `impl.md` at that exact folder level (not in subfolders). Child impl folders are children to list later — they are not the target document.
16
+ - If no hierarchy document is found: report *"No intent.md, usecase.md, or impl.md found at `<path>`"* and stop.
17
+ - If the path does not exist: report *"No file found at `<path>` — check the path and try again"* and stop.
18
+
19
+ 2. **Check for discussion.md.** Look for `discussion.md` in the same folder as the resolved document.
20
+ - If present and has substantive content (not just template headings): announce *"📝 Discussion notes found — I'll include context from them where relevant"*
21
+ - If absent or skeleton-only: skip silently — no announcement, no placeholder.
22
+
23
+ 3. **Determine the document type** (`intent.md`, `usecase.md`, or `impl.md`) and identify the section order by reading the document.
24
+
25
+ 4. **Present sections one at a time.** For each section:
26
+
27
+ a. Display the section heading and body, formatted to fit a terminal screen.
28
+
29
+ b. **Discussion context** — if `discussion.md` is present and substantive, insert a `> How we got here:` block at the following anchor (only once per browse session):
30
+ - `usecase.md`: before the `## Main Flow` section
31
+ - `impl.md`: alongside `## Design Decisions`
32
+ - `intent.md`: alongside `## Goal`
33
+
34
+ c. **Long section** — if the section body exceeds approximately 20 lines:
35
+ - Present the first ~20 lines, then offer: `[C] See more | [D] Done with this section`
36
+ - `[C]`: present the next ~20 lines; repeat until exhausted
37
+ - `[D]`: treat the section as complete and continue to step 4d
38
+
39
+ d. After displaying the section (or completing pagination), offer:
40
+
41
+ > `[C] Continue [M] Modify [S] Skip to children`
42
+
43
+ 5. **Handle developer choice:**
44
+
45
+ **[C] Continue** — present the next section (repeat step 4). When all sections are shown, proceed to step 6.
46
+
47
+ **[M] Modify** — ask: *"What would you like to change in this section?"*
48
+ - If the section is `## Commits` or `## DoD Resolutions` in an `impl.md`: first warn *"⚠ This section is managed by `taproot link-commits` / `taproot dod` — manual edits may be overwritten on the next run. Continue?"* and wait for confirmation before proceeding.
49
+ - Developer states the change. Apply it to the file and show the updated section.
50
+ - If the developer says "never mind" or equivalent: confirm *"No changes — continuing"* and return to step 4d.
51
+ - After applying the change, return to step 4d with the updated section displayed.
52
+
53
+ **[S] Skip to children** — skip remaining sections and proceed directly to step 6.
54
+
55
+ 6. **Show what's below:**
56
+ - **intent.md**: list child behaviours — name and relative path to each `usecase.md`
57
+ - **usecase.md**: list implementations — name and relative path to each `impl.md`
58
+ - **impl.md**: *"No children — this is a leaf implementation."*
59
+
60
+ To go deeper into any child, the developer calls `/tr-browse <child-path>`.
61
+
62
+ 7. Present next steps:
63
+
64
+ > 💡 If this session is getting long, consider running `/compact` or starting a fresh context before the next task.
65
+
66
+ **What's next?**
67
+ [A] `/tr-browse <child-path>` — go deeper into one of the listed children
68
+ [B] `/tr-implement <path>/` — start building (if browsing a behaviour spec)
69
+ [C] `/tr-review <path>` — get an agent critique of the spec
70
+
71
+ ## Output
72
+
73
+ The developer has read the document section by section in the terminal. Any `[M]` edits are saved to the file. The developer knows what's below without opening any additional files.
74
+
75
+ ## CLI Dependencies
76
+
77
+ None
78
+
79
+ ## Notes
80
+
81
+ - Browse is read-and-light-edit, not a stress-test. Resist the urge to comment on spec quality — the developer is reading, not asking for a critique. Use `/tr-review` for that.
82
+ - The ~20-line pagination threshold is a guideline. Use judgment — a section with 22 short lines may be fine to show in full; a section with 15 very long lines may need pagination.
83
+ - The `> How we got here:` block is shown once per browse session at the designated anchor, not repeated for every section.
84
+ - After [M] edits, the file on disk is updated but no git staging is performed — the developer commits when ready.
package/skills/guide.md CHANGED
@@ -56,6 +56,8 @@ ineed → intent → behaviour → implement → trace → status
56
56
  | `/tr-status` | Generate a health dashboard for the hierarchy |
57
57
  | `/tr-review` | Stress-test a spec with adversarial questions |
58
58
  | `/tr-review-all` | Run review across an entire subtree |
59
+ | `/tr-browse` | Read a hierarchy document section by section in the terminal — with inline editing via `[M] Modify` |
60
+ | `/tr-backlog` | Capture an idea or finding instantly mid-session; called with no args opens triage to discard, keep, or promote items |
59
61
  | `/tr-grill-me` | Interview the user relentlessly to sharpen a plan or design |
60
62
  | `/tr-research` | Research a domain or technical subject before speccing — local resources, web search, expert grilling |
61
63
  | `/tr-sweep` | Apply a uniform task to a filtered set of hierarchy files — enumerate, confirm, then call `taproot apply` |
@@ -77,7 +79,7 @@ ineed → intent → behaviour → implement → trace → status
77
79
  | `taproot dod [impl-path]` | Run Definition of Done checks; mark impl complete if all pass |
78
80
  | `taproot commithook` | Pre-commit gate: classifies staged files and runs DoR or DoD as appropriate |
79
81
  | `taproot update` | Refresh agent adapters, skills, and cross-link sections across the hierarchy |
80
- | `taproot init` | Initialize Taproot in a project |
82
+ | `taproot init [--template webapp\|book-authoring\|cli-tool]` | Initialize Taproot in a project; optionally copy a starter hierarchy |
81
83
 
82
84
  ### Rule of Thumb
83
85
 
@@ -92,7 +94,7 @@ ineed → intent → behaviour → implement → trace → status
92
94
 
93
95
  - **If `taproot/OVERVIEW.md` exists**: "Your project has an overview at `taproot/OVERVIEW.md` — read it for a summary of current intents and their status."
94
96
  - **If intents exist but no OVERVIEW.md**: "Your project has existing intents. Run `taproot overview` to generate a summary, or use `/tr-status` for a full health report."
95
- - **If no intents exist yet** (empty or missing `taproot/`): "This looks like a new project. A good starting point: describe your problem to `/tr-ineed`, or jump straight to `/tr-intent` if you already know what you want to build."
97
+ - **If no intents exist yet** (empty or missing `taproot/`): "This looks like a new project. You can start from a template (`taproot init --template webapp|book-authoring|cli-tool`) for a pre-populated hierarchy, or describe your problem to `/tr-ineed`, or jump straight to `/tr-intent` if you already know what you want to build."
96
98
 
97
99
  4. Close with context-aware guidance:
98
100
 
@@ -56,7 +56,34 @@ Implement a behaviour spec: write the code, write the tests, create the `impl.md
56
56
  - If the behaviour `**State:**` is `specified`, advance it to `implemented` and update `**Last reviewed:**` to today.
57
57
  - Write the updated `usecase.md`. Stage it together with `impl.md` for the declaration commit.
58
58
 
59
- 6. **Declaration commit**commit `impl.md` and any `usecase.md` link-section update together (no source files):
59
+ 5b. **Write `discussion.md`**draft a `discussion.md` in the implementation folder capturing the deliberation behind the design decisions. This complements `impl.md` (which records conclusions) with the reasoning process:
60
+
61
+ ```markdown
62
+ # Discussion: <title matching impl.md>
63
+
64
+ ## Session
65
+ - **Date:** YYYY-MM-DD
66
+ - **Skill:** tr-implement
67
+
68
+ ## Pivotal Questions
69
+ <The 1–3 questions or exchanges that most shaped the design>
70
+
71
+ ## Alternatives Considered
72
+ - **<Option A>** — rejected because <reason>
73
+ - **<Option B>** — rejected because <reason>
74
+
75
+ ## Decision
76
+ <One paragraph: the chosen approach and why — the deliberation behind impl.md's Design Decisions>
77
+
78
+ ## Open Questions
79
+ - <Unresolved items deferred to a future session, or "None">
80
+ ```
81
+
82
+ **When to skip:** If the session involved only trivial edits (typo fix, formatting, minor wording change) with no design choices or alternatives explored, omit `discussion.md`. A file with no substantive content is worse than no file.
83
+
84
+ Stage `discussion.md` alongside `impl.md` in the declaration commit.
85
+
86
+ 6. **Declaration commit** — commit `impl.md`, `discussion.md` (if written), and any `usecase.md` link-section update together (no source files):
60
87
 
61
88
  Before committing:
62
89
  - Read `.taproot/settings.yaml` and note the `definitionOfReady` conditions — these are the checks the hook will run. If the file has no `definitionOfReady` section, only baseline DoR checks run.