dino-spec 13.6.1 → 14.0.1

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.
Files changed (203) hide show
  1. package/README.md +82 -5
  2. package/dist/commands/hud.d.ts +1 -8
  3. package/dist/commands/hud.d.ts.map +1 -1
  4. package/dist/commands/hud.js +4 -18
  5. package/dist/commands/hud.js.map +1 -1
  6. package/dist/core/config/feature-flags.d.ts +25 -1
  7. package/dist/core/config/feature-flags.d.ts.map +1 -1
  8. package/dist/core/config/feature-flags.js +7 -1
  9. package/dist/core/config/feature-flags.js.map +1 -1
  10. package/dist/core/context/__tests__/budget-thresholds.test.d.ts +5 -0
  11. package/dist/core/context/__tests__/budget-thresholds.test.d.ts.map +1 -0
  12. package/dist/core/context/__tests__/budget-thresholds.test.js +223 -0
  13. package/dist/core/context/__tests__/budget-thresholds.test.js.map +1 -0
  14. package/dist/core/context/__tests__/compaction-engine.test.d.ts +5 -0
  15. package/dist/core/context/__tests__/compaction-engine.test.d.ts.map +1 -0
  16. package/dist/core/context/__tests__/compaction-engine.test.js +474 -0
  17. package/dist/core/context/__tests__/compaction-engine.test.js.map +1 -0
  18. package/dist/core/context/__tests__/output-persistence.test.d.ts +5 -0
  19. package/dist/core/context/__tests__/output-persistence.test.d.ts.map +1 -0
  20. package/dist/core/context/__tests__/output-persistence.test.js +246 -0
  21. package/dist/core/context/__tests__/output-persistence.test.js.map +1 -0
  22. package/dist/core/context/auto-injection-engine.d.ts +10 -1
  23. package/dist/core/context/auto-injection-engine.d.ts.map +1 -1
  24. package/dist/core/context/auto-injection-engine.js +45 -2
  25. package/dist/core/context/auto-injection-engine.js.map +1 -1
  26. package/dist/core/context/budget-thresholds.d.ts +167 -0
  27. package/dist/core/context/budget-thresholds.d.ts.map +1 -0
  28. package/dist/core/context/budget-thresholds.js +234 -0
  29. package/dist/core/context/budget-thresholds.js.map +1 -0
  30. package/dist/core/context/compaction-engine.d.ts +193 -0
  31. package/dist/core/context/compaction-engine.d.ts.map +1 -0
  32. package/dist/core/context/compaction-engine.js +376 -0
  33. package/dist/core/context/compaction-engine.js.map +1 -0
  34. package/dist/core/context/context-health.d.ts +27 -2
  35. package/dist/core/context/context-health.d.ts.map +1 -1
  36. package/dist/core/context/context-health.js +98 -12
  37. package/dist/core/context/context-health.js.map +1 -1
  38. package/dist/core/context/focus-resource-loader.d.ts +143 -0
  39. package/dist/core/context/focus-resource-loader.d.ts.map +1 -0
  40. package/dist/core/context/focus-resource-loader.js +305 -0
  41. package/dist/core/context/focus-resource-loader.js.map +1 -0
  42. package/dist/core/context/index.d.ts +10 -5
  43. package/dist/core/context/index.d.ts.map +1 -1
  44. package/dist/core/context/index.js +40 -5
  45. package/dist/core/context/index.js.map +1 -1
  46. package/dist/core/context/lazy-loader.d.ts +44 -1
  47. package/dist/core/context/lazy-loader.d.ts.map +1 -1
  48. package/dist/core/context/lazy-loader.js +59 -1
  49. package/dist/core/context/lazy-loader.js.map +1 -1
  50. package/dist/core/context/output-persistence.d.ts +142 -0
  51. package/dist/core/context/output-persistence.d.ts.map +1 -0
  52. package/dist/core/context/output-persistence.js +242 -0
  53. package/dist/core/context/output-persistence.js.map +1 -0
  54. package/dist/core/context-repl/__tests__/repl-environment.test.d.ts +7 -0
  55. package/dist/core/context-repl/__tests__/repl-environment.test.d.ts.map +1 -0
  56. package/dist/core/context-repl/__tests__/repl-environment.test.js +335 -0
  57. package/dist/core/context-repl/__tests__/repl-environment.test.js.map +1 -0
  58. package/dist/core/context-repl/context-window-monitor.d.ts +181 -0
  59. package/dist/core/context-repl/context-window-monitor.d.ts.map +1 -0
  60. package/dist/core/context-repl/context-window-monitor.js +309 -0
  61. package/dist/core/context-repl/context-window-monitor.js.map +1 -0
  62. package/dist/core/context-repl/index.d.ts +8 -3
  63. package/dist/core/context-repl/index.d.ts.map +1 -1
  64. package/dist/core/context-repl/index.js +11 -3
  65. package/dist/core/context-repl/index.js.map +1 -1
  66. package/dist/core/context-repl/repl-environment.d.ts +66 -0
  67. package/dist/core/context-repl/repl-environment.d.ts.map +1 -0
  68. package/dist/core/context-repl/repl-environment.js +795 -0
  69. package/dist/core/context-repl/repl-environment.js.map +1 -0
  70. package/dist/core/context-repl/types.d.ts +277 -1
  71. package/dist/core/context-repl/types.d.ts.map +1 -1
  72. package/dist/core/context-repl/types.js +52 -1
  73. package/dist/core/context-repl/types.js.map +1 -1
  74. package/dist/core/environment/__tests__/pre-verify.test.d.ts +5 -0
  75. package/dist/core/environment/__tests__/pre-verify.test.d.ts.map +1 -0
  76. package/dist/core/environment/__tests__/pre-verify.test.js +343 -0
  77. package/dist/core/environment/__tests__/pre-verify.test.js.map +1 -0
  78. package/dist/core/environment/index.d.ts +8 -0
  79. package/dist/core/environment/index.d.ts.map +1 -0
  80. package/dist/core/environment/index.js +7 -0
  81. package/dist/core/environment/index.js.map +1 -0
  82. package/dist/core/environment/pre-verify.d.ts +63 -0
  83. package/dist/core/environment/pre-verify.d.ts.map +1 -0
  84. package/dist/core/environment/pre-verify.js +221 -0
  85. package/dist/core/environment/pre-verify.js.map +1 -0
  86. package/dist/core/environment/types.d.ts +37 -0
  87. package/dist/core/environment/types.d.ts.map +1 -0
  88. package/dist/core/environment/types.js +5 -0
  89. package/dist/core/environment/types.js.map +1 -0
  90. package/dist/core/generator/claude-md.js +1 -1
  91. package/dist/core/intelligence/context-budget.d.ts +10 -5
  92. package/dist/core/intelligence/context-budget.d.ts.map +1 -1
  93. package/dist/core/intelligence/context-budget.js +12 -5
  94. package/dist/core/intelligence/context-budget.js.map +1 -1
  95. package/dist/core/provider/storage.d.ts.map +1 -1
  96. package/dist/core/provider/storage.js +1 -2
  97. package/dist/core/provider/storage.js.map +1 -1
  98. package/dist/hooks/post-edit.js +73 -0
  99. package/dist/hooks/post-edit.js.map +1 -1
  100. package/dist/hooks/session-start.js +115 -0
  101. package/dist/hooks/session-start.js.map +1 -1
  102. package/dist/hooks/types.js +1 -1
  103. package/dist/hooks/user-prompt-submit.js +100 -0
  104. package/dist/hooks/user-prompt-submit.js.map +1 -1
  105. package/dist/hud/config.d.ts +3 -28
  106. package/dist/hud/config.d.ts.map +1 -1
  107. package/dist/hud/config.js +8 -60
  108. package/dist/hud/config.js.map +1 -1
  109. package/dist/hud/index.d.ts.map +1 -1
  110. package/dist/hud/index.js +0 -1
  111. package/dist/hud/index.js.map +1 -1
  112. package/dist/hud/render/budget-bar.d.ts +0 -2
  113. package/dist/hud/render/budget-bar.d.ts.map +1 -1
  114. package/dist/hud/render/budget-bar.js +5 -8
  115. package/dist/hud/render/budget-bar.js.map +1 -1
  116. package/dist/hud/stdin.d.ts +0 -3
  117. package/dist/hud/stdin.d.ts.map +1 -1
  118. package/dist/hud/stdin.js +2 -29
  119. package/dist/hud/stdin.js.map +1 -1
  120. package/dist/hud/types.d.ts +0 -2
  121. package/dist/hud/types.d.ts.map +1 -1
  122. package/dist/mcp/__tests__/dynamic-updates.test.d.ts +5 -0
  123. package/dist/mcp/__tests__/dynamic-updates.test.d.ts.map +1 -0
  124. package/dist/mcp/__tests__/dynamic-updates.test.js +314 -0
  125. package/dist/mcp/__tests__/dynamic-updates.test.js.map +1 -0
  126. package/dist/mcp/dynamic-updates.d.ts +167 -0
  127. package/dist/mcp/dynamic-updates.d.ts.map +1 -0
  128. package/dist/mcp/dynamic-updates.js +313 -0
  129. package/dist/mcp/dynamic-updates.js.map +1 -0
  130. package/dist/mcp/focus-filter.d.ts +74 -0
  131. package/dist/mcp/focus-filter.d.ts.map +1 -0
  132. package/dist/mcp/focus-filter.js +229 -0
  133. package/dist/mcp/focus-filter.js.map +1 -0
  134. package/dist/mcp/index.d.ts +4 -2
  135. package/dist/mcp/index.d.ts.map +1 -1
  136. package/dist/mcp/index.js +5 -2
  137. package/dist/mcp/index.js.map +1 -1
  138. package/dist/mcp/registry.d.ts +4 -4
  139. package/dist/mcp/registry.d.ts.map +1 -1
  140. package/dist/mcp/registry.js +16 -16
  141. package/dist/mcp/registry.js.map +1 -1
  142. package/dist/mcp/server.d.ts +2 -1
  143. package/dist/mcp/server.d.ts.map +1 -1
  144. package/dist/mcp/server.js +12 -3
  145. package/dist/mcp/server.js.map +1 -1
  146. package/dist/mcp/tool-tiers.d.ts.map +1 -1
  147. package/dist/mcp/tool-tiers.js +5 -0
  148. package/dist/mcp/tool-tiers.js.map +1 -1
  149. package/dist/mcp/tools/__tests__/environment.test.d.ts +5 -0
  150. package/dist/mcp/tools/__tests__/environment.test.d.ts.map +1 -0
  151. package/dist/mcp/tools/__tests__/environment.test.js +219 -0
  152. package/dist/mcp/tools/__tests__/environment.test.js.map +1 -0
  153. package/dist/mcp/tools/auto-inject.d.ts +36 -0
  154. package/dist/mcp/tools/auto-inject.d.ts.map +1 -0
  155. package/dist/mcp/tools/auto-inject.js +143 -0
  156. package/dist/mcp/tools/auto-inject.js.map +1 -0
  157. package/dist/mcp/tools/auto-unload.d.ts +29 -0
  158. package/dist/mcp/tools/auto-unload.d.ts.map +1 -0
  159. package/dist/mcp/tools/auto-unload.js +151 -0
  160. package/dist/mcp/tools/auto-unload.js.map +1 -0
  161. package/dist/mcp/tools/context-repl.d.ts +48 -0
  162. package/dist/mcp/tools/context-repl.d.ts.map +1 -0
  163. package/dist/mcp/tools/context-repl.js +290 -0
  164. package/dist/mcp/tools/context-repl.js.map +1 -0
  165. package/dist/mcp/tools/environment.d.ts +27 -0
  166. package/dist/mcp/tools/environment.d.ts.map +1 -0
  167. package/dist/mcp/tools/environment.js +97 -0
  168. package/dist/mcp/tools/environment.js.map +1 -0
  169. package/dist/mcp/tools/health.d.ts +29 -0
  170. package/dist/mcp/tools/health.d.ts.map +1 -0
  171. package/dist/mcp/tools/health.js +171 -0
  172. package/dist/mcp/tools/health.js.map +1 -0
  173. package/dist/mcp/tools/index.d.ts +9 -2
  174. package/dist/mcp/tools/index.d.ts.map +1 -1
  175. package/dist/mcp/tools/index.js +37 -2
  176. package/dist/mcp/tools/index.js.map +1 -1
  177. package/dist/mcp/tools/output-persistence.d.ts +44 -0
  178. package/dist/mcp/tools/output-persistence.d.ts.map +1 -0
  179. package/dist/mcp/tools/output-persistence.js +208 -0
  180. package/dist/mcp/tools/output-persistence.js.map +1 -0
  181. package/dist/mcp-server.d.ts +2 -1
  182. package/dist/mcp-server.d.ts.map +1 -1
  183. package/dist/mcp-server.js +36 -7
  184. package/dist/mcp-server.js.map +1 -1
  185. package/dist/rules/index.js +2 -2
  186. package/dist/utils/exec.js +2 -2
  187. package/dist/utils/exec.js.map +1 -1
  188. package/dist/utils/gitignore.d.ts.map +1 -1
  189. package/dist/utils/gitignore.js +5 -0
  190. package/dist/utils/gitignore.js.map +1 -1
  191. package/package.json +76 -77
  192. package/dist/hud/config-tui.d.ts +0 -25
  193. package/dist/hud/config-tui.d.ts.map +0 -1
  194. package/dist/hud/config-tui.js +0 -199
  195. package/dist/hud/config-tui.js.map +0 -1
  196. package/dist/hud/models.d.ts +0 -58
  197. package/dist/hud/models.d.ts.map +0 -1
  198. package/dist/hud/models.js +0 -124
  199. package/dist/hud/models.js.map +0 -1
  200. package/dist/hud/token-estimator.d.ts +0 -79
  201. package/dist/hud/token-estimator.d.ts.map +0 -1
  202. package/dist/hud/token-estimator.js +0 -126
  203. package/dist/hud/token-estimator.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * MCP Server Entry Point - v10.3.0
