@codemcp/workflows 6.4.0 → 6.5.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 (134) hide show
  1. package/package.json +2 -2
  2. package/packages/cli/dist/{chunk-D2Q6Y3QQ.js → chunk-4AZGS2GG.js} +321 -388
  3. package/packages/cli/dist/{cli-DXJJF56V.js → cli-ZCCFBQTP.js} +3 -3
  4. package/packages/cli/dist/{dist-W7PPKVFG.js → dist-I6VSREAJ.js} +11 -5
  5. package/packages/cli/dist/{dist-W7VMGB3G.js → dist-MW7THWM3.js} +875 -1136
  6. package/packages/cli/dist/index.js +2 -2
  7. package/packages/cli/package.json +1 -1
  8. package/packages/cli/resources/workflows/bugfix.yaml +14 -0
  9. package/packages/cli/resources/workflows/epcc.yaml +12 -0
  10. package/packages/cli/resources/workflows/greenfield.yaml +16 -0
  11. package/packages/cli/resources/workflows/minor.yaml +8 -0
  12. package/packages/cli/resources/workflows/tdd.yaml +10 -0
  13. package/packages/cli/resources/workflows/waterfall.yaml +16 -0
  14. package/packages/core/dist/beads-integration.d.ts +3 -5
  15. package/packages/core/dist/beads-integration.js +29 -35
  16. package/packages/core/dist/beads-integration.js.map +1 -1
  17. package/packages/core/dist/beads-state-manager.d.ts +3 -1
  18. package/packages/core/dist/beads-state-manager.js +17 -15
  19. package/packages/core/dist/beads-state-manager.js.map +1 -1
  20. package/packages/core/dist/file-detection-manager.js +15 -22
  21. package/packages/core/dist/file-detection-manager.js.map +1 -1
  22. package/packages/core/dist/index.d.ts +1 -0
  23. package/packages/core/dist/index.js +1 -0
  24. package/packages/core/dist/index.js.map +1 -1
  25. package/packages/core/dist/instruction-generator.d.ts +3 -7
  26. package/packages/core/dist/instruction-generator.js +17 -25
  27. package/packages/core/dist/instruction-generator.js.map +1 -1
  28. package/packages/core/dist/interfaces/instruction-generator.interface.d.ts +13 -4
  29. package/packages/core/dist/interfaces/plan-manager.interface.d.ts +9 -0
  30. package/packages/core/dist/logger.d.ts +49 -20
  31. package/packages/core/dist/logger.js +65 -141
  32. package/packages/core/dist/logger.js.map +1 -1
  33. package/packages/core/dist/plan-manager.d.ts +6 -4
  34. package/packages/core/dist/plan-manager.js +19 -15
  35. package/packages/core/dist/plan-manager.js.map +1 -1
  36. package/packages/core/dist/project-docs-manager.d.ts +3 -1
  37. package/packages/core/dist/project-docs-manager.js +11 -9
  38. package/packages/core/dist/project-docs-manager.js.map +1 -1
  39. package/packages/core/dist/state-machine-loader.d.ts +16 -0
  40. package/packages/core/dist/state-machine-loader.js +29 -0
  41. package/packages/core/dist/state-machine-loader.js.map +1 -1
  42. package/packages/core/dist/state-machine-types.d.ts +8 -0
  43. package/packages/core/dist/string-utils.d.ts +8 -0
  44. package/packages/core/dist/string-utils.js +14 -0
  45. package/packages/core/dist/string-utils.js.map +1 -0
  46. package/packages/core/dist/task-backend.d.ts +6 -3
  47. package/packages/core/dist/task-backend.js +10 -8
  48. package/packages/core/dist/task-backend.js.map +1 -1
  49. package/packages/core/dist/transition-engine.d.ts +3 -6
  50. package/packages/core/dist/transition-engine.js +31 -76
  51. package/packages/core/dist/transition-engine.js.map +1 -1
  52. package/packages/core/dist/workflow-manager.d.ts +2 -0
  53. package/packages/core/dist/workflow-manager.js +14 -2
  54. package/packages/core/dist/workflow-manager.js.map +1 -1
  55. package/packages/core/package.json +1 -1
  56. package/packages/core/resources/workflows/bugfix.yaml +14 -0
  57. package/packages/core/resources/workflows/epcc.yaml +12 -0
  58. package/packages/core/resources/workflows/greenfield.yaml +16 -0
  59. package/packages/core/resources/workflows/minor.yaml +8 -0
  60. package/packages/core/resources/workflows/tdd.yaml +10 -0
  61. package/packages/core/resources/workflows/waterfall.yaml +16 -0
  62. package/packages/docs/.vitepress/dist/workflows/bugfix.yaml +14 -0
  63. package/packages/docs/.vitepress/dist/workflows/epcc.yaml +12 -0
  64. package/packages/docs/.vitepress/dist/workflows/greenfield.yaml +16 -0
  65. package/packages/docs/.vitepress/dist/workflows/minor.yaml +8 -0
  66. package/packages/docs/.vitepress/dist/workflows/tdd.yaml +10 -0
  67. package/packages/docs/.vitepress/dist/workflows/waterfall.yaml +16 -0
  68. package/packages/docs/package.json +1 -1
  69. package/packages/mcp-server/dist/index.d.ts +1027 -0
  70. package/packages/mcp-server/dist/index.js +879 -1140
  71. package/packages/mcp-server/package.json +1 -1
  72. package/packages/mcp-server/resources/workflows/bugfix.yaml +14 -0
  73. package/packages/mcp-server/resources/workflows/epcc.yaml +12 -0
  74. package/packages/mcp-server/resources/workflows/greenfield.yaml +16 -0
  75. package/packages/mcp-server/resources/workflows/minor.yaml +8 -0
  76. package/packages/mcp-server/resources/workflows/tdd.yaml +10 -0
  77. package/packages/mcp-server/resources/workflows/waterfall.yaml +16 -0
  78. package/packages/opencode-plugin/dist/index.d.ts +220 -0
  79. package/packages/opencode-plugin/dist/index.js +28616 -0
  80. package/packages/opencode-plugin/package.json +55 -0
  81. package/packages/opencode-plugin/resources/agents/architect.yaml +61 -0
  82. package/packages/opencode-plugin/resources/agents/business-analyst.yaml +60 -0
  83. package/packages/opencode-plugin/resources/agents/developer.yaml +61 -0
  84. package/packages/opencode-plugin/resources/templates/architecture/arc42/arc42-template-EN.md +1077 -0
  85. package/packages/opencode-plugin/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio-2023.png +0 -0
  86. package/packages/opencode-plugin/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio.png +0 -0
  87. package/packages/opencode-plugin/resources/templates/architecture/arc42/images/05_building_blocks-EN.png +0 -0
  88. package/packages/opencode-plugin/resources/templates/architecture/arc42/images/08-concepts-EN.drawio.png +0 -0
  89. package/packages/opencode-plugin/resources/templates/architecture/arc42/images/arc42-logo.png +0 -0
  90. package/packages/opencode-plugin/resources/templates/architecture/c4.md +224 -0
  91. package/packages/opencode-plugin/resources/templates/architecture/freestyle.md +53 -0
  92. package/packages/opencode-plugin/resources/templates/architecture/game.md +250 -0
  93. package/packages/opencode-plugin/resources/templates/architecture/none.md +17 -0
  94. package/packages/opencode-plugin/resources/templates/design/comprehensive.md +207 -0
  95. package/packages/opencode-plugin/resources/templates/design/freestyle.md +37 -0
  96. package/packages/opencode-plugin/resources/templates/design/game.md +66 -0
  97. package/packages/opencode-plugin/resources/templates/design/none.md +17 -0
  98. package/packages/opencode-plugin/resources/templates/requirements/ears.md +90 -0
  99. package/packages/opencode-plugin/resources/templates/requirements/freestyle.md +42 -0
  100. package/packages/opencode-plugin/resources/templates/requirements/game.md +162 -0
  101. package/packages/opencode-plugin/resources/templates/requirements/none.md +17 -0
  102. package/packages/opencode-plugin/resources/templates/skills/POWER.md +23 -0
  103. package/packages/opencode-plugin/resources/templates/skills/SKILL.md +19 -0
  104. package/packages/opencode-plugin/resources/workflows/adr.yaml +157 -0
  105. package/packages/opencode-plugin/resources/workflows/big-bang-conversion.yaml +592 -0
  106. package/packages/opencode-plugin/resources/workflows/boundary-testing.yaml +376 -0
  107. package/packages/opencode-plugin/resources/workflows/bugfix.yaml +178 -0
  108. package/packages/opencode-plugin/resources/workflows/business-analysis.yaml +597 -0
  109. package/packages/opencode-plugin/resources/workflows/c4-analysis.yaml +471 -0
  110. package/packages/opencode-plugin/resources/workflows/epcc.yaml +195 -0
  111. package/packages/opencode-plugin/resources/workflows/game-beginner.yaml +434 -0
  112. package/packages/opencode-plugin/resources/workflows/greenfield.yaml +217 -0
  113. package/packages/opencode-plugin/resources/workflows/minor.yaml +146 -0
  114. package/packages/opencode-plugin/resources/workflows/posts.yaml +193 -0
  115. package/packages/opencode-plugin/resources/workflows/sdd-bugfix-crowd.yaml +608 -0
  116. package/packages/opencode-plugin/resources/workflows/sdd-bugfix.yaml +381 -0
  117. package/packages/opencode-plugin/resources/workflows/sdd-feature-crowd.yaml +713 -0
  118. package/packages/opencode-plugin/resources/workflows/sdd-feature.yaml +471 -0
  119. package/packages/opencode-plugin/resources/workflows/sdd-greenfield-crowd.yaml +336 -0
  120. package/packages/opencode-plugin/resources/workflows/sdd-greenfield.yaml +463 -0
  121. package/packages/opencode-plugin/resources/workflows/skilled-bugfix.yaml +174 -0
  122. package/packages/opencode-plugin/resources/workflows/skilled-epcc.yaml +171 -0
  123. package/packages/opencode-plugin/resources/workflows/skilled-greenfield.yaml +207 -0
  124. package/packages/opencode-plugin/resources/workflows/slides.yaml +237 -0
  125. package/packages/opencode-plugin/resources/workflows/tdd.yaml +170 -0
  126. package/packages/opencode-plugin/resources/workflows/waterfall.yaml +225 -0
  127. package/packages/opencode-tui-plugin/package.json +46 -0
  128. package/packages/visualizer/package.json +1 -1
  129. package/resources/workflows/bugfix.yaml +14 -0
  130. package/resources/workflows/epcc.yaml +12 -0
  131. package/resources/workflows/greenfield.yaml +16 -0
  132. package/resources/workflows/minor.yaml +8 -0
  133. package/resources/workflows/tdd.yaml +10 -0
  134. package/resources/workflows/waterfall.yaml +16 -0
