@codemcp/workflows-core 3.6.3 → 4.0.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.
- package/dist/instruction-generator.js +4 -0
- package/dist/instruction-generator.js.map +1 -1
- package/dist/system-prompt-generator.d.ts +0 -3
- package/dist/system-prompt-generator.js +4 -77
- package/dist/system-prompt-generator.js.map +1 -1
- package/dist/transition-engine.js +0 -8
- package/dist/transition-engine.js.map +1 -1
- package/package.json +1 -1
- package/resources/workflows/adr.yaml +11 -7
|
@@ -92,6 +92,10 @@ ${baseInstructions}
|
|
|
92
92
|
enhanced +=
|
|
93
93
|
'\n\n**Note**: Plan file will be created when you first update it.';
|
|
94
94
|
}
|
|
95
|
+
// Add continuity and task management instructions
|
|
96
|
+
enhanced += `\n\n**Important Reminders:**
|
|
97
|
+
- Use ONLY the development plan for task management - do not use your own task management tools
|
|
98
|
+
- Call whats_next() after the next user message to maintain the development workflow`;
|
|
95
99
|
return enhanced;
|
|
96
100
|
}
|
|
97
101
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instruction-generator.js","sourceRoot":"","sources":["../src/instruction-generator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"instruction-generator.js","sourceRoot":"","sources":["../src/instruction-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,89 +25,16 @@ export function generateSystemPrompt(stateMachine) {
|
|
|
25
25
|
function generateSimpleSystemPrompt(_stateMachine) {
|
|
26
26
|
logger.debug('Generating system prompt');
|
|
27
27
|
const systemPrompt = `
|
|
28
|
-
You are an AI assistant that helps users develop software features.
|
|
29
|
-
You do this by following a structured development process guided by the responsible-vibe-mcp server.
|
|
28
|
+
You are an AI assistant that helps users develop software features using the responsible-vibe-mcp server.
|
|
30
29
|
|
|
31
|
-
IMPORTANT:
|
|
30
|
+
IMPORTANT: Call whats_next() after each user message to get phase-specific instructions and maintain the development workflow.
|
|
32
31
|
|
|
33
|
-
|
|
32
|
+
Each tool call returns a JSON response with an "instructions" field. Follow these instructions immediately after you receive them.
|
|
34
33
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
Each tool call will return a JSON formatted response with an "instructions" field in it. Follow these instructions immediately after you received them.
|
|
38
|
-
|
|
39
|
-
1. **Call whats_next() after each user interaction** to get phase-specific instructions
|
|
40
|
-
2. **Follow the instructions** provided by responsible-vibe-mcp exactly
|
|
41
|
-
3. **Update the plan file** as directed to maintain project memory
|
|
42
|
-
4. **Mark completed tasks** with [x] when instructed
|
|
43
|
-
5. **Provide conversation context** in each whats_next() call
|
|
44
|
-
|
|
45
|
-
## Development Workflow
|
|
46
|
-
|
|
47
|
-
The responsible-vibe-mcp server will guide you through development phases specific to the chosen workflow. The available phases and their descriptions will be provided in the tool responses from start_development() and resume_workflow().
|
|
48
|
-
|
|
49
|
-
## Using whats_next()
|
|
50
|
-
|
|
51
|
-
After each user interaction, call:
|
|
52
|
-
|
|
53
|
-
\`\`\`
|
|
54
|
-
whats_next({
|
|
55
|
-
context: "Brief description of current situation",
|
|
56
|
-
user_input: "User's latest message",
|
|
57
|
-
conversation_summary: "Summary of conversation progress so far",
|
|
58
|
-
recent_messages: [
|
|
59
|
-
{ role: "assistant", content: "Your recent message" },
|
|
60
|
-
{ role: "user", content: "User's recent response" }
|
|
61
|
-
]
|
|
62
|
-
})
|
|
63
|
-
\`\`\`
|
|
64
|
-
|
|
65
|
-
## Phase Transitions
|
|
66
|
-
|
|
67
|
-
You can transition to the next phase when the tasks of the current phase were completed and the entrance criteria for the current phase have been met.
|
|
68
|
-
|
|
69
|
-
Before suggesting any phase transition:
|
|
70
|
-
- **Check the plan file** for the "Phase Entrance Criteria" section
|
|
71
|
-
- **Evaluate current progress** against the defined criteria
|
|
72
|
-
- **Only suggest transitions** when criteria are clearly met
|
|
73
|
-
- **Be specific** about which criteria have been satisfied
|
|
74
|
-
- **Ask the user** whether he agrees that the current phase is complete.
|
|
75
|
-
|
|
76
|
-
\`\`\`
|
|
77
|
-
proceed_to_phase({
|
|
78
|
-
target_phase: "target_phase_name", // Use phase names from the current workflow
|
|
79
|
-
reason: "Why you're transitioning"
|
|
80
|
-
})
|
|
81
|
-
\`\`\`
|
|
82
|
-
|
|
83
|
-
## Plan File Management
|
|
84
|
-
|
|
85
|
-
- Add new tasks as they are identified
|
|
86
|
-
- Mark tasks complete [x] when finished
|
|
87
|
-
- Document important decisions in the Decisions Log
|
|
88
|
-
- Keep the structure clean and readable
|
|
89
|
-
|
|
90
|
-
## Conversation Context Guidelines
|
|
91
|
-
|
|
92
|
-
Since responsible-vibe-mcp operates statelessly, provide:
|
|
93
|
-
|
|
94
|
-
- **conversation_summary**: What the user wants, key decisions, progress
|
|
95
|
-
- **recent_messages**: Last 3-5 relevant exchanges
|
|
96
|
-
- **context**: Current situation and what you're trying to determine
|
|
97
|
-
|
|
98
|
-
Remember: responsible-vibe-mcp guides the development process but relies on you to provide conversation context and follow its instructions precisely.`;
|
|
34
|
+
Do not use your own task management tools. Use the development plan which you will retrieve via whats_next() for all task tracking and project management.`;
|
|
99
35
|
logger.info('System prompt generated successfully', {
|
|
100
36
|
promptLength: systemPrompt.length,
|
|
101
37
|
});
|
|
102
38
|
return systemPrompt;
|
|
103
39
|
}
|
|
104
|
-
/**
|
|
105
|
-
* Capitalize phase name for display
|
|
106
|
-
*/
|
|
107
|
-
// function capitalizePhase(phase: string): string {
|
|
108
|
-
// return phase
|
|
109
|
-
// .split('_')
|
|
110
|
-
// .map(word => word.charAt(0).toUpperCase() + word.slice(1))
|
|
111
|
-
// .join(' ');
|
|
112
|
-
// }
|
|
113
40
|
//# sourceMappingURL=system-prompt-generator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system-prompt-generator.js","sourceRoot":"","sources":["../src/system-prompt-generator.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,MAAM,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAC;AAErD;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,YAA8B;IACjE,MAAM,CAAC,KAAK,CAAC,wDAAwD,EAAE;QACrE,gBAAgB,EAAE,YAAY,CAAC,IAAI;QACnC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM;KACpD,CAAC,CAAC;IAEH,OAAO,0BAA0B,CAAC,YAAY,CAAC,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,SAAS,0BAA0B,CAAC,aAA+B;IACjE,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAEzC,MAAM,YAAY,GAAG
|
|
1
|
+
{"version":3,"file":"system-prompt-generator.js","sourceRoot":"","sources":["../src/system-prompt-generator.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,MAAM,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAC;AAErD;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,YAA8B;IACjE,MAAM,CAAC,KAAK,CAAC,wDAAwD,EAAE;QACrE,gBAAgB,EAAE,YAAY,CAAC,IAAI;QACnC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM;KACpD,CAAC,CAAC;IAEH,OAAO,0BAA0B,CAAC,YAAY,CAAC,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,SAAS,0BAA0B,CAAC,aAA+B;IACjE,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAEzC,MAAM,YAAY,GAAG;;;;;;;2JAOoI,CAAC;IAE1J,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE;QAClD,YAAY,EAAE,YAAY,CAAC,MAAM;KAClC,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
|
@@ -34,13 +34,6 @@ export class TransitionEngine {
|
|
|
34
34
|
* Check if this is the first call from initial state based on database interactions
|
|
35
35
|
*/
|
|
36
36
|
async isFirstCallFromInitialState(context) {
|
|
37
|
-
// Get workflow name from conversation state
|
|
38
|
-
const conversationState = await this.conversationManager?.getConversationState(context.conversationId);
|
|
39
|
-
const workflowName = conversationState?.workflowName;
|
|
40
|
-
const stateMachine = this.workflowManager.loadWorkflowForProject(context.projectPath, workflowName);
|
|
41
|
-
const isInitialState = context.currentPhase === stateMachine.initial_state;
|
|
42
|
-
if (!isInitialState)
|
|
43
|
-
return false;
|
|
44
37
|
// Check database for any previous interactions in this conversation
|
|
45
38
|
if (!this.conversationManager) {
|
|
46
39
|
logger.warn('ConversationManager not set, assuming first call');
|
|
@@ -48,7 +41,6 @@ export class TransitionEngine {
|
|
|
48
41
|
}
|
|
49
42
|
const hasInteractions = await this.conversationManager.hasInteractions(context.conversationId);
|
|
50
43
|
logger.debug('Checking first call from initial state', {
|
|
51
|
-
isInitialState,
|
|
52
44
|
hasInteractions,
|
|
53
45
|
conversationId: context.conversationId,
|
|
54
46
|
currentPhase: context.currentPhase,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transition-engine.js","sourceRoot":"","sources":["../src/transition-engine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGxD,MAAM,MAAM,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAC;AAmBhD,MAAM,OAAO,gBAAgB;IACnB,kBAAkB,CAAqB;IACvC,eAAe,CAAkB;IACjC,mBAAmB,CAKzB;IAEF,YAAY,WAAmB;QAC7B,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC;QACnD,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAE7C,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,sBAAsB,CAAC,mBAKtB;QACC,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,WAAmB,EAAE,YAAqB;QACxD,uDAAuD;QACvD,OAAO,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAChD,WAAW,EACX,YAAY,CACb,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,2BAA2B,CACvC,OAA0B;QAE1B,
|
|
1
|
+
{"version":3,"file":"transition-engine.js","sourceRoot":"","sources":["../src/transition-engine.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -30,8 +30,10 @@ states:
|
|
|
30
30
|
2. Look for existing ADRs to understand current format/numbering
|
|
31
31
|
3. Help user clearly define the architectural problem or decision needed
|
|
32
32
|
4. Identify key stakeholders who should be involved
|
|
33
|
-
5.
|
|
34
|
-
|
|
33
|
+
5. IMPORTANT: Gather information about the quality attributes (non-functional requirements)
|
|
34
|
+
that are relevant to this decision (e.g., performance, security, maintainability)
|
|
35
|
+
6. Document the context and problem statement
|
|
36
|
+
7. Create initial ADR structure using existing format or template above
|
|
35
37
|
|
|
36
38
|
Focus on understanding WHAT decision needs to be made and WHY it's important.
|
|
37
39
|
Don't evaluate technical options or make the decision yet - that happens in the decide phase.
|
|
@@ -69,15 +71,17 @@ states:
|
|
|
69
71
|
research:
|
|
70
72
|
description: 'Investigate options, gather information, and analyze alternatives'
|
|
71
73
|
default_instructions: |
|
|
72
|
-
You are in the research phase for the ADR.
|
|
74
|
+
You are in the research phase for the ADR. This is the most important phase of the workflow.
|
|
73
75
|
|
|
74
76
|
**Your tasks:**
|
|
75
77
|
1. Research available options and alternatives for the decision
|
|
76
78
|
2. Gather technical information, constraints, and requirements
|
|
77
|
-
3. Analyze trade-offs between different approaches
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
3. Analyze trade-offs between different approaches:
|
|
80
|
+
- Evaluate each option based on the defined quality attributes
|
|
81
|
+
- Many solutions will require knowledge about a particular technology. Query the user about his experience with it.
|
|
82
|
+
- Don't jump to judgments: Consider the user's perspective on the decision-making process
|
|
83
|
+
4. Document findings in the "Alternatives Considered" section
|
|
84
|
+
5. Identify pros and cons for each option
|
|
81
85
|
|
|
82
86
|
Work with the user to thoroughly understand all viable options before making a decision.
|
|
83
87
|
Update the ADR with research findings but don't make the final decision yet.
|