2
+ * MCP Server Entry Point - v14.0.0
3
3
  *
4
4
  * Stdio-based MCP server that enables Claude Code to use dino-spec tools and resources.
5
5
  *
@@ -9,6 +9,7 @@
9
9
  * - Write JSON-RPC responses to stdout
10
10
  *
11
11
  * v10.3.0: Auto-applies phase-based tool filtering for context optimization.
12
+ * v14.0.0: Added dynamic tool updates with tools/list_changed notification support.
12
13
  *
13
14
  * Run via: dino mcp serve
14
15
  * Or: npx dino mcp serve
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAoRH;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAgFrC"}
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAsTH;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAmFrC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * MCP Server Entry Point - v10.3.0
2
+ * MCP Server Entry Point - v14.0.0
3
3
  *
4
4
  * Stdio-based MCP server that enables Claude Code to use dino-spec tools and resources.
5
5
  *
@@ -9,6 +9,7 @@
9
9
  * - Write JSON-RPC responses to stdout
10
10
  *
11
11
  * v10.3.0: Auto-applies phase-based tool filtering for context optimization.
12
+ * v14.0.0: Added dynamic tool updates with tools/list_changed notification support.
12
13
  *
13
14
  * Run via: dino mcp serve
14
15
  * Or: npx dino mcp serve