@@ -8,14 +8,16 @@
8
8
  import { writeFile, readFile, mkdir, access } from 'node:fs/promises';
9
9
  import { join, dirname } from 'node:path';
10
10
  import { createLogger } from './logger.js';
11
- const logger = createLogger('BeadsStateManager');
11
+ const defaultLogger = createLogger('BeadsStateManager');
12
12
  /**
13
13
  * Manager for beads conversation state persistence
14
14
  */
15
15
  export class BeadsStateManager {
16
16
  projectPath;
17
- constructor(projectPath) {
17
+ logger;
18
+ constructor(projectPath, logger = defaultLogger) {
18
19
  this.projectPath = projectPath;
20
+ this.logger = logger;
19
21
  }
20
22
  /**
21
23
  * Get the path to the beads state file for a conversation
@@ -36,7 +38,7 @@ export class BeadsStateManager {
36
38
  updatedAt: new Date().toISOString(),
37
39
  };
38
40
  await this.saveState(state);
39
- logger.info('Created beads conversation state', {
41
+ this.logger.info('Created beads conversation state', {
40
42
  conversationId,
41
43
  epicId,
42
44
  phaseCount: phaseTasks.length,
@@ -54,7 +56,7 @@ export class BeadsStateManager {
54
56
  await access(statePath);
55
57
  const content = await readFile(statePath, 'utf-8');
56
58
  const state = JSON.parse(content);
57
- logger.debug('Retrieved beads conversation state', {
59
+ this.logger.debug('Retrieved beads conversation state', {
58
60
  conversationId,
59
61
  epicId: state.epicId,
60
62
  phaseCount: state.phaseTasks.length,
@@ -65,7 +67,7 @@ export class BeadsStateManager {
65
67
  catch (error) {
66
68
  if (error.code === 'ENOENT') {
67
69
  // File doesn't exist - this is normal for conversations without beads
68
- logger.debug('No beads state found for conversation', {
70
+ this.logger.debug('No beads state found for conversation', {
69
71
  conversationId,
70
72
  projectPath: this.projectPath,
71
73
  });
@@ -73,7 +75,7 @@ export class BeadsStateManager {
73
75
  }
74
76
  // Other errors (permission, invalid JSON, etc.)
75
77
  const errorMessage = error instanceof Error ? error.message : String(error);
76
- logger.warn('Failed to read beads state file', {
78
+ this.logger.warn('Failed to read beads state file', {
77
79
  error: errorMessage,
78
80
  conversationId,
79
81
  statePath,
@@ -92,7 +94,7 @@ export class BeadsStateManager {
92
94
  }
93
95
  const phaseTask = state.phaseTasks.find(task => task.phaseId === phase);
94
96
  if (phaseTask) {
95
- logger.debug('Found phase task ID', {
97
+ this.logger.debug('Found phase task ID', {
96
98
  conversationId,
97
99
  phase,
98
100
  taskId: phaseTask.taskId,
@@ -100,7 +102,7 @@ export class BeadsStateManager {
100
102
  });
101
103
  return phaseTask.taskId;
102
104
  }
103
- logger.debug('No task ID found for phase', {
105
+ this.logger.debug('No task ID found for phase', {
104
106
  conversationId,
105
107
  phase,
106
108
  availablePhases: state.phaseTasks.map(t => t.phaseId),
@@ -114,7 +116,7 @@ export class BeadsStateManager {
114
116
  async updateState(conversationId, updates) {
115
117
  const existingState = await this.getState(conversationId);
116
118
  if (!existingState) {
117
- logger.warn('Cannot update non-existent beads state', {
119
+ this.logger.warn('Cannot update non-existent beads state', {
118
120
  conversationId,
119
121
  projectPath: this.projectPath,
120
122
  });
@@ -127,7 +129,7 @@ export class BeadsStateManager {
127
129
  updatedAt: new Date().toISOString(),
128
130
  };
129
131
  await this.saveState(updatedState);
130
- logger.info('Updated beads conversation state', {
132
+ this.logger.info('Updated beads conversation state', {
131
133
  conversationId,
132
134
  updatedFields: Object.keys(updates),
133
135
  projectPath: this.projectPath,
@@ -142,7 +144,7 @@ export class BeadsStateManager {
142
144
  try {
143
145
  await access(statePath);
144
146
  await writeFile(statePath + '.backup', await readFile(statePath));
145
- logger.info('Cleaned up beads conversation state', {
147
+ this.logger.info('Cleaned up beads conversation state', {
146
148
  conversationId,
147
149
  statePath,
148
150
  projectPath: this.projectPath,
@@ -151,14 +153,14 @@ export class BeadsStateManager {
151
153
  catch (error) {
152
154
  if (error.code === 'ENOENT') {
153
155
  // File doesn't exist - nothing to clean up
154
- logger.debug('No beads state to clean up', {
156
+ this.logger.debug('No beads state to clean up', {
155
157
  conversationId,
156
158
  projectPath: this.projectPath,
157
159
  });
158
160
  return;
159
161
  }
160
162
  const errorMessage = error instanceof Error ? error.message : String(error);
161
- logger.warn('Failed to clean up beads state', {
163
+ this.logger.warn('Failed to clean up beads state', {
162
164
  error: errorMessage,
163
165
  conversationId,
164
166
  statePath,
@@ -191,7 +193,7 @@ export class BeadsStateManager {
191
193
  // Write state with pretty formatting for readability
192
194
  const content = JSON.stringify(state, null, 2);
193
195
  await writeFile(statePath, content, 'utf-8');
194
- logger.debug('Saved beads state to file', {
196
+ this.logger.debug('Saved beads state to file', {
195
197
  conversationId: state.conversationId,
196
198
  statePath,
197
199
  fileSize: content.length,
@@ -200,7 +202,7 @@ export class BeadsStateManager {
200
202
  }
201
203
  catch (error) {
202
204
  const errorMessage = error instanceof Error ? error.message : String(error);
203
- logger.error('Failed to save beads state', error instanceof Error ? error : new Error(errorMessage), {
205
+ this.logger.error('Failed to save beads state', error instanceof Error ? error : new Error(errorMessage), {
204
206
  conversationId: state.conversationId,
205
207
  statePath,
206
208
  projectPath: this.projectPath,
@@ -1 +1 @@
1
- {"version":3,"file":"beads-state-manager.js","sourceRoot":"","sources":["../src/beads-state-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"beads-state-manager.js","sourceRoot":"","sources":["../src/beads-state-manager.ts"],"names":[],"mappings":"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"}
@@ -186,36 +186,29 @@ export class FileDetectionManager {
186
186
  * Format file suggestions for LLM responses
187
187
  */
188
188
  formatSuggestions(detectionResult) {
189
- const suggestions = [];
189
+ const found = [];
190
190
  if (detectionResult.architecture.length > 0) {
191
- suggestions.push(`**Architecture files found:**`);
192
- for (const file of detectionResult.architecture.slice(0, 3)) {
193
- suggestions.push(` - ${file.relativePath} (${file.confidence} confidence)`);
194
- }
191
+ found.push(`architecture: ${detectionResult.architecture
192
+ .slice(0, 2)
193
+ .map(f => f.relativePath)
194
+ .join(', ')}`);
195
195
  }
196
196
  if (detectionResult.requirements.length > 0) {
197
- suggestions.push(`**Requirements files found:**`);
198
- for (const file of detectionResult.requirements.slice(0, 3)) {
199
- suggestions.push(` - ${file.relativePath} (${file.confidence} confidence)`);
200
- }
197
+ found.push(`requirements: ${detectionResult.requirements
198
+ .slice(0, 2)
199
+ .map(f => f.relativePath)
200
+ .join(', ')}`);
201
201
  }
202
202
  if (detectionResult.design.length > 0) {
203
- suggestions.push(`**Design files found:**`);
204
- for (const file of detectionResult.design.slice(0, 3)) {
205
- suggestions.push(` - ${file.relativePath} (${file.confidence} confidence)`);
206
- }
203
+ found.push(`design: ${detectionResult.design
204
+ .slice(0, 2)
205
+ .map(f => f.relativePath)
206
+ .join(', ')}`);
207
207
  }
208
- if (suggestions.length === 0) {
208
+ if (found.length === 0) {
209
209
  return 'No existing documentation files detected.';
210
210
  }
211
- return [
212
- 'Existing documentation files detected:',
213
- '',
214
- ...suggestions,
215
- '',
216
- 'You can use these files with `setup_project_docs` by providing the file paths instead of template names.',
217
- 'Example: `setup_project_docs({ architecture: "README.md", requirements: "docs/requirements.md", design: "freestyle" })`',
218
- ].join('\n');
211
+ return `Found: ${found.join('; ')}. Link existing files via \`setup_project_docs({ architecture: "path/to/file.md" })\` or use template names.`;
219
212
  }
220
213
  }
221
214
  //# sourceMappingURL=file-detection-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-detection-manager.js","sourceRoot":"","sources":["../src/file-detection-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-detection-manager.js","sourceRoot":"","sources":["../src/file-detection-manager.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@ export * from './git-manager.js';
17
17
  export * from './task-backend.js';
18
18
  export * from './beads-integration.js';
19
19
  export * from './beads-state-manager.js';
20
+ export * from './string-utils.js';
20
21
  export * from './logger.js';
21
22
  export * from './interaction-logger.js';
22
23
  export * from './instruction-generator.js';
@@ -23,6 +23,7 @@ export * from './task-backend.js';
23
23
  export * from './beads-integration.js';
24
24
  export * from './beads-state-manager.js';
25
25
  // Utilities and generators
26
+ export * from './string-utils.js';
26
27
  export * from './logger.js';
27
28
  export * from './interaction-logger.js';
28
29
  export * from './instruction-generator.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AAEzC,8BAA8B;AAC9B,cAAc,uBAAuB,CAAC;AAEtC,wCAAwC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AAEvC,kBAAkB;AAClB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAE1C,8BAA8B;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AAEzC,2BAA2B;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AAEzC,8BAA8B;AAC9B,cAAc,uBAAuB,CAAC;AAEtC,wCAAwC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AAEvC,kBAAkB;AAClB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAE1C,8BAA8B;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AAEzC,2BAA2B;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC"}
@@ -6,14 +6,14 @@
6
6
  * Supports custom state machine definitions for dynamic instruction generation.
7
7
  * Handles variable substitution for project artifact references.
8
8
  */
9
- import { PlanManager } from './plan-manager.js';
10
9
  import type { YamlStateMachine } from './state-machine-types.js';
10
+ import type { ILogger } from './logger.js';
11
11
  import type { IInstructionGenerator, InstructionContext, GeneratedInstructions } from './interfaces/instruction-generator.interface.js';
12
12
  export declare class InstructionGenerator implements IInstructionGenerator {
13
13
  private projectDocsManager;
14
- constructor(_planManager: PlanManager);
14
+ constructor(logger?: ILogger);
15
15
  /**
16
- * Set the state machine definition for dynamic instruction generation
16
+ * No-op: all phase context is provided per-call via InstructionContext.
17
17
  */
18
18
  setStateMachine(_stateMachine: YamlStateMachine): void;
19
19
  /**
@@ -33,8 +33,4 @@ export declare class InstructionGenerator implements IInstructionGenerator {
33
33
  * Enhance base instructions with context-specific information
34
34
  */
35
35
  private enhanceInstructions;
36
- /**
37
- * Capitalize phase name for display
38
- */
39
- private capitalizePhase;
40
36
  }
@@ -7,17 +7,17 @@
7
7
  * Handles variable substitution for project artifact references.
8
8
  */
9
9
  import { ProjectDocsManager } from './project-docs-manager.js';
10
+ import { createLogger } from './logger.js';
11
+ import { capitalizePhase } from './string-utils.js';
10
12
  export class InstructionGenerator {
11
13
  projectDocsManager;
12
- constructor(_planManager) {
13
- // planManager parameter kept for API compatibility but not stored since unused
14
- this.projectDocsManager = new ProjectDocsManager();
14
+ constructor(logger = createLogger('InstructionGenerator')) {
15
+ this.projectDocsManager = new ProjectDocsManager(logger);
15
16
  }
16
17
  /**
17
- * Set the state machine definition for dynamic instruction generation
18
+ * No-op: all phase context is provided per-call via InstructionContext.
18
19
  */
19
20
  setStateMachine(_stateMachine) {
20
- // stateMachine parameter kept for API compatibility but not stored since unused
21
21
  return;
22
22
  }
23
23
  /**
@@ -30,7 +30,6 @@ export class InstructionGenerator {
30
30
  const enhancedInstructions = await this.enhanceInstructions(substitutedInstructions, context);
31
31
  return {
32
32
  instructions: enhancedInstructions,
33
- planFileGuidance: 'Task management guidance is now included in main instructions',
34
33
  metadata: {
35
34
  phase: context.phase,
36
35
  planFilePath: context.conversationContext.planFilePath,
@@ -62,28 +61,21 @@ export class InstructionGenerator {
62
61
  * Enhance base instructions with context-specific information
63
62
  */
64
63
  async enhanceInstructions(baseInstructions, context) {
65
- const { phase, conversationContext, planFileExists } = context;
66
- const phaseName = this.capitalizePhase(phase);
64
+ const { phase, conversationContext, allowedFilePatterns } = context;
65
+ const phaseName = capitalizePhase(phase);
67
66
  let workflowSection = `---
68
- **Workflow Continuity:**
69
- Maintain \`${conversationContext.planFilePath}\`:
70
- - Work through tasks in the "${phaseName}" section; Focus on those tasks!
71
- - Add newly discovered tasks; log decisions in "Key Decisions"
72
- - DO NOT maintain tasks in other tools or documents than explicitly stated in this plan file!`;
73
- if (!planFileExists) {
74
- workflowSection += '\n- Note: plan file will be created on first update';
67
+ **Read \`${conversationContext.planFilePath}\`** for context.
68
+ - Focus on "${phaseName}" tasks, log decisions in "Key Decisions"
69
+ - Do NOT use other task/todo tools - use only the plan file for task tracking`;
70
+ // Add file restriction guidance if patterns are restricted
71
+ if (allowedFilePatterns &&
72
+ allowedFilePatterns.length > 0 &&
73
+ !allowedFilePatterns.includes('**/*') &&
74
+ !allowedFilePatterns.includes('*')) {
75
+ workflowSection += `\n- Files allowed: \`${allowedFilePatterns.join('`, `')}\``;
75
76
  }
76
- workflowSection += '\n\nCall `whats_next()` after each user message.';
77
+ workflowSection += '\n\nCall `whats_next()` after user messages.';
77
78
  return `## ${phaseName} Phase\n\n${baseInstructions}\n\n${workflowSection}`;
78
79
  }
79
- /**
80
- * Capitalize phase name for display
81
- */
82
- capitalizePhase(phase) {
83
- return phase
84
- .split('_')
85
- .map(word => word.charAt(0).toUpperCase() + word.slice(1))
86
- .join(' ');
87
- }
88
80
  }
89
81
  //# sourceMappingURL=instruction-generator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instruction-generator.js","sourceRoot":"","sources":["../src/instruction-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAS/D,MAAM,OAAO,oBAAoB;IACvB,kBAAkB,CAAqB;IAE/C,YAAY,YAAyB;QACnC,+EAA+E;QAC/E,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,aAA+B;QAC7C,gFAAgF;QAChF,OAAO;IACT,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CACxB,gBAAwB,EACxB,OAA2B;QAE3B,mDAAmD;QACnD,MAAM,uBAAuB,GAAG,IAAI,CAAC,yBAAyB,CAC5D,gBAAgB,EAChB,OAAO,CAAC,mBAAmB,CAAC,WAAW,EACvC,OAAO,CAAC,mBAAmB,CAAC,SAAS,CACtC,CAAC;QAEF,2DAA2D;QAC3D,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CACzD,uBAAuB,EACvB,OAAO,CACR,CAAC;QAEF,OAAO;YACL,YAAY,EAAE,oBAAoB;YAClC,gBAAgB,EACd,+DAA+D;YACjE,QAAQ,EAAE;gBACR,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,YAAY,EAAE,OAAO,CAAC,mBAAmB,CAAC,YAAY;gBACtD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;gBAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B;SACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,yBAAyB,CAC/B,YAAoB,EACpB,WAAmB,EACnB,SAAkB;QAElB,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CACpE,WAAW,EACX,SAAS,CACV,CAAC;QAEF,IAAI,MAAM,GAAG,YAAY,CAAC;QAC1B,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9D,oDAAoD;YACpD,MAAM,GAAG,MAAM,CAAC,OAAO,CACrB,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,EAC5C,KAAK,CACN,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,MAAc;QACjC,OAAO,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB,CAC/B,gBAAwB,EACxB,OAA2B;QAE3B,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;QAE/D,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAE9C,IAAI,eAAe,GAAG;;aAEb,mBAAmB,CAAC,YAAY;+BACd,SAAS;;8FAEsD,CAAC;QAE3F,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,eAAe,IAAI,qDAAqD,CAAC;QAC3E,CAAC;QAED,eAAe,IAAI,kDAAkD,CAAC;QAEtE,OAAO,MAAM,SAAS,aAAa,gBAAgB,OAAO,eAAe,EAAE,CAAC;IAC9E,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,KAAa;QACnC,OAAO,KAAK;aACT,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACzD,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;CACF"}
1
+ {"version":3,"file":"instruction-generator.js","sourceRoot":"","sources":["../src/instruction-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAG/D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAOpD,MAAM,OAAO,oBAAoB;IACvB,kBAAkB,CAAqB;IAE/C,YAAY,SAAkB,YAAY,CAAC,sBAAsB,CAAC;QAChE,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,aAA+B;QAC7C,OAAO;IACT,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CACxB,gBAAwB,EACxB,OAA2B;QAE3B,mDAAmD;QACnD,MAAM,uBAAuB,GAAG,IAAI,CAAC,yBAAyB,CAC5D,gBAAgB,EAChB,OAAO,CAAC,mBAAmB,CAAC,WAAW,EACvC,OAAO,CAAC,mBAAmB,CAAC,SAAS,CACtC,CAAC;QAEF,2DAA2D;QAC3D,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CACzD,uBAAuB,EACvB,OAAO,CACR,CAAC;QAEF,OAAO;YACL,YAAY,EAAE,oBAAoB;YAClC,QAAQ,EAAE;gBACR,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,YAAY,EAAE,OAAO,CAAC,mBAAmB,CAAC,YAAY;gBACtD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;gBAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B;SACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,yBAAyB,CAC/B,YAAoB,EACpB,WAAmB,EACnB,SAAkB;QAElB,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CACpE,WAAW,EACX,SAAS,CACV,CAAC;QAEF,IAAI,MAAM,GAAG,YAAY,CAAC;QAC1B,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9D,oDAAoD;YACpD,MAAM,GAAG,MAAM,CAAC,OAAO,CACrB,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,EAC5C,KAAK,CACN,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,MAAc;QACjC,OAAO,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB,CAC/B,gBAAwB,EACxB,OAA2B;QAE3B,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC;QAEpE,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAEzC,IAAI,eAAe,GAAG;WACf,mBAAmB,CAAC,YAAY;cAC7B,SAAS;8EACuD,CAAC;QAE3E,2DAA2D;QAC3D,IACE,mBAAmB;YACnB,mBAAmB,CAAC,MAAM,GAAG,CAAC;YAC9B,CAAC,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAClC,CAAC;YACD,eAAe,IAAI,wBAAwB,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAClF,CAAC;QAED,eAAe,IAAI,8CAA8C,CAAC;QAElE,OAAO,MAAM,SAAS,aAAa,gBAAgB,OAAO,eAAe,EAAE,CAAC;IAC9E,CAAC;CACF"}
@@ -11,13 +11,13 @@ export interface InstructionContext {
11
11
  conversationContext: ConversationContext;
12
12
  transitionReason: string;
13
13
  isModeled: boolean;
14
- planFileExists: boolean;
15
14
  /** Source of the instruction generation request - helps generators adapt output */
16
- instructionSource: 'proceed_to_phase' | 'whats_next';
15
+ instructionSource: 'proceed_to_phase' | 'whats_next' | 'start_development';
16
+ /** Glob patterns for files allowed to be edited in this phase (optional) */
17
+ allowedFilePatterns?: string[];
17
18
  }
18
19
  export interface GeneratedInstructions {
19
20
  instructions: string;
20
- planFileGuidance: string;
21
21
  metadata: {
22
22
  phase: string;
23
23
  planFilePath: string;
@@ -25,13 +25,22 @@ export interface GeneratedInstructions {
25
25
  isModeled: boolean;
26
26
  };
27
27
  }
28
+ /**
29
+ * Interface for enriching generated instructions with additional guidance.
30
+ * Implementations can append, prepend, or transform instruction content.
31
+ */
32
+ export interface InstructionEnricher {
33
+ enrichInstructions(instructions: GeneratedInstructions, context: InstructionContext): Promise<GeneratedInstructions>;
34
+ }
28
35
  /**
29
36
  * Interface for instruction generation operations
30
37
  * All instruction generators must implement this interface
31
38
  */
32
39
  export interface IInstructionGenerator {
33
40
  /**
34
- * Set the state machine definition for dynamic instruction generation
41
+ * Set the state machine definition for dynamic instruction generation.
42
+ * Implementations that derive all phase context from InstructionContext per-call
43
+ * may treat this as a no-op.
35
44
  */
36
45
  setStateMachine(stateMachine: YamlStateMachine): void;
37
46
  /**
@@ -52,4 +52,13 @@ export interface IPlanManager {
52
52
  * Ensure plan file is deleted (verify deletion)
53
53
  */
54
54
  ensurePlanFileDeleted(planFilePath: string): Promise<boolean>;
55
+ /**
56
+ * Generate base instructions for the LLM after a workflow is started.
57
+ * Instructs the LLM to populate the Goal section and define phase entrance
58
+ * criteria in the freshly created plan file.
59
+ *
60
+ * @param planFilePath - Path to the plan file
61
+ * @param workflowDocUrl - Optional URL for workflow documentation
62
+ */
63
+ getInitialPlanGuidance(planFilePath: string, workflowDocUrl?: string): string;
55
64
  }
@@ -1,16 +1,15 @@
1
1
  /**
2
- * Logging utility for Vibe Feature MCP Server
2
+ * Logging utility for workflows-core
3
3
  *
4
- * Provides structured logging with proper MCP compliance:
5
- * - Uses stderr for all local logging (MCP requirement)
6
- * - Supports MCP log message notifications to client
4
+ * Provides structured logging with pluggable sinks:
5
+ * - Uses stderr for all local logging by default
6
+ * - Supports external log sinks (e.g., MCP notifications) via LogSink interface
7
7
  * - Provides structured logging with proper levels:
8
8
  * - debug: Tracing and detailed execution flow
9
9
  * - info: Success operations and important milestones
10
10
  * - warn: Expected errors and recoverable issues
11
11
  * - error: Caught but unexpected errors
12
12
  */
13
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
14
13
  export declare enum LogLevel {
15
14
  DEBUG = 0,
16
15
  INFO = 1,
@@ -26,35 +25,65 @@ export interface LogContext {
26
25
  [key: string]: unknown;
27
26
  }
28
27
  /**
29
- * Set the MCP server instance for log notifications
28
+ * Interface for external log sinks (e.g., MCP notifications, console, file)
29
+ * Implementations can be registered to receive log messages
30
30
  */
31
- export declare function setMcpServerForLogging(server: McpServer): void;
31
+ export interface LogSink {
32
+ /**
33
+ * Called when a log message should be sent to the sink
34
+ * @param level - Log level (debug, info, warning, error)
35
+ * @param logger - Component name that generated the log
36
+ * @param message - Log message
37
+ * @param context - Optional structured context
38
+ */
39
+ log(level: 'debug' | 'info' | 'warning' | 'error', logger: string, message: string, context?: LogContext): Promise<void>;
40
+ }
41
+ /**
42
+ * Logger interface for dependency injection
43
+ * Allows handlers to receive a logger without importing the global createLogger
44
+ */
45
+ export interface ILogger {
46
+ debug(message: string, context?: LogContext): void;
47
+ info(message: string, context?: LogContext): void;
48
+ warn(message: string, context?: LogContext): void;
49
+ error(message: string, error?: Error, context?: LogContext): void;
50
+ }
51
+ /**
52
+ * Factory function type for creating loggers
53
+ * Can be injected to provide different logging implementations
54
+ */
55
+ export type LoggerFactory = (component: string) => ILogger;
56
+ /**
57
+ * Register a log sink to receive log messages
58
+ * Used by mcp-server to register MCP notification sink
59
+ */
60
+ export declare function registerLogSink(sink: LogSink): void;
32
61
  /**
33
- * Set the logging level from MCP client request
62
+ * Clear the registered log sink
34
63
  */
35
- export declare function setMcpLoggingLevel(level: string): void;
64
+ export declare function clearLogSink(): void;
65
+ /**
66
+ * Set the logging level programmatically
67
+ */
68
+ export declare function setLoggingLevel(level: LogLevel): void;
69
+ /**
70
+ * Set the logging level from a string (e.g., from MCP client request)
71
+ */
72
+ export declare function setLoggingLevelFromString(level: string): void;
36
73
  declare class Logger {
37
74
  private component;
38
- private explicitLogLevel?;
75
+ private explicitLogLevel;
39
76
  constructor(component: string, logLevel?: LogLevel);
40
77
  private getCurrentLogLevel;
41
78
  private getLogLevelFromEnv;
42
79
  private shouldLog;
43
80
  private formatMessage;
44
81
  /**
45
- * Send log message to MCP client if server is available and level is appropriate
82
+ * Send log message to registered sink if available
46
83
  */
47
- private sendMcpLogMessage;
84
+ private sendToSink;
48
85
  debug(message: string, context?: LogContext): void;
49
86
  info(message: string, context?: LogContext): void;
50
- /**
51
- * Send enhanced MCP notifications with better formatting for important events
52
- */
53
- private sendEnhancedMcpNotification;
54
- /**
55
- * Capitalize phase name for display
56
- */
57
- private capitalizePhase;
58
87
  warn(message: string, context?: LogContext): void;
59
88
  error(message: string, error?: Error, context?: LogContext): void;
60
89
  child(childComponent: string): Logger;