rrce-workflow 0.2.84 → 0.2.86
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/agent-core/prompts/doctor.md +4 -1
- package/agent-core/prompts/documentation.md +4 -1
- package/agent-core/prompts/executor.md +4 -1
- package/agent-core/prompts/init.md +4 -1
- package/agent-core/prompts/planning_discussion.md +4 -1
- package/agent-core/prompts/research_discussion.md +4 -1
- package/agent-core/prompts/sync.md +4 -1
- package/agent-core/templates/doctor_output.md +2 -2
- package/agent-core/templates/documentation_output.md +2 -2
- package/agent-core/templates/executor_output.md +2 -2
- package/agent-core/templates/init_output.md +3 -4
- package/agent-core/templates/planning_output.md +2 -2
- package/agent-core/templates/research_output.md +2 -2
- package/dist/index.js +62 -34
- package/package.json +1 -1
|
@@ -18,8 +18,11 @@ auto-identity:
|
|
|
18
18
|
|
|
19
19
|
You are the Project Doctor for RRCE-Workflow. Perform a health check on the codebase to identify issues, technical debt, and improvement opportunities using semantic search for efficient discovery.
|
|
20
20
|
|
|
21
|
-
## Path Resolution
|
|
21
|
+
## Path Resolution (CRITICAL)
|
|
22
22
|
Use the pre-resolved paths from the "System Resolved Paths" table in the context preamble.
|
|
23
|
+
**CRITICAL:** When filling templates, replace `{{RRCE_DATA}}` with the EXACT value from the "System Resolved Paths" table (usually ending in `.rrce-workflow/`).
|
|
24
|
+
**DO NOT** use `.rrce/` or any other guessed path. If you see `{{RRCE_DATA}}` in a template, use the system-provided value.
|
|
25
|
+
|
|
23
26
|
For details, see: `{{RRCE_DATA}}/docs/path-resolution.md`
|
|
24
27
|
|
|
25
28
|
## Pipeline Position
|
|
@@ -20,8 +20,11 @@ auto-identity:
|
|
|
20
20
|
|
|
21
21
|
You are the Documentation Lead for the project. Operate like a senior engineering manager responsible for synthesizing knowledge and preparing smooth handovers.
|
|
22
22
|
|
|
23
|
-
## Path Resolution
|
|
23
|
+
## Path Resolution (CRITICAL)
|
|
24
24
|
Use the pre-resolved paths from the "System Resolved Paths" table in the context preamble.
|
|
25
|
+
**CRITICAL:** When filling templates, replace `{{RRCE_DATA}}` with the EXACT value from the "System Resolved Paths" table (usually ending in `.rrce-workflow/`).
|
|
26
|
+
**DO NOT** use `.rrce/` or any other guessed path. If you see `{{RRCE_DATA}}` in a template, use the system-provided value.
|
|
27
|
+
|
|
25
28
|
For details, see: `{{RRCE_DATA}}/docs/path-resolution.md`
|
|
26
29
|
|
|
27
30
|
### Tool Usage Guidance
|
|
@@ -16,8 +16,11 @@ auto-identity:
|
|
|
16
16
|
|
|
17
17
|
You are the Executor for RRCE-Workflow. You are the **ONLY agent in the pipeline authorized to modify source code** in `{{WORKSPACE_ROOT}}`. Operate like a senior individual contributor who ships clean, well-tested code aligned precisely with the execution plan.
|
|
18
18
|
|
|
19
|
-
## Path Resolution
|
|
19
|
+
## Path Resolution (CRITICAL)
|
|
20
20
|
Use the pre-resolved paths from the "System Resolved Paths" table in the context preamble.
|
|
21
|
+
**CRITICAL:** When filling templates, replace `{{RRCE_DATA}}` with the EXACT value from the "System Resolved Paths" table (usually ending in `.rrce-workflow/`).
|
|
22
|
+
**DO NOT** use `.rrce/` or any other guessed path. If you see `{{RRCE_DATA}}` in a template, use the system-provided value.
|
|
23
|
+
|
|
21
24
|
For details, see: `{{RRCE_DATA}}/docs/path-resolution.md`
|
|
22
25
|
|
|
23
26
|
### Tool Usage Guidance
|
|
@@ -15,8 +15,11 @@ auto-identity:
|
|
|
15
15
|
|
|
16
16
|
You are the Project Initializer for RRCE-Workflow. Your mission: create a comprehensive project context that enables all downstream agents to work effectively, then build the semantic search index.
|
|
17
17
|
|
|
18
|
-
## Path Resolution
|
|
18
|
+
## Path Resolution (CRITICAL)
|
|
19
19
|
Use the pre-resolved paths from the "System Resolved Paths" table in the context preamble.
|
|
20
|
+
**CRITICAL:** When filling templates (like `init_output.md`), replace `{{RRCE_DATA}}` with the EXACT value from the "System Resolved Paths" table (usually ending in `.rrce-workflow/`).
|
|
21
|
+
**DO NOT** use `.rrce/` or any other guessed path. If you see `{{RRCE_DATA}}` in a template, use the system-provided value.
|
|
22
|
+
|
|
20
23
|
For details, see: `{{RRCE_DATA}}/docs/path-resolution.md`
|
|
21
24
|
|
|
22
25
|
### Tool Usage Guidance
|
|
@@ -13,8 +13,11 @@ auto-identity:
|
|
|
13
13
|
|
|
14
14
|
You are the Planning & Task Orchestrator for RRCE-Workflow. Your mission: transform the research brief into a clear, actionable execution plan that the Executor can follow with zero ambiguity.
|
|
15
15
|
|
|
16
|
-
## Path Resolution
|
|
16
|
+
## Path Resolution (CRITICAL)
|
|
17
17
|
Use the pre-resolved paths from the "System Resolved Paths" table in the context preamble.
|
|
18
|
+
**CRITICAL:** When filling templates, replace `{{RRCE_DATA}}` with the EXACT value from the "System Resolved Paths" table (usually ending in `.rrce-workflow/`).
|
|
19
|
+
**DO NOT** use `.rrce/` or any other guessed path. If you see `{{RRCE_DATA}}` in a template, use the system-provided value.
|
|
20
|
+
|
|
18
21
|
For details, see: `{{RRCE_DATA}}/docs/path-resolution.md`
|
|
19
22
|
|
|
20
23
|
### Tool Usage Guidance
|
|
@@ -20,8 +20,11 @@ auto-identity:
|
|
|
20
20
|
|
|
21
21
|
You are the Research & Discussion Lead for RRCE-Workflow. Your mission: achieve 100% understanding of the user's request through constructive, challenging dialogue before any planning or implementation begins.
|
|
22
22
|
|
|
23
|
-
## Path Resolution
|
|
23
|
+
## Path Resolution (CRITICAL)
|
|
24
24
|
Use the pre-resolved paths from the "System Resolved Paths" table in the context preamble.
|
|
25
|
+
**CRITICAL:** When filling templates, replace `{{RRCE_DATA}}` with the EXACT value from the "System Resolved Paths" table (usually ending in `.rrce-workflow/`).
|
|
26
|
+
**DO NOT** use `.rrce/` or any other guessed path. If you see `{{RRCE_DATA}}` in a template, use the system-provided value.
|
|
27
|
+
|
|
25
28
|
For details, see: `{{RRCE_DATA}}/docs/path-resolution.md`
|
|
26
29
|
|
|
27
30
|
### Tool Usage Guidance
|
|
@@ -14,8 +14,11 @@ auto-identity:
|
|
|
14
14
|
|
|
15
15
|
You are the Knowledge Sync Lead. Act like a senior architect charged with keeping the RRCE knowledge cache authoritative and current.
|
|
16
16
|
|
|
17
|
-
## Path Resolution
|
|
17
|
+
## Path Resolution (CRITICAL)
|
|
18
18
|
Use the pre-resolved paths from the "System Resolved Paths" table in the context preamble.
|
|
19
|
+
**CRITICAL:** When filling templates, replace `{{RRCE_DATA}}` with the EXACT value from the "System Resolved Paths" table (usually ending in `.rrce-workflow/`).
|
|
20
|
+
**DO NOT** use `.rrce/` or any other guessed path. If you see `{{RRCE_DATA}}` in a template, use the system-provided value.
|
|
21
|
+
|
|
19
22
|
For details, see: `{{RRCE_DATA}}/docs/path-resolution.md`
|
|
20
23
|
|
|
21
24
|
### Tool Usage Guidance
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
3. Add findings under appropriate priority sections
|
|
8
8
|
4. Remove empty sections and placeholder rows
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
- {{RRCE_DATA}}: Storage path for knowledge/tasks
|
|
10
|
+
SYSTEM PATH VARIABLES (Must be replaced by agent using System Resolved Paths):
|
|
11
|
+
- {{RRCE_DATA}}: Storage path for knowledge/tasks (Use value from system context!)
|
|
12
12
|
- {{WORKSPACE_ROOT}}: Source code directory
|
|
13
13
|
|
|
14
14
|
AGENT-FILLED VARIABLES:
|
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
2. Replace {{variable}} placeholders with actual values
|
|
10
10
|
3. Remove empty sections
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
- {{RRCE_DATA}}: Storage path for knowledge/tasks
|
|
12
|
+
SYSTEM PATH VARIABLES (Must be replaced by agent using System Resolved Paths):
|
|
13
|
+
- {{RRCE_DATA}}: Storage path for knowledge/tasks (Use value from system context!)
|
|
14
14
|
- {{WORKSPACE_NAME}}: Project name
|
|
15
15
|
|
|
16
16
|
AGENT-FILLED VARIABLES:
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
3. Update Implementation Steps table as work progresses
|
|
8
8
|
4. Remove empty sections
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
- {{RRCE_DATA}}: Storage path for knowledge/tasks
|
|
10
|
+
SYSTEM PATH VARIABLES (Must be replaced by agent using System Resolved Paths):
|
|
11
|
+
- {{RRCE_DATA}}: Storage path for knowledge/tasks (Use value from system context!)
|
|
12
12
|
- {{WORKSPACE_NAME}}: Project name
|
|
13
13
|
|
|
14
14
|
AGENT-FILLED VARIABLES:
|
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
3. Delete sections marked (OPTIONAL) if empty after population
|
|
8
8
|
4. Fill in remaining sections with discovered information
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
SYSTEM PATH VARIABLES (Must be replaced by agent using System Resolved Paths):
|
|
11
11
|
- {{WORKSPACE_ROOT}}: Source code directory
|
|
12
12
|
- {{WORKSPACE_NAME}}: Project name
|
|
13
|
-
- {{RRCE_DATA}}: Storage path for knowledge/tasks
|
|
13
|
+
- {{RRCE_DATA}}: Storage path for knowledge/tasks (Use value from system context!)
|
|
14
14
|
- {{RRCE_HOME}}: Global RRCE home directory
|
|
15
15
|
|
|
16
16
|
AGENT-FILLED VARIABLES:
|
|
@@ -138,8 +138,7 @@
|
|
|
138
138
|
- **Async Patterns**:
|
|
139
139
|
- **Logging**:
|
|
140
140
|
- **Configuration**:
|
|
141
|
-
|
|
142
|
-
### Code Quality Gates
|
|
141
|
+
- **Code Quality Gates**:
|
|
143
142
|
- [ ] Type checking enforced
|
|
144
143
|
- [ ] Lint checks in CI
|
|
145
144
|
- [ ] Code review required
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
2. Replace {{variable}} placeholders with actual values
|
|
7
7
|
3. Remove unused table rows and empty sections
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
- {{RRCE_DATA}}: Storage path for knowledge/tasks
|
|
9
|
+
SYSTEM PATH VARIABLES (Must be replaced by agent using System Resolved Paths):
|
|
10
|
+
- {{RRCE_DATA}}: Storage path for knowledge/tasks (Use value from system context!)
|
|
11
11
|
- {{WORKSPACE_NAME}}: Project name
|
|
12
12
|
|
|
13
13
|
AGENT-FILLED VARIABLES:
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
2. Replace {{variable}} placeholders with actual values
|
|
7
7
|
3. Delete sections that are empty after population
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
- {{RRCE_DATA}}: Storage path for knowledge/tasks
|
|
9
|
+
SYSTEM PATH VARIABLES (Must be replaced by agent using System Resolved Paths):
|
|
10
|
+
- {{RRCE_DATA}}: Storage path for knowledge/tasks (Use value from system context!)
|
|
11
11
|
- {{WORKSPACE_NAME}}: Project name
|
|
12
12
|
|
|
13
13
|
AGENT-FILLED VARIABLES:
|
package/dist/index.js
CHANGED
|
@@ -100,17 +100,45 @@ function getConfigPath(workspaceRoot) {
|
|
|
100
100
|
if (fs2.existsSync(mcpConfigPath)) {
|
|
101
101
|
const mcpContent = fs2.readFileSync(mcpConfigPath, "utf-8");
|
|
102
102
|
const lines = mcpContent.split("\n");
|
|
103
|
+
let inProjects = false;
|
|
103
104
|
let currentName = "";
|
|
105
|
+
let currentPath = "";
|
|
104
106
|
for (let i = 0; i < lines.length; i++) {
|
|
105
|
-
const line = lines[i]
|
|
106
|
-
|
|
107
|
-
if (
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
107
|
+
const line = lines[i];
|
|
108
|
+
const trimmed = line.trim();
|
|
109
|
+
if (trimmed.startsWith("projects:")) {
|
|
110
|
+
inProjects = true;
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
if (inProjects && line.match(/^[a-zA-Z0-9_-]+:/)) {
|
|
114
|
+
inProjects = false;
|
|
115
|
+
}
|
|
116
|
+
if (!inProjects) continue;
|
|
117
|
+
if (trimmed.startsWith("-")) {
|
|
118
|
+
if (currentName && currentPath) {
|
|
119
|
+
if (currentPath === workspaceRoot || currentPath === `"${workspaceRoot}"` || currentPath === `'${workspaceRoot}'`) {
|
|
120
|
+
return path2.join(rrceHome, "workspaces", currentName, "config.yaml");
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
currentName = "";
|
|
124
|
+
currentPath = "";
|
|
125
|
+
const contentAfterDash = trimmed.substring(1).trim();
|
|
126
|
+
if (contentAfterDash.startsWith("name:")) {
|
|
127
|
+
currentName = contentAfterDash.replace("name:", "").trim();
|
|
128
|
+
} else if (contentAfterDash.startsWith("path:")) {
|
|
129
|
+
currentPath = contentAfterDash.replace("path:", "").trim();
|
|
113
130
|
}
|
|
131
|
+
} else {
|
|
132
|
+
if (trimmed.startsWith("name:")) {
|
|
133
|
+
currentName = trimmed.replace("name:", "").trim();
|
|
134
|
+
} else if (trimmed.startsWith("path:")) {
|
|
135
|
+
currentPath = trimmed.replace("path:", "").trim();
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
if (currentName && currentPath) {
|
|
140
|
+
if (currentPath === workspaceRoot || currentPath === `"${workspaceRoot}"` || currentPath === `'${workspaceRoot}'`) {
|
|
141
|
+
return path2.join(rrceHome, "workspaces", currentName, "config.yaml");
|
|
114
142
|
}
|
|
115
143
|
}
|
|
116
144
|
}
|
|
@@ -2844,7 +2872,7 @@ function registerToolHandlers(server) {
|
|
|
2844
2872
|
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
2845
2873
|
const tools = [
|
|
2846
2874
|
{
|
|
2847
|
-
name: "
|
|
2875
|
+
name: "search_knowledge",
|
|
2848
2876
|
description: "Search across all exposed project knowledge bases",
|
|
2849
2877
|
inputSchema: {
|
|
2850
2878
|
type: "object",
|
|
@@ -2856,7 +2884,7 @@ function registerToolHandlers(server) {
|
|
|
2856
2884
|
}
|
|
2857
2885
|
},
|
|
2858
2886
|
{
|
|
2859
|
-
name: "
|
|
2887
|
+
name: "index_knowledge",
|
|
2860
2888
|
description: "Update the semantic search index for a specific project",
|
|
2861
2889
|
inputSchema: {
|
|
2862
2890
|
type: "object",
|
|
@@ -2868,12 +2896,12 @@ function registerToolHandlers(server) {
|
|
|
2868
2896
|
}
|
|
2869
2897
|
},
|
|
2870
2898
|
{
|
|
2871
|
-
name: "
|
|
2899
|
+
name: "list_projects",
|
|
2872
2900
|
description: "List all projects exposed via MCP. Use these names for project-specific tools.",
|
|
2873
2901
|
inputSchema: { type: "object", properties: {} }
|
|
2874
2902
|
},
|
|
2875
2903
|
{
|
|
2876
|
-
name: "
|
|
2904
|
+
name: "get_project_context",
|
|
2877
2905
|
description: "Get the project context/architecture for a specific project",
|
|
2878
2906
|
inputSchema: {
|
|
2879
2907
|
type: "object",
|
|
@@ -2882,12 +2910,12 @@ function registerToolHandlers(server) {
|
|
|
2882
2910
|
}
|
|
2883
2911
|
},
|
|
2884
2912
|
{
|
|
2885
|
-
name: "
|
|
2913
|
+
name: "list_agents",
|
|
2886
2914
|
description: "List available agents (e.g. init, plan) and their arguments. Use this to discover which agent to call.",
|
|
2887
2915
|
inputSchema: { type: "object", properties: {} }
|
|
2888
2916
|
},
|
|
2889
2917
|
{
|
|
2890
|
-
name: "
|
|
2918
|
+
name: "get_agent_prompt",
|
|
2891
2919
|
description: 'Get the system prompt for a specific agent. Accepts agent Name (e.g. "RRCE Init") or ID (e.g. "init").',
|
|
2892
2920
|
inputSchema: {
|
|
2893
2921
|
type: "object",
|
|
@@ -2899,7 +2927,7 @@ function registerToolHandlers(server) {
|
|
|
2899
2927
|
}
|
|
2900
2928
|
},
|
|
2901
2929
|
{
|
|
2902
|
-
name: "
|
|
2930
|
+
name: "list_tasks",
|
|
2903
2931
|
description: "List all tasks for a project",
|
|
2904
2932
|
inputSchema: {
|
|
2905
2933
|
type: "object",
|
|
@@ -2908,7 +2936,7 @@ function registerToolHandlers(server) {
|
|
|
2908
2936
|
}
|
|
2909
2937
|
},
|
|
2910
2938
|
{
|
|
2911
|
-
name: "
|
|
2939
|
+
name: "get_task",
|
|
2912
2940
|
description: "Get details of a specific task",
|
|
2913
2941
|
inputSchema: {
|
|
2914
2942
|
type: "object",
|
|
@@ -2920,7 +2948,7 @@ function registerToolHandlers(server) {
|
|
|
2920
2948
|
}
|
|
2921
2949
|
},
|
|
2922
2950
|
{
|
|
2923
|
-
name: "
|
|
2951
|
+
name: "create_task",
|
|
2924
2952
|
description: "Create a new task in the project",
|
|
2925
2953
|
inputSchema: {
|
|
2926
2954
|
type: "object",
|
|
@@ -2934,7 +2962,7 @@ function registerToolHandlers(server) {
|
|
|
2934
2962
|
}
|
|
2935
2963
|
},
|
|
2936
2964
|
{
|
|
2937
|
-
name: "
|
|
2965
|
+
name: "update_task",
|
|
2938
2966
|
description: "Update an existing task",
|
|
2939
2967
|
inputSchema: {
|
|
2940
2968
|
type: "object",
|
|
@@ -2947,7 +2975,7 @@ function registerToolHandlers(server) {
|
|
|
2947
2975
|
}
|
|
2948
2976
|
},
|
|
2949
2977
|
{
|
|
2950
|
-
name: "
|
|
2978
|
+
name: "delete_task",
|
|
2951
2979
|
description: "Delete a task from the project",
|
|
2952
2980
|
inputSchema: {
|
|
2953
2981
|
type: "object",
|
|
@@ -2962,7 +2990,7 @@ function registerToolHandlers(server) {
|
|
|
2962
2990
|
const projects = getExposedProjects();
|
|
2963
2991
|
if (projects.length === 0) {
|
|
2964
2992
|
tools.push({
|
|
2965
|
-
name: "
|
|
2993
|
+
name: "help_setup",
|
|
2966
2994
|
description: "Get help on how to configure projects for the RRCE MCP Server",
|
|
2967
2995
|
inputSchema: { type: "object", properties: {} }
|
|
2968
2996
|
});
|
|
@@ -2974,27 +3002,27 @@ function registerToolHandlers(server) {
|
|
|
2974
3002
|
logger.info(`Calling tool: ${name}`, args);
|
|
2975
3003
|
try {
|
|
2976
3004
|
switch (name) {
|
|
2977
|
-
case "
|
|
3005
|
+
case "search_knowledge": {
|
|
2978
3006
|
const params = args;
|
|
2979
3007
|
const results = await searchKnowledge(params.query, params.project);
|
|
2980
3008
|
return { content: [{ type: "text", text: JSON.stringify(results, null, 2) }] };
|
|
2981
3009
|
}
|
|
2982
|
-
case "
|
|
3010
|
+
case "index_knowledge": {
|
|
2983
3011
|
const params = args;
|
|
2984
3012
|
const result = await indexKnowledge(params.project, params.force);
|
|
2985
3013
|
return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
|
|
2986
3014
|
}
|
|
2987
|
-
case "
|
|
3015
|
+
case "list_projects": {
|
|
2988
3016
|
const projects = getExposedProjects();
|
|
2989
3017
|
const list = projects.map((p) => ({ name: p.name, source: p.source, path: p.path }));
|
|
2990
3018
|
return {
|
|
2991
3019
|
content: [{
|
|
2992
3020
|
type: "text",
|
|
2993
|
-
text: JSON.stringify(list, null, 2) + "\n\nTip: Use these project names for tools like `
|
|
3021
|
+
text: JSON.stringify(list, null, 2) + "\n\nTip: Use these project names for tools like `get_project_context` or `index_knowledge`."
|
|
2994
3022
|
}]
|
|
2995
3023
|
};
|
|
2996
3024
|
}
|
|
2997
|
-
case "
|
|
3025
|
+
case "get_project_context": {
|
|
2998
3026
|
const context = getProjectContext(args.project);
|
|
2999
3027
|
if (!context) {
|
|
3000
3028
|
const projects = getExposedProjects().map((p) => p.name).join(", ");
|
|
@@ -3005,7 +3033,7 @@ Available projects: ${projects}`;
|
|
|
3005
3033
|
}
|
|
3006
3034
|
return { content: [{ type: "text", text: context }] };
|
|
3007
3035
|
}
|
|
3008
|
-
case "
|
|
3036
|
+
case "list_agents": {
|
|
3009
3037
|
const prompts = getAllPrompts();
|
|
3010
3038
|
return {
|
|
3011
3039
|
content: [{
|
|
@@ -3015,11 +3043,11 @@ Available projects: ${projects}`;
|
|
|
3015
3043
|
id: p.id,
|
|
3016
3044
|
description: p.description,
|
|
3017
3045
|
arguments: p.arguments
|
|
3018
|
-
})), null, 2) + "\n\nTip: Retrieve the prompt for an agent using `
|
|
3046
|
+
})), null, 2) + "\n\nTip: Retrieve the prompt for an agent using `get_agent_prompt` with its name or ID."
|
|
3019
3047
|
}]
|
|
3020
3048
|
};
|
|
3021
3049
|
}
|
|
3022
|
-
case "
|
|
3050
|
+
case "get_agent_prompt": {
|
|
3023
3051
|
const params = args;
|
|
3024
3052
|
const agentName = params.agent;
|
|
3025
3053
|
const promptDef = getPromptDef(agentName);
|
|
@@ -3044,12 +3072,12 @@ The system has pre-resolved the configuration for this project. Use these values
|
|
|
3044
3072
|
`;
|
|
3045
3073
|
return { content: [{ type: "text", text: contextPreamble + rendered }] };
|
|
3046
3074
|
}
|
|
3047
|
-
case "
|
|
3075
|
+
case "list_tasks": {
|
|
3048
3076
|
const params = args;
|
|
3049
3077
|
const tasks = getProjectTasks(params.project);
|
|
3050
3078
|
return { content: [{ type: "text", text: JSON.stringify(tasks, null, 2) }] };
|
|
3051
3079
|
}
|
|
3052
|
-
case "
|
|
3080
|
+
case "get_task": {
|
|
3053
3081
|
const params = args;
|
|
3054
3082
|
const task = getTask(params.project, params.task_slug);
|
|
3055
3083
|
if (!task) {
|
|
@@ -3057,7 +3085,7 @@ The system has pre-resolved the configuration for this project. Use these values
|
|
|
3057
3085
|
}
|
|
3058
3086
|
return { content: [{ type: "text", text: JSON.stringify(task, null, 2) }] };
|
|
3059
3087
|
}
|
|
3060
|
-
case "
|
|
3088
|
+
case "create_task": {
|
|
3061
3089
|
const params = args;
|
|
3062
3090
|
const taskData = {
|
|
3063
3091
|
title: params.title || params.task_slug,
|
|
@@ -3067,18 +3095,18 @@ The system has pre-resolved the configuration for this project. Use these values
|
|
|
3067
3095
|
return { content: [{ type: "text", text: `\u2713 Task '${params.task_slug}' created. meta.json saved.
|
|
3068
3096
|
${JSON.stringify(task, null, 2)}` }] };
|
|
3069
3097
|
}
|
|
3070
|
-
case "
|
|
3098
|
+
case "update_task": {
|
|
3071
3099
|
const params = args;
|
|
3072
3100
|
const task = await updateTask(params.project, params.task_slug, params.updates);
|
|
3073
3101
|
return { content: [{ type: "text", text: `\u2713 Task '${params.task_slug}' updated. meta.json saved.
|
|
3074
3102
|
${JSON.stringify(task, null, 2)}` }] };
|
|
3075
3103
|
}
|
|
3076
|
-
case "
|
|
3104
|
+
case "delete_task": {
|
|
3077
3105
|
const params = args;
|
|
3078
3106
|
const success = deleteTask(params.project, params.task_slug);
|
|
3079
3107
|
return { content: [{ type: "text", text: success ? `\u2713 Task '${params.task_slug}' deleted.` : `\u2717 Failed to delete '${params.task_slug}'.` }] };
|
|
3080
3108
|
}
|
|
3081
|
-
case "
|
|
3109
|
+
case "help_setup": {
|
|
3082
3110
|
const msg = `
|
|
3083
3111
|
RRCE MCP Server is running, but no projects are configured/exposed.
|
|
3084
3112
|
|