@@ -19,6 +20,7 @@ import { join } from 'path';
19
20
  import { getMCPManifest, handleToolCall, handleResourceRead, MCP_TOOLS, MCP_RESOURCES, parseSession, } from './mcp/server.js';
20
21
  import { VERSION } from './core/config.js';
21
22
  import { getCachedPhase, setCachedPhase, getPhaseCacheState, } from './mcp/tool-recommender.js';
23
+ import { dynamicUpdateHandler, } from './mcp/dynamic-updates.js';
22
24
  /**
23
25
  * MCP server capabilities
24
26
  */
@@ -29,7 +31,7 @@ const SERVER_INFO = {
29
31
  };
30
32
  const SERVER_CAPABILITIES = {
31
33
  tools: {
32
- listChanged: false,
34
+ listChanged: true, // v14.0.0: Enable dynamic tool updates
33
35
  },
34
36
  resources: {
35
37
  subscribe: false,
@@ -42,6 +44,27 @@ const SERVER_CAPABILITIES = {
42
44
  function sendResponse(response) {
43
45
  process.stdout.write(JSON.stringify(response) + '\n');
44
46
  }
47
+ /**
48
+ * Send JSON-RPC notification to stdout (v14.0.0)
49
+ * Notifications don't have an id field
50
+ */
51
+ function sendNotification(method, params) {
52
+ const notification = {
53
+ jsonrpc: '2.0',
54
+ method,
55
+ params,
56
+ };
57
+ process.stdout.write(JSON.stringify(notification) + '\n');
58
+ }
59
+ /**
60
+ * Send tools/list_changed notification (v14.0.0)
61
+ */
62
+ function sendListChangedNotification(notification) {
63
+ sendNotification('notifications/tools/list_changed', {
64
+ type: notification.type,
65
+ timestamp: notification.timestamp,
66
+ });
67
+ }
45
68
  /**
46
69
  * Send JSON-RPC error response
47
70
  */
@@ -70,26 +93,30 @@ function handleInitialize(id) {
70
93
  });
71
94
  }
72
95
  /**
73
- * Handle tools/list request (v12.5.0: uses cached phase detection)
96
+ * Handle tools/list request (v12.5.0: uses cached phase detection, v13.4.0: focus-based filtering)
74
97
  */
75
98
  async function handleToolsList(id) {
76
99
  // Try to get phase from cache first
77
100
  let phase = await getCachedPhase();
78
101
  let cacheHit = phase !== null;
102
+ // Parse session to get phase and focus
103
+ const session = await parseSession();
79
104
  if (!phase) {
80
- // Cache miss - parse session to get current phase
81
- const session = await parseSession();
105
+ // Cache miss - use phase from session
82
106
  phase = session?.phase || 'discovery';
83
107
  // Store in cache for subsequent requests
84
108
  await setCachedPhase(phase);
85
109
  }
110
+ // v13.4.0: Extract focus area for focus-based filtering
111
+ const focus = session?.focus?.area;
86
112
  // Log cache hit/miss to stderr for trajectory tracking
87
113
  const cacheState = getPhaseCacheState();
88
- process.stderr.write(`[dino-spec] tools/list: phase=${phase} cache=${cacheHit ? 'HIT' : 'MISS'} age=${cacheState.age}ms\n`);
89
- // Always enable filtering with auto-detected phase
114
+ process.stderr.write(`[dino-spec] tools/list: phase=${phase} focus=${focus || 'none'} cache=${cacheHit ? 'HIT' : 'MISS'} age=${cacheState.age}ms\n`);
115
+ // Always enable filtering with auto-detected phase and focus
90
116
  const manifest = getMCPManifest({
91
117
  includeExamples: true,
92
118
  phase,
119
+ focus,
93
120
  aggressiveFiltering: true, // v10.3.0: ALWAYS enabled
94
121
  });
95
122
  const tools = manifest.tools;
@@ -216,6 +243,8 @@ export function startMCPServer() {
216
243
  process.stderr.write(`[dino-spec] WARNING: Project not initialized at ${projectPath}\n` +
217
244
  `[dino-spec] Run "dino init" to enable MCP features.\n`);
218
245
  }
246
+ // v14.0.0: Set up dynamic update notification callback
247
+ dynamicUpdateHandler.setNotificationCallback(sendListChangedNotification);
219
248
  // Create readline interface for stdin
220
249
  const rl = createInterface({
221
250
  input: process.stdin,
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
@@ -64,10 +64,10 @@ The \`.dino/session.md\` file contains live session state:
64
64
  ### Pending Actions
65
65
  \`\`\`markdown
66
66
  ## Pending Actions
67
- - Run npm install after dependency changes
67
+ - Run bun install after dependency changes
68
68
  \`\`\`
69
69
  - Auto-generated from change categories
70
- - dependency changes → npm install
70
+ - dependency changes → bun install
71
71
  - structural changes → verify imports
72
72
 
73
73
  ## Using Context
@@ -24,7 +24,7 @@ export function execCommand(command, options = {}) {
24
24
  let stderr;
25
25
  let exitCode;
26
26
  if (isBunRuntime()) {
27
- const result = Bun.spawnSync([cmd, ...rest], {
27
+ const result = globalThis.Bun.spawnSync([cmd, ...rest], {
28
28
  cwd: options.cwd,
29
29
  timeout: options.timeout,
30
30
  });
@@ -56,7 +56,7 @@ export function execCommandWithResult(command, options = {}) {
56
56
  const args = typeof command === 'string' ? command.split(' ') : command;
57
57
  const [cmd, ...rest] = args;
58
58
  if (isBunRuntime()) {
59
- const result = Bun.spawnSync([cmd, ...rest], {
59
+ const result = globalThis.Bun.spawnSync([cmd, ...rest], {
60
60
  cwd: options.cwd,
61
61
  timeout: options.timeout,
62
62
  });
@@ -1 +1 @@
1
- {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/utils/exec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/utils/exec.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"gitignore.d.ts","sourceRoot":"","sources":["../../src/utils/gitignore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAsCH;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IACjE,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC,CAyDD;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAI3E"}
1
+ {"version":3,"file":"gitignore.d.ts","sourceRoot":"","sources":["../../src/utils/gitignore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA2CH;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IACjE,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC,CAyDD;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAI3E"}
@@ -31,6 +31,11 @@ const DINO_GITIGNORE_PATTERNS = [
31
31
  ".claude/settings.json",
32
32
  ".claude/settings.local.json",
33
33
  "tsconfig.tsbuildinfo",
34
+ "# Test artifacts",
35
+ "test-checkpoints/",
36
+ "test-update-project/",
37
+ "test-fixtures/dependency-graph/",
38
+ "test-fixtures/gam-integration/",
34
39
  ];
35
40
  /**
36
41
  * Marker comment to identify dino-spec section in .gitignore
@@ -1 +1 @@
1
- {"version":3,"file":"gitignore.js","sourceRoot":"","sources":["../../src/utils/gitignore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitignore.js","sourceRoot":"","sources":["../../src/utils/gitignore.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,77 +1,76 @@
1
- {
2
- "name": "dino-spec",
3
- "version": "13.6.1",
4
- "description": "Automatic context engineering for Claude Code",
5
- "type": "module",
6
- "exports": {
7
- ".": {
8
- "types": "./dist/index.d.ts",
9
- "default": "./dist/index.js"
10
- }
11
- },
12
- "bin": {
13
- "dino": "./bin/dino.js",
14
- "dino-hud": "./bin/dino-hud.js"
15
- },
16
- "files": [
17
- "dist",
18
- "bin"
19
- ],
20
- "scripts": {
21
- "build": "bun build.js",
22
- "build:binary": "bun build-binary.js",
23
- "dev": "bun --watch bin/dino.js",
24
- "dev:cli": "bun run build && bun bin/dino.js",
25
- "lint": "eslint src/",
26
- "test": "bun run vitest run",
27
- "test:unit": "bun run vitest run --project=unit",
28
- "test:integration": "bun run vitest run --project=integration",
29
- "test:watch": "bun run vitest",
30
- "docs:tools": "bun scripts/generate-tool-docs.ts",
31
- "prepare": "bun run build",
32
- "prepublishOnly": "bun run build"
33
- },
34
- "engines": {
35
- "bun": ">=1.0.0"
36
- },
37
- "dependencies": {
38
- "@inquirer/prompts": "^8.2.0",
39
- "chalk": "^5.4.1",
40
- "commander": "^13.1.0",
41
- "fast-glob": "^3.3.3",
42
- "js-tiktoken": "^1.0.21",
43
- "ora": "^8.1.1",
44
- "typescript": "^5.9.3",
45
- "yaml": "^2.7.0",
46
- "zod": "^3.24.1"
47
- },
48
- "devDependencies": {
49
- "@types/bun": "^1.3.6",
50
- "@types/node": "^22.10.5",
51
- "memfs": "^4.56.10",
52
- "vitest": "^2.1.8"
53
- },
54
- "keywords": [
55
- "claude",
56
- "claude-code",
57
- "specs",
58
- "workflow",
59
- "cli",
60
- "ai",
61
- "development",
62
- "specification"
63
- ],
64
- "author": "keenu",
65
- "license": "MIT",
66
- "repository": {
67
- "type": "git",
68
- "url": "git+https://github.com/xullul/dino-spec.git"
69
- },
70
- "bugs": {
71
- "url": "https://github.com/xullul/dino-spec/issues"
72
- },
73
- "homepage": "https://github.com/xullul/dino-spec#readme",
74
- "publishConfig": {
75
- "access": "public"
76
- }
77
- }
1
+ {
2
+ "name": "dino-spec",
3
+ "version": "14.0.1",
4
+ "description": "Automatic context engineering for Claude Code",
5
+ "type": "module",
6
+ "exports": {
7
+ ".": {
8
+ "types": "./dist/index.d.ts",
9
+ "default": "./dist/index.js"
10
+ }
11
+ },
12
+ "bin": {
13
+ "dino": "./bin/dino.js",
14
+ "dino-hud": "./bin/dino-hud.js"
15
+ },
16
+ "files": [
17
+ "dist",
18
+ "bin"
19
+ ],
20
+ "scripts": {
21
+ "build": "bun build.js",
22
+ "build:binary": "bun build-binary.js",
23
+ "dev": "bun --watch bin/dino.js",
24
+ "dev:cli": "bun run build && bun bin/dino.js",
25
+ "lint": "eslint src/",
26
+ "test": "bun run vitest run",
27
+ "test:unit": "bun run vitest run --project=unit",
28
+ "test:integration": "bun run vitest run --project=integration",
29
+ "test:watch": "bun run vitest",
30
+ "docs:tools": "bun scripts/generate-tool-docs.ts",
31
+ "prepare": "bun run build",
32
+ "prepublishOnly": "bun run build"
33
+ },
34
+ "engines": {
35
+ "bun": ">=1.0.0"
36
+ },
37
+ "dependencies": {
38
+ "@inquirer/prompts": "^8.2.0",
39
+ "chalk": "^5.4.1",
40
+ "commander": "^13.1.0",
41
+ "fast-glob": "^3.3.3",
42
+ "ora": "^8.1.1",
43
+ "typescript": "^5.9.3",
44
+ "yaml": "^2.7.0",
45
+ "zod": "^3.24.1"
46
+ },
47
+ "devDependencies": {
48
+ "@types/bun": "^1.3.6",
49
+ "@types/node": "^22.10.5",
50
+ "memfs": "^4.56.10",
51
+ "vitest": "^2.1.8"
52
+ },
53
+ "keywords": [
54
+ "claude",
55
+ "claude-code",
56
+ "specs",
57
+ "workflow",
58
+ "cli",
59
+ "ai",
60
+ "development",
61
+ "specification"
62
+ ],
63
+ "author": "keenu",
64
+ "license": "MIT",
65
+ "repository": {
66
+ "type": "git",
67
+ "url": "git+https://github.com/xullul/dino-spec.git"
68
+ },
69
+ "bugs": {
70
+ "url": "https://github.com/xullul/dino-spec/issues"
71
+ },
72
+ "homepage": "https://github.com/xullul/dino-spec#readme",
73
+ "publishConfig": {
74
+ "access": "public"
75
+ }
76
+ }
@@ -1,25 +0,0 @@
1
- /**
2
- * HUD Config TUI - Interactive configuration wizard
3
- *
4
- * Provides an interactive terminal UI for configuring HUD display options.
5
- * Uses @inquirer/prompts for cross-platform TUI support.
6
- *
7
- * @module config-tui
8
- */
9
- import type { HudDisplayConfig } from './types.js';
10
- /**
11
- * Run the interactive TUI configuration
12
- *
13
- * @param projectDir - Project directory (defaults to cwd)
14
- * @returns true if configuration was saved
15
- */
16
- export declare function runConfigTui(projectDir?: string): Promise<boolean>;
17
- /**
18
- * Get count of enabled display options
19
- */
20
- export declare function getEnabledCount(display: HudDisplayConfig): number;
21
- /**
22
- * Get total count of display options
23
- */
24
- export declare function getTotalDisplayOptions(): number;
25
- //# sourceMappingURL=config-tui.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-tui.d.ts","sourceRoot":"","sources":["../../src/hud/config-tui.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAYH,OAAO,KAAK,EAAa,gBAAgB,EAAE,MAAM,YAAY,CAAC;AA8E9D;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,UAAU,GAAE,MAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,CA0HvF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAEjE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C"}
@@ -1,199 +0,0 @@
1
- /**
2
- * HUD Config TUI - Interactive configuration wizard
3
- *
4
- * Provides an interactive terminal UI for configuring HUD display options.
5
- * Uses @inquirer/prompts for cross-platform TUI support.
6
- *
7
- * @module config-tui
8
- */
9
- import chalk from 'chalk';
10
- import { checkbox, confirm, select } from '@inquirer/prompts';
11
- import { loadHudConfig, saveHudConfig, saveUserConfig, DEFAULT_CONFIG, getHudConfigPath, getUserConfigPath, } from './config.js';
12
- /**
13
- * Organized display options by category
14
- */
15
- const DISPLAY_GROUPS = [
16
- {
17
- name: 'Context Info',
18
- options: [
19
- { key: 'model', label: 'Model', description: 'Show model name (e.g., Opus 4.5)' },
20
- { key: 'budget', label: 'Budget', description: 'Show context usage percentage with bar' },
21
- { key: 'contextHealth', label: 'Context Health', description: 'Show health-based coloring (deprecated)' },
22
- ],
23
- },
24
- {
25
- name: 'Session Info',
26
- options: [
27
- { key: 'sessionDuration', label: 'Session Duration', description: 'Show time since session start' },
28
- { key: 'sessionLimit', label: 'Session Limit', description: 'Show 5-hour rate limit tracking' },
29
- { key: 'weeklyUsage', label: 'Weekly Usage', description: 'Show weekly rate limit tracking' },
30
- { key: 'gitBranch', label: 'Git Branch', description: 'Show current git branch' },
31
- ],
32
- },
33
- {
34
- name: 'Tools & Agents',
35
- options: [
36
- { key: 'toolUsage', label: 'Tool Usage', description: 'Show tool call counts' },
37
- { key: 'agentStatus', label: 'Agent Status', description: 'Show subagent activity' },
38
- { key: 'todoProgress', label: 'Todo Progress', description: 'Show todo completion status' },
39
- { key: 'mcpStatus', label: 'MCP Status', description: 'Show MCP server connection' },
40
- ],
41
- },
42
- {
43
- name: 'Dino Features',
44
- options: [
45
- { key: 'configCounts', label: 'Config Counts', description: 'Show CLAUDE.md, rules, hooks counts' },
46
- { key: 'cacheStats', label: 'Cache Stats', description: 'Show file cache hit rate' },
47
- { key: 'deferredStatus', label: 'Deferred Status', description: 'Show lazy loading status' },
48
- { key: 'circuitStatus', label: 'Circuit Status', description: 'Show circuit breaker health' },
49
- ],
50
- },
51
- {
52
- name: 'Legacy (Session.md)',
53
- options: [
54
- { key: 'phase', label: 'Phase', description: 'Show current workflow phase' },
55
- { key: 'focus', label: 'Focus', description: 'Show current focus area' },
56
- { key: 'testStatus', label: 'Test Status', description: 'Show test pass/fail status' },
57
- { key: 'buildStatus', label: 'Build Status', description: 'Show build status' },
58
- { key: 'lintStatus', label: 'Lint Status', description: 'Show lint status' },
59
- { key: 'blockers', label: 'Blockers', description: 'Show active blockers' },
60
- ],
61
- },
62
- ];
63
- /**
64
- * Print the TUI header
65
- */
66
- function printHeader() {
67
- console.log('');
68
- console.log(chalk.cyan('┌─────────────────────────────────────────┐'));
69
- console.log(chalk.cyan('│ ') + chalk.bold('dino-hud Configuration') + chalk.cyan(' │'));
70
- console.log(chalk.cyan('│ ') + chalk.dim('Configure statusline display options') + chalk.cyan(' │'));
71
- console.log(chalk.cyan('└─────────────────────────────────────────┘'));
72
- console.log('');
73
- }
74
- /**
75
- * Run the interactive TUI configuration
76
- *
77
- * @param projectDir - Project directory (defaults to cwd)
78
- * @returns true if configuration was saved
79
- */
80
- export async function runConfigTui(projectDir = process.cwd()) {
81
- // Check if terminal supports TUI
82
- if (!process.stdout.isTTY) {
83
- console.log(chalk.red('Error: Interactive configuration requires a terminal.'));
84
- console.log(chalk.dim('Use --json flag to view config as JSON.'));
85
- return false;
86
- }
87
- printHeader();
88
- try {
89
- // Load current config
90
- const currentConfig = await loadHudConfig(projectDir);
91
- // Build choices for each group
92
- const allChoices = [];
93
- for (const group of DISPLAY_GROUPS) {
94
- // Add group separator
95
- allChoices.push({
96
- name: chalk.cyan.bold(`── ${group.name} ──`),
97
- value: group.options[0].key, // Dummy value
98
- checked: false,
99
- disabled: true,
100
- });
101
- for (const option of group.options) {
102
- allChoices.push({
103
- name: `${option.label}${option.description ? chalk.dim(` - ${option.description}`) : ''}`,
104
- value: option.key,
105
- checked: currentConfig.display[option.key] ?? false,
106
- });
107
- }
108
- }
109
- // Show checkbox selection
110
- const selected = await checkbox({
111
- message: 'Select display options (Space to toggle, Enter to confirm)',
112
- choices: allChoices.filter(c => !c.disabled),
113
- pageSize: 15,
114
- });
115
- // Build new display config
116
- const newDisplay = {};
117
- for (const group of DISPLAY_GROUPS) {
118
- for (const option of group.options) {
119
- newDisplay[option.key] = selected.includes(option.key);
120
- }
121
- }
122
- // Check if reset to defaults is desired
123
- const resetPrompt = await confirm({
124
- message: 'Reset all other settings to defaults?',
125
- default: false,
126
- });
127
- // Build final config
128
- let finalConfig;
129
- if (resetPrompt) {
130
- finalConfig = {
131
- ...DEFAULT_CONFIG,
132
- display: newDisplay,
133
- };
134
- }
135
- else {
136
- finalConfig = {
137
- ...currentConfig,
138
- display: newDisplay,
139
- };
140
- }
141
- // Ask where to save
142
- const saveLocation = await select({
143
- message: 'Save configuration to:',
144
- choices: [
145
- {
146
- name: `Project (${chalk.dim('.dino/hud.json')})`,
147
- value: 'project',
148
- description: 'Only affects this project',
149
- },
150
- {
151
- name: `Global (${chalk.dim('~/.config/dino/hud.json')})`,
152
- value: 'global',
153
- description: 'Default for all projects',
154
- },
155
- {
156
- name: chalk.dim('Cancel'),
157
- value: 'cancel',
158
- },
159
- ],
160
- });
161
- if (saveLocation === 'cancel') {
162
- console.log(chalk.yellow('Configuration not saved.'));
163
- return false;
164
- }
165
- // Save config
166
- if (saveLocation === 'global') {
167
- await saveUserConfig(finalConfig);
168
- console.log(chalk.green(`✓ Saved to ${getUserConfigPath()}`));
169
- }
170
- else {
171
- await saveHudConfig(finalConfig, projectDir);
172
- console.log(chalk.green(`✓ Saved to ${getHudConfigPath(projectDir)}`));
173
- }
174
- console.log('');
175
- console.log(chalk.cyan('Restart Claude Code to see changes.'));
176
- console.log('');
177
- return true;
178
- }
179
- catch (error) {
180
- if (error instanceof Error && (error.message.includes('User force closed') || error.name === 'ExitPromptError')) {
181
- console.log(chalk.dim('\n Configuration cancelled.\n'));
182
- return false;
183
- }
184
- throw error;
185
- }
186
- }
187
- /**
188
- * Get count of enabled display options
189
- */
190
- export function getEnabledCount(display) {
191
- return Object.values(display).filter(Boolean).length;
192
- }
193
- /**
194
- * Get total count of display options
195
- */
196
- export function getTotalDisplayOptions() {
197
- return DISPLAY_GROUPS.reduce((count, group) => count + group.options.length, 0);
198
- }
199
- //# sourceMappingURL=config-tui.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-tui.js","sourceRoot":"","sources":["../../src/hud/config-tui.ts"],"names":[],"mappings":"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"}