letagents 0.12.1 → 0.12.2
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/mcp/server.js +22 -3
- package/package.json +1 -1
package/dist/mcp/server.js
CHANGED
|
@@ -1530,9 +1530,23 @@ server.tool("update_task", "Update a task's status or assignee. Status transitio
|
|
|
1530
1530
|
.optional()
|
|
1531
1531
|
.describe("New assignee for the task. Defaults to the current agent when status=assigned."),
|
|
1532
1532
|
pr_url: z.string().optional().describe("PR URL to link to the task"),
|
|
1533
|
+
workflow_artifacts: z
|
|
1534
|
+
.array(z.object({
|
|
1535
|
+
provider: z.enum(["github", "gitlab", "bitbucket", "unknown"]),
|
|
1536
|
+
kind: z.enum(["issue", "branch", "pull_request", "merge_request", "review", "check_run", "merge"]),
|
|
1537
|
+
id: z.string().nullable().optional(),
|
|
1538
|
+
number: z.number().int().nullable().optional(),
|
|
1539
|
+
title: z.string().nullable().optional(),
|
|
1540
|
+
url: z.string().nullable().optional(),
|
|
1541
|
+
ref: z.string().nullable().optional(),
|
|
1542
|
+
state: z.string().nullable().optional(),
|
|
1543
|
+
}).strict())
|
|
1544
|
+
.max(32)
|
|
1545
|
+
.optional()
|
|
1546
|
+
.describe("Persisted provider-neutral task workflow artifacts to attach to the task"),
|
|
1533
1547
|
room_id: z.string().optional().describe("Canonical room ID. Defaults to current room."),
|
|
1534
1548
|
conversation_id: z.string().optional().describe("Optional conversation ID for per-conversation identity scoping."),
|
|
1535
|
-
}, async ({ task_id, status, assignee, pr_url, room_id, conversation_id }) => {
|
|
1549
|
+
}, async ({ task_id, status, assignee, pr_url, workflow_artifacts, room_id, conversation_id }) => {
|
|
1536
1550
|
const targetRoomId = getTargetRoomId(room_id);
|
|
1537
1551
|
const targetProjectId = getFallbackProjectId();
|
|
1538
1552
|
if (!targetRoomId && !targetProjectId) {
|
|
@@ -1555,6 +1569,7 @@ server.tool("update_task", "Update a task's status or assignee. Status transitio
|
|
|
1555
1569
|
status,
|
|
1556
1570
|
assignee: assignee ?? identity?.actor_label,
|
|
1557
1571
|
pr_url,
|
|
1572
|
+
workflow_artifacts,
|
|
1558
1573
|
}),
|
|
1559
1574
|
},
|
|
1560
1575
|
});
|
|
@@ -1765,11 +1780,15 @@ server.tool("send_message", "Send a message to a Let Agents Chat room.", {
|
|
|
1765
1780
|
.optional()
|
|
1766
1781
|
.describe("Deprecated override. Agent identity is resolved automatically on room entry."),
|
|
1767
1782
|
text: z.string().describe("The message text to send"),
|
|
1783
|
+
reply_to: z
|
|
1784
|
+
.string()
|
|
1785
|
+
.optional()
|
|
1786
|
+
.describe("Optional message id to quote-reply to (for example `msg_42`)."),
|
|
1768
1787
|
conversation_id: z
|
|
1769
1788
|
.string()
|
|
1770
1789
|
.optional()
|
|
1771
1790
|
.describe("Optional conversation ID for per-conversation identity scoping."),
|
|
1772
|
-
}, async ({ room_id, sender: _sender, text, conversation_id }) => {
|
|
1791
|
+
}, async ({ room_id, sender: _sender, text, reply_to, conversation_id }) => {
|
|
1773
1792
|
const targetRoomId = getTargetRoomId(room_id);
|
|
1774
1793
|
const targetProjectId = getFallbackProjectId();
|
|
1775
1794
|
if (!targetRoomId && !targetProjectId) {
|
|
@@ -1783,7 +1802,7 @@ server.tool("send_message", "Send a message to a Let Agents Chat room.", {
|
|
|
1783
1802
|
project_path: (targetProjectId) => `/projects/${encodeURIComponent(targetProjectId)}/messages`,
|
|
1784
1803
|
options: {
|
|
1785
1804
|
method: "POST",
|
|
1786
|
-
body: JSON.stringify({ sender: identity.actor_label, text }),
|
|
1805
|
+
body: JSON.stringify({ sender: identity.actor_label, text, reply_to }),
|
|
1787
1806
|
},
|
|
1788
1807
|
});
|
|
1789
1808
|
touchCurrentRoom(typeof message.id === "string" ? message.id : undefined);
|