@chorus-aidlc/chorus-openclaw-plugin 0.1.4 → 0.1.6
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 +1 -1
- package/src/event-router.ts +2 -1
- package/src/tools/pm-tools.ts +39 -1
package/package.json
CHANGED
package/src/event-router.ts
CHANGED
|
@@ -193,8 +193,9 @@ export class ChorusEventRouter {
|
|
|
193
193
|
private handleProposalApproved(n: NotificationDetail): void {
|
|
194
194
|
const mentionGuidance = this.buildMentionGuidance(n, "proposal");
|
|
195
195
|
|
|
196
|
+
const reviewInfo = n.message.includes("Note: ") ? ` Review note: "${n.message.split("Note: ").pop()}"` : "";
|
|
196
197
|
this.triggerAgent(
|
|
197
|
-
`[Chorus] Proposal '${n.entityTitle}' was APPROVED (projectUuid: ${n.projectUuid})
|
|
198
|
+
`[Chorus] Proposal '${n.entityTitle}' was APPROVED (projectUuid: ${n.projectUuid})!${reviewInfo} Documents and tasks have been created. ` +
|
|
198
199
|
`Use chorus_get_available_tasks with projectUuid: "${n.projectUuid}" to see the new tasks ready for work.\n` +
|
|
199
200
|
mentionGuidance,
|
|
200
201
|
{ notificationUuid: n.uuid, action: "proposal_approved", entityUuid: n.entityUuid, projectUuid: n.projectUuid }
|
package/src/tools/pm-tools.ts
CHANGED
|
@@ -332,7 +332,45 @@ export function registerPmTools(api: any, mcpClient: ChorusMcpClient) {
|
|
|
332
332
|
},
|
|
333
333
|
});
|
|
334
334
|
|
|
335
|
-
// 15.
|
|
335
|
+
// 15. chorus_pm_assign_task
|
|
336
|
+
api.registerTool({
|
|
337
|
+
name: "chorus_pm_assign_task",
|
|
338
|
+
description: "Assign a task to a specified Developer Agent. The task must be in open or assigned status. Use chorus_search_mentionables to find the agent UUID.",
|
|
339
|
+
parameters: {
|
|
340
|
+
type: "object",
|
|
341
|
+
properties: {
|
|
342
|
+
taskUuid: { type: "string", description: "Task UUID" },
|
|
343
|
+
agentUuid: { type: "string", description: "Target Developer Agent UUID" },
|
|
344
|
+
},
|
|
345
|
+
required: ["taskUuid", "agentUuid"],
|
|
346
|
+
additionalProperties: false,
|
|
347
|
+
},
|
|
348
|
+
async execute(_id: string, { taskUuid, agentUuid }: { taskUuid: string; agentUuid: string }) {
|
|
349
|
+
const result = await mcpClient.callTool("chorus_pm_assign_task", { taskUuid, agentUuid });
|
|
350
|
+
return JSON.stringify(result, null, 2);
|
|
351
|
+
},
|
|
352
|
+
});
|
|
353
|
+
|
|
354
|
+
// 16. chorus_move_idea
|
|
355
|
+
api.registerTool({
|
|
356
|
+
name: "chorus_move_idea",
|
|
357
|
+
description: "Move an Idea to a different project within the same company. Also moves linked draft/pending Proposals.",
|
|
358
|
+
parameters: {
|
|
359
|
+
type: "object",
|
|
360
|
+
properties: {
|
|
361
|
+
ideaUuid: { type: "string", description: "UUID of the idea to move" },
|
|
362
|
+
targetProjectUuid: { type: "string", description: "UUID of the target project" },
|
|
363
|
+
},
|
|
364
|
+
required: ["ideaUuid", "targetProjectUuid"],
|
|
365
|
+
additionalProperties: false,
|
|
366
|
+
},
|
|
367
|
+
async execute(_id: string, { ideaUuid, targetProjectUuid }: { ideaUuid: string; targetProjectUuid: string }) {
|
|
368
|
+
const result = await mcpClient.callTool("chorus_move_idea", { ideaUuid, targetProjectUuid });
|
|
369
|
+
return JSON.stringify(result, null, 2);
|
|
370
|
+
},
|
|
371
|
+
});
|
|
372
|
+
|
|
373
|
+
// 17. chorus_pm_create_idea
|
|
336
374
|
api.registerTool({
|
|
337
375
|
name: "chorus_pm_create_idea",
|
|
338
376
|
description: "Create a new Idea in a project. Use this when you discover a requirement, want to propose work, or record a user request.",
|