@codemcp/workflows 6.18.3 → 6.18.4
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/package.json +2 -2
- package/packages/cli/package.json +1 -1
- package/packages/core/package.json +1 -1
- package/packages/docs/package.json +1 -1
- package/packages/mcp-server/package.json +1 -1
- package/packages/opencode-plugin/dist/index.js +8 -33
- package/packages/opencode-plugin/package.json +1 -1
- package/packages/opencode-tui-plugin/package.json +1 -1
- package/packages/visualizer/package.json +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codemcp/workflows",
|
|
3
|
-
"version": "6.18.
|
|
3
|
+
"version": "6.18.4",
|
|
4
4
|
"description": "A Model Context Protocol server that acts as an intelligent conversation state manager and development guide for LLMs, featuring comprehensive long-term memory with persistent project artifacts",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "packages/cli/dist/index.js",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"typescript": "^5.9.3",
|
|
52
52
|
"vitepress": "^1.6.4",
|
|
53
53
|
"vitest": "4.0.18",
|
|
54
|
-
"@codemcp/workflows-core": "6.18.
|
|
54
|
+
"@codemcp/workflows-core": "6.18.4"
|
|
55
55
|
},
|
|
56
56
|
"lint-staged": {
|
|
57
57
|
"*.{ts,js,mts,cts,tsx,jsx}": [
|
|
@@ -28621,11 +28621,16 @@ function createStartDevelopmentTool(projectDir, getServerContext, setBufferedIns
|
|
|
28621
28621
|
const workflowManager = new WorkflowManager();
|
|
28622
28622
|
const availableWorkflows = workflowManager.getAvailableWorkflowsForProject(projectDir);
|
|
28623
28623
|
const workflowNames = availableWorkflows.map((w) => w.name);
|
|
28624
|
-
const
|
|
28624
|
+
const workflowLines = availableWorkflows.map((w) => ` - ${w.name}: ${w.displayName} \u2014 ${w.description}`).join("\n");
|
|
28625
|
+
const toolDescription = workflowNames.length > 0 ? `Start a development workflow.
|
|
28626
|
+
|
|
28627
|
+
workflow parameter \u2014 available values:
|
|
28628
|
+
${workflowLines}
|
|
28629
|
+
- custom: Use a custom workflow name` : "Start a development workflow (no workflows available - check WORKFLOW_DOMAINS)";
|
|
28625
28630
|
return tool({
|
|
28626
28631
|
description: toolDescription,
|
|
28627
28632
|
args: {
|
|
28628
|
-
workflow: z9.enum(buildWorkflowEnum(workflowNames))
|
|
28633
|
+
workflow: z9.enum(buildWorkflowEnum(workflowNames)),
|
|
28629
28634
|
require_reviews: z9.boolean().optional().describe("Require reviews before phase transitions")
|
|
28630
28635
|
},
|
|
28631
28636
|
execute: async (args2, context3) => {
|
|
@@ -29316,37 +29321,7 @@ ${phaseInstructions}`
|
|
|
29316
29321
|
await createSetupProjectDocsTool(input.directory, getServerContext)
|
|
29317
29322
|
)
|
|
29318
29323
|
};
|
|
29319
|
-
})()
|
|
29320
|
-
/**
|
|
29321
|
-
* Bridge Zod .describe() descriptions from plugin's registry into host's registry.
|
|
29322
|
-
*
|
|
29323
|
-
* Problem: this plugin uses a different zod instance than OpenCode (host). In Zod v4,
|
|
29324
|
-
* .describe() stores descriptions in a module-level globalRegistry singleton. When
|
|
29325
|
-
* OpenCode calls z.toJSONSchema(parameters), it reads from its own registry which has
|
|
29326
|
-
* no entries for plugin schemas — so all parameter descriptions are missing from the
|
|
29327
|
-
* JSON Schema sent to the LLM.
|
|
29328
|
-
*
|
|
29329
|
-
* Solution: dynamically import 'zod' at hook call time. When the plugin is installed
|
|
29330
|
-
* without its own node_modules/zod (zod is a peerDependency), this import resolves to
|
|
29331
|
-
* the host's (OpenCode's) zod module — the same instance used when creating
|
|
29332
|
-
* output.parameters. We then register each field schema's description into the host's
|
|
29333
|
-
* globalRegistry, making them visible to the subsequent z.toJSONSchema() call.
|
|
29334
|
-
*/
|
|
29335
|
-
"tool.definition": async (_input, output) => {
|
|
29336
|
-
try {
|
|
29337
|
-
const parameters = output.parameters;
|
|
29338
|
-
const shape = parameters?._zod?.def?.shape;
|
|
29339
|
-
if (!shape) return;
|
|
29340
|
-
const { globalRegistry: hostRegistry } = await import("zod");
|
|
29341
|
-
for (const [_key, fieldSchema] of Object.entries(shape)) {
|
|
29342
|
-
const desc = fieldSchema?.description;
|
|
29343
|
-
if (desc && typeof desc === "string") {
|
|
29344
|
-
hostRegistry.add(fieldSchema, { description: desc });
|
|
29345
|
-
}
|
|
29346
|
-
}
|
|
29347
|
-
} catch {
|
|
29348
|
-
}
|
|
29349
|
-
}
|
|
29324
|
+
})()
|
|
29350
29325
|
};
|
|
29351
29326
|
};
|
|
29352
29327
|
var plugin_default = {
|