pilotswarm 0.4.0 → 0.5.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/mcp/README.md +88 -4
- package/mcp/dist/src/context.d.ts +36 -6
- package/mcp/dist/src/context.d.ts.map +1 -1
- package/mcp/dist/src/context.js +102 -8
- package/mcp/dist/src/context.js.map +1 -1
- package/mcp/dist/src/resources/artifacts.d.ts +5 -0
- package/mcp/dist/src/resources/artifacts.d.ts.map +1 -0
- package/mcp/dist/src/resources/artifacts.js +39 -0
- package/mcp/dist/src/resources/artifacts.js.map +1 -0
- package/mcp/dist/src/resources/capabilities.d.ts +4 -0
- package/mcp/dist/src/resources/capabilities.d.ts.map +1 -0
- package/mcp/dist/src/resources/capabilities.js +17 -0
- package/mcp/dist/src/resources/capabilities.js.map +1 -0
- package/mcp/dist/src/resources/graph.d.ts +5 -0
- package/mcp/dist/src/resources/graph.d.ts.map +1 -0
- package/mcp/dist/src/resources/graph.js +45 -0
- package/mcp/dist/src/resources/graph.js.map +1 -0
- package/mcp/dist/src/server.d.ts.map +1 -1
- package/mcp/dist/src/server.js +61 -2
- package/mcp/dist/src/server.js.map +1 -1
- package/mcp/dist/src/tools/agents.d.ts.map +1 -1
- package/mcp/dist/src/tools/agents.js +3 -2
- package/mcp/dist/src/tools/agents.js.map +1 -1
- package/mcp/dist/src/tools/artifacts.d.ts +12 -0
- package/mcp/dist/src/tools/artifacts.d.ts.map +1 -0
- package/mcp/dist/src/tools/artifacts.js +92 -0
- package/mcp/dist/src/tools/artifacts.js.map +1 -0
- package/mcp/dist/src/tools/capabilities.d.ts +27 -0
- package/mcp/dist/src/tools/capabilities.d.ts.map +1 -0
- package/mcp/dist/src/tools/capabilities.js +69 -0
- package/mcp/dist/src/tools/capabilities.js.map +1 -0
- package/mcp/dist/src/tools/debug.d.ts +4 -0
- package/mcp/dist/src/tools/debug.d.ts.map +1 -0
- package/mcp/dist/src/tools/debug.js +94 -0
- package/mcp/dist/src/tools/debug.js.map +1 -0
- package/mcp/dist/src/tools/facts-enhanced.d.ts +13 -0
- package/mcp/dist/src/tools/facts-enhanced.d.ts.map +1 -0
- package/mcp/dist/src/tools/facts-enhanced.js +80 -0
- package/mcp/dist/src/tools/facts-enhanced.js.map +1 -0
- package/mcp/dist/src/tools/graph.d.ts +12 -0
- package/mcp/dist/src/tools/graph.d.ts.map +1 -0
- package/mcp/dist/src/tools/graph.js +237 -0
- package/mcp/dist/src/tools/graph.js.map +1 -0
- package/mcp/dist/src/tools/groups.d.ts +10 -0
- package/mcp/dist/src/tools/groups.d.ts.map +1 -0
- package/mcp/dist/src/tools/groups.js +107 -0
- package/mcp/dist/src/tools/groups.js.map +1 -0
- package/mcp/dist/src/tools/models.d.ts.map +1 -1
- package/mcp/dist/src/tools/models.js +16 -4
- package/mcp/dist/src/tools/models.js.map +1 -1
- package/mcp/dist/src/tools/observability.d.ts +13 -0
- package/mcp/dist/src/tools/observability.d.ts.map +1 -0
- package/mcp/dist/src/tools/observability.js +174 -0
- package/mcp/dist/src/tools/observability.js.map +1 -0
- package/mcp/dist/src/tools/sessions.d.ts.map +1 -1
- package/mcp/dist/src/tools/sessions.js +120 -94
- package/mcp/dist/src/tools/sessions.js.map +1 -1
- package/mcp/dist/src/tools/system.d.ts +14 -0
- package/mcp/dist/src/tools/system.d.ts.map +1 -0
- package/mcp/dist/src/tools/system.js +110 -0
- package/mcp/dist/src/tools/system.js.map +1 -0
- package/mcp/dist/src/tools/turn-control.d.ts +13 -0
- package/mcp/dist/src/tools/turn-control.d.ts.map +1 -0
- package/mcp/dist/src/tools/turn-control.js +98 -0
- package/mcp/dist/src/tools/turn-control.js.map +1 -0
- package/mcp/dist/src/util/respond.d.ts +21 -0
- package/mcp/dist/src/util/respond.d.ts.map +1 -0
- package/mcp/dist/src/util/respond.js +42 -0
- package/mcp/dist/src/util/respond.js.map +1 -0
- package/package.json +6 -4
- package/tui/bin/tui.js +0 -3
- package/tui/src/node-sdk-transport.js +30 -5
- package/tui/src/plugin-config.js +36 -2
- package/tui/tui-splash-mobile.txt +7 -0
- package/ui/core/src/controller.js +104 -7
- package/ui/core/src/history.js +20 -2
- package/ui/core/src/reducer.js +19 -2
- package/ui/core/src/selectors.js +32 -1
- package/ui/core/src/state.js +3 -0
- package/ui/react/src/web-app.js +122 -10
- package/web/dist/assets/{index-DMefB7Wb.js → index-B8ge3rzb.js} +4 -4
- package/web/dist/assets/index-DXRIxmIv.css +1 -0
- package/web/dist/assets/pilotswarm-Dt1qY6hD.js +90 -0
- package/web/dist/assets/{react-BZwsW8pe.js → react-IRUjK5Iz.js} +1 -1
- package/web/dist/index.html +4 -4
- package/web/runtime.js +33 -2
- package/web/dist/assets/index-CBgQQk-j.css +0 -1
- package/web/dist/assets/pilotswarm-DyBlqVTY.js +0 -87
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { jsonResult, errorResult, withToolErrors } from "../util/respond.js";
|
|
3
|
+
/**
|
|
4
|
+
* Observability & forensics tools (proposal G6), consolidated by axis:
|
|
5
|
+
*
|
|
6
|
+
* get_session_metrics per-session (or spawn-tree) metrics via include[]
|
|
7
|
+
* get_fleet_overview fleet-wide aggregates via include[]
|
|
8
|
+
* list_child_outcomes what did the sub-agents conclude
|
|
9
|
+
* get_execution_history raw orchestration execution events
|
|
10
|
+
* export_execution_history export history → artifact
|
|
11
|
+
*/
|
|
12
|
+
export function registerObservabilityTools(server, ctx) {
|
|
13
|
+
// 1. get_session_metrics — one tool, one session, many axes
|
|
14
|
+
server.registerTool("get_session_metrics", {
|
|
15
|
+
title: "Get Session Metrics",
|
|
16
|
+
description: "Metrics for one session (or its whole spawn tree with tree=true). include selects axes: "
|
|
17
|
+
+ "'summary' (turn/token metric summary), 'tokens_by_model', 'skill_usage', 'retrieval_usage', "
|
|
18
|
+
+ "'facts_stats', 'orchestration_stats' (runtime internals; self only). Default ['summary']. "
|
|
19
|
+
+ "For a full diagnostic bundle (events, execution history, graph usage), use debug_session.",
|
|
20
|
+
inputSchema: {
|
|
21
|
+
session_id: z.string().min(1).describe("The session to inspect"),
|
|
22
|
+
include: z
|
|
23
|
+
.array(z.enum(["summary", "tokens_by_model", "skill_usage", "retrieval_usage", "facts_stats", "orchestration_stats"]))
|
|
24
|
+
.optional()
|
|
25
|
+
.describe("Metric axes to fetch (default ['summary'])"),
|
|
26
|
+
tree: z.boolean().optional().describe("Aggregate across the spawn tree where supported (skill_usage, retrieval_usage, facts_stats; summary→tree stats)"),
|
|
27
|
+
since: z.string().optional().describe("ISO timestamp lower bound (skill_usage, retrieval_usage)"),
|
|
28
|
+
},
|
|
29
|
+
}, withToolErrors(async ({ session_id, include, tree, since }) => {
|
|
30
|
+
const session = await ctx.mgmt.getSession(session_id);
|
|
31
|
+
if (!session)
|
|
32
|
+
return errorResult("session not found", { session_id });
|
|
33
|
+
const wants = new Set(include ?? ["summary"]);
|
|
34
|
+
const sinceDate = since ? new Date(since) : undefined;
|
|
35
|
+
const result = { session_id, tree: Boolean(tree) };
|
|
36
|
+
const errors = {};
|
|
37
|
+
const grab = async (key, fn) => {
|
|
38
|
+
try {
|
|
39
|
+
result[key] = await fn();
|
|
40
|
+
}
|
|
41
|
+
catch (err) {
|
|
42
|
+
errors[key] = err instanceof Error ? err.message : String(err);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
if (wants.has("summary")) {
|
|
46
|
+
await grab("summary", () => tree ? ctx.mgmt.getSessionTreeStats(session_id) : ctx.mgmt.getSessionMetricSummary(session_id));
|
|
47
|
+
}
|
|
48
|
+
if (wants.has("tokens_by_model")) {
|
|
49
|
+
await grab("tokens_by_model", () => ctx.mgmt.getSessionTokensByModel(session_id));
|
|
50
|
+
}
|
|
51
|
+
if (wants.has("skill_usage")) {
|
|
52
|
+
await grab("skill_usage", () => tree
|
|
53
|
+
? ctx.mgmt.getSessionTreeSkillUsage(session_id, sinceDate ? { since: sinceDate } : undefined)
|
|
54
|
+
: ctx.mgmt.getSessionSkillUsage(session_id, sinceDate ? { since: sinceDate } : undefined));
|
|
55
|
+
}
|
|
56
|
+
if (wants.has("retrieval_usage")) {
|
|
57
|
+
await grab("retrieval_usage", () => tree
|
|
58
|
+
? ctx.mgmt.getSessionTreeRetrievalUsage(session_id, sinceDate ? { since: sinceDate } : undefined)
|
|
59
|
+
: ctx.mgmt.getSessionRetrievalUsage(session_id, sinceDate ? { since: sinceDate } : undefined));
|
|
60
|
+
}
|
|
61
|
+
if (wants.has("facts_stats")) {
|
|
62
|
+
await grab("facts_stats", () => tree ? ctx.mgmt.getSessionTreeFactsStats(session_id) : ctx.mgmt.getSessionFactsStats(session_id));
|
|
63
|
+
}
|
|
64
|
+
if (wants.has("orchestration_stats")) {
|
|
65
|
+
await grab("orchestration_stats", () => ctx.mgmt.getOrchestrationStats(session_id));
|
|
66
|
+
}
|
|
67
|
+
if (Object.keys(errors).length > 0)
|
|
68
|
+
result.errors = errors;
|
|
69
|
+
return jsonResult(result);
|
|
70
|
+
}));
|
|
71
|
+
// 2. get_fleet_overview — fleet-wide aggregates
|
|
72
|
+
server.registerTool("get_fleet_overview", {
|
|
73
|
+
title: "Get Fleet Overview",
|
|
74
|
+
description: "Fleet-wide aggregates. include selects axes: 'stats' (sessions/tokens fleet stats), 'skill_usage', "
|
|
75
|
+
+ "'retrieval_usage', 'graph_node_usage', 'user_stats', 'top_emitters' (noisiest event emitters), "
|
|
76
|
+
+ "'shared_facts', 'tombstones' (soft-deleted facts awaiting reconciliation). Default ['stats'].",
|
|
77
|
+
inputSchema: {
|
|
78
|
+
include: z
|
|
79
|
+
.array(z.enum(["stats", "skill_usage", "retrieval_usage", "graph_node_usage", "user_stats", "top_emitters", "shared_facts", "tombstones"]))
|
|
80
|
+
.optional()
|
|
81
|
+
.describe("Axes to fetch (default ['stats'])"),
|
|
82
|
+
since: z.string().optional().describe("ISO timestamp lower bound (stats/skill/retrieval/graph/user/top_emitters)"),
|
|
83
|
+
include_deleted: z.boolean().optional().describe("Include soft-deleted sessions in aggregates"),
|
|
84
|
+
limit: z.number().int().positive().optional().describe("Row cap for top_emitters / graph_node_usage (default 20)"),
|
|
85
|
+
},
|
|
86
|
+
}, withToolErrors(async ({ include, since, include_deleted, limit }) => {
|
|
87
|
+
const wants = new Set(include ?? ["stats"]);
|
|
88
|
+
const sinceDate = since ? new Date(since) : undefined;
|
|
89
|
+
const base = { since: sinceDate, includeDeleted: include_deleted };
|
|
90
|
+
const result = {};
|
|
91
|
+
const errors = {};
|
|
92
|
+
const grab = async (key, fn) => {
|
|
93
|
+
try {
|
|
94
|
+
result[key] = await fn();
|
|
95
|
+
}
|
|
96
|
+
catch (err) {
|
|
97
|
+
errors[key] = err instanceof Error ? err.message : String(err);
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
if (wants.has("stats"))
|
|
101
|
+
await grab("stats", () => ctx.mgmt.getFleetStats(base));
|
|
102
|
+
if (wants.has("skill_usage"))
|
|
103
|
+
await grab("skill_usage", () => ctx.mgmt.getFleetSkillUsage(base));
|
|
104
|
+
if (wants.has("retrieval_usage"))
|
|
105
|
+
await grab("retrieval_usage", () => ctx.mgmt.getFleetRetrievalUsage(base));
|
|
106
|
+
if (wants.has("graph_node_usage"))
|
|
107
|
+
await grab("graph_node_usage", () => ctx.mgmt.getFleetGraphNodeUsage({ ...base, limit }));
|
|
108
|
+
if (wants.has("user_stats"))
|
|
109
|
+
await grab("user_stats", () => ctx.mgmt.getUserStats(base));
|
|
110
|
+
if (wants.has("top_emitters")) {
|
|
111
|
+
await grab("top_emitters", () => ctx.mgmt.getTopEventEmitters({ since: sinceDate ?? new Date(Date.now() - 24 * 3600 * 1000), limit: limit ?? 20 }));
|
|
112
|
+
}
|
|
113
|
+
if (wants.has("shared_facts"))
|
|
114
|
+
await grab("shared_facts", () => ctx.mgmt.getSharedFactsStats());
|
|
115
|
+
if (wants.has("tombstones"))
|
|
116
|
+
await grab("tombstones", () => ctx.mgmt.getFactsTombstoneStats());
|
|
117
|
+
if (Object.keys(errors).length > 0)
|
|
118
|
+
result.errors = errors;
|
|
119
|
+
return jsonResult(result);
|
|
120
|
+
}));
|
|
121
|
+
// 3. list_child_outcomes — sub-agent conclusions without transcript dumps
|
|
122
|
+
server.registerTool("list_child_outcomes", {
|
|
123
|
+
title: "List Child Outcomes",
|
|
124
|
+
description: "Outcomes recorded by child sessions (sub-agents) under a parent session — what each child concluded, "
|
|
125
|
+
+ "without dumping transcripts. Pass child_session_id instead to fetch a single child's outcome.",
|
|
126
|
+
inputSchema: {
|
|
127
|
+
parent_session_id: z.string().optional().describe("Parent session — lists all child outcomes under it"),
|
|
128
|
+
child_session_id: z.string().optional().describe("One child session — fetches just its outcome"),
|
|
129
|
+
},
|
|
130
|
+
}, withToolErrors(async ({ parent_session_id, child_session_id }) => {
|
|
131
|
+
if (!parent_session_id && !child_session_id) {
|
|
132
|
+
return errorResult("provide parent_session_id or child_session_id");
|
|
133
|
+
}
|
|
134
|
+
if (child_session_id) {
|
|
135
|
+
const outcome = await ctx.mgmt.getChildOutcome(child_session_id);
|
|
136
|
+
if (!outcome)
|
|
137
|
+
return errorResult("no outcome recorded", { child_session_id });
|
|
138
|
+
return jsonResult({ outcome });
|
|
139
|
+
}
|
|
140
|
+
const outcomes = await ctx.mgmt.listChildOutcomes(parent_session_id);
|
|
141
|
+
return jsonResult({ count: outcomes.length, outcomes });
|
|
142
|
+
}));
|
|
143
|
+
// 4. get_execution_history — raw orchestration forensics
|
|
144
|
+
server.registerTool("get_execution_history", {
|
|
145
|
+
title: "Get Execution History",
|
|
146
|
+
description: "Raw duroxide execution-history events for a session — orchestration-level forensics (activity "
|
|
147
|
+
+ "scheduling, retries, continue-as-new boundaries). Heavyweight; prefer get_session_events for chat-level history.",
|
|
148
|
+
inputSchema: {
|
|
149
|
+
session_id: z.string().min(1).describe("The session to inspect"),
|
|
150
|
+
execution_id: z.number().int().optional().describe("Specific execution (default: latest)"),
|
|
151
|
+
},
|
|
152
|
+
}, withToolErrors(async ({ session_id, execution_id }) => {
|
|
153
|
+
const history = await ctx.mgmt.getExecutionHistory(session_id, execution_id);
|
|
154
|
+
if (!history)
|
|
155
|
+
return errorResult("session or execution not found", { session_id });
|
|
156
|
+
return jsonResult({ count: history.length, events: history });
|
|
157
|
+
}));
|
|
158
|
+
// 5. export_execution_history — history → artifact (web mode; the export
|
|
159
|
+
// lands in the session's artifacts, retrievable via get_artifact).
|
|
160
|
+
if (ctx.api) {
|
|
161
|
+
server.registerTool("export_execution_history", {
|
|
162
|
+
title: "Export Execution History",
|
|
163
|
+
description: "Export a session's full execution history to an artifact on the session; returns the artifact "
|
|
164
|
+
+ "metadata. Retrieve it with get_artifact / list_artifacts.",
|
|
165
|
+
inputSchema: {
|
|
166
|
+
session_id: z.string().uuid({ message: "session_id must be a valid UUID" }).describe("The session to export"),
|
|
167
|
+
},
|
|
168
|
+
}, withToolErrors(async ({ session_id }) => {
|
|
169
|
+
const meta = await ctx.api.call("exportExecutionHistory", { sessionId: session_id });
|
|
170
|
+
return jsonResult({ exported: true, artifact: meta });
|
|
171
|
+
}));
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
//# sourceMappingURL=observability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observability.js","sourceRoot":"","sources":["../../../src/tools/observability.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/tools/sessions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAOnD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/tools/sessions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAOnD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,aAAa,QA6qBzE"}
|
|
@@ -11,27 +11,29 @@ export function registerSessionTools(server, ctx) {
|
|
|
11
11
|
inputSchema: {
|
|
12
12
|
model: z.string().optional().describe("Model to use for the session"),
|
|
13
13
|
agent: z.string().optional().describe("Agent name to bind the session to"),
|
|
14
|
-
system_message: z.string().optional().describe("Custom system message
|
|
14
|
+
system_message: z.string().optional().describe("Custom system message (direct mode only — the Web API has no carrier for worker-side options)"),
|
|
15
15
|
title: z.string().min(1).max(512).optional().describe("Optional title — if omitted, PilotSwarm auto-generates one from the conversation after the first turn"),
|
|
16
16
|
prompt: z.string().optional().describe("Initial message to send immediately after session creation (fire-and-forget)"),
|
|
17
|
+
reasoning_effort: z.string().optional().describe("Reasoning effort for the session's model (e.g. low, medium, high)"),
|
|
18
|
+
group_id: z.string().optional().describe("Session group to create the session in"),
|
|
19
|
+
splash: z.string().optional().describe("Splash text shown in the portal UI (agent-bound sessions only)"),
|
|
17
20
|
},
|
|
18
|
-
}, async ({ model, agent, system_message, title, prompt }) => {
|
|
21
|
+
}, async ({ model, agent, system_message, title, prompt, reasoning_effort, group_id, splash }) => {
|
|
19
22
|
try {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
config.title = title;
|
|
23
|
+
// system_message is a worker-side option with no Web API
|
|
24
|
+
// carrier: the web client silently DROPS it (it is not sent
|
|
25
|
+
// on the wire). Don't fail the creation — but never lie by
|
|
26
|
+
// omission either: surface system_message_applied so the
|
|
27
|
+
// caller knows the session runs WITHOUT their prompt.
|
|
28
|
+
const systemMessageDropped = system_message !== undefined && ctx.webMode;
|
|
27
29
|
let session;
|
|
28
30
|
if (agent) {
|
|
29
|
-
if (system_message !== undefined) {
|
|
31
|
+
if (system_message !== undefined && !ctx.webMode) {
|
|
30
32
|
// createSessionForAgent does not forward systemMessage,
|
|
31
33
|
// so route through createSession directly when the
|
|
32
|
-
// caller supplied a custom system message
|
|
33
|
-
// allowedAgentNames guard inside
|
|
34
|
-
// enforces the agent allowlist.
|
|
34
|
+
// caller supplied a custom system message (direct mode
|
|
35
|
+
// only). The allowedAgentNames guard inside
|
|
36
|
+
// createSession still enforces the agent allowlist.
|
|
35
37
|
session = await ctx.client.createSession({
|
|
36
38
|
agentId: agent,
|
|
37
39
|
boundAgentName: agent,
|
|
@@ -43,13 +45,18 @@ export function registerSessionTools(server, ctx) {
|
|
|
43
45
|
session = await ctx.client.createSessionForAgent(agent, {
|
|
44
46
|
model,
|
|
45
47
|
title,
|
|
48
|
+
reasoningEffort: reasoning_effort,
|
|
49
|
+
groupId: group_id,
|
|
50
|
+
splash,
|
|
46
51
|
});
|
|
47
52
|
}
|
|
48
53
|
}
|
|
49
54
|
else {
|
|
50
55
|
session = await ctx.client.createSession({
|
|
51
56
|
model,
|
|
52
|
-
systemMessage: system_message,
|
|
57
|
+
...(ctx.webMode ? {} : { systemMessage: system_message }),
|
|
58
|
+
reasoningEffort: reasoning_effort,
|
|
59
|
+
groupId: group_id,
|
|
53
60
|
});
|
|
54
61
|
}
|
|
55
62
|
// Cache the session object for later use by send_and_wait
|
|
@@ -74,74 +81,12 @@ export function registerSessionTools(server, ctx) {
|
|
|
74
81
|
// Best-effort — session still created
|
|
75
82
|
}
|
|
76
83
|
}
|
|
77
|
-
//
|
|
78
|
-
//
|
|
79
|
-
//
|
|
80
|
-
//
|
|
81
|
-
//
|
|
82
|
-
//
|
|
83
|
-
// to start a worker process.
|
|
84
|
-
const claimTimeoutMs = (() => {
|
|
85
|
-
const raw = process.env.PILOTSWARM_MCP_WORKER_CLAIM_TIMEOUT_MS;
|
|
86
|
-
const parsed = raw ? parseInt(raw, 10) : NaN;
|
|
87
|
-
return Number.isFinite(parsed) && parsed > 0 ? parsed : 10_000;
|
|
88
|
-
})();
|
|
89
|
-
if (promptSent && claimTimeoutMs > 0) {
|
|
90
|
-
const deadline = Date.now() + claimTimeoutMs;
|
|
91
|
-
const pollMs = 250;
|
|
92
|
-
// A session is "claimed" only once duroxide reports an
|
|
93
|
-
// active orchestration. mgmt.getSession reflects CMS row
|
|
94
|
-
// state (e.g. "Unknown") even before any worker runs, so
|
|
95
|
-
// probe the orchestration directly via getSessionStatus.
|
|
96
|
-
// Any non-NotFound duroxide status (Running, Completed,
|
|
97
|
-
// Failed, Terminated, Suspended) means a worker registered
|
|
98
|
-
// the orchestration at least once.
|
|
99
|
-
let claimed = false;
|
|
100
|
-
while (Date.now() < deadline) {
|
|
101
|
-
try {
|
|
102
|
-
const orch = await ctx.mgmt.getSessionStatus(session.sessionId);
|
|
103
|
-
const orchStatus = orch?.orchestrationStatus;
|
|
104
|
-
if (orchStatus && orchStatus !== "NotFound") {
|
|
105
|
-
claimed = true;
|
|
106
|
-
break;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
catch {
|
|
110
|
-
// ignore transient mgmt errors and retry
|
|
111
|
-
}
|
|
112
|
-
await new Promise((resolve) => setTimeout(resolve, pollMs));
|
|
113
|
-
}
|
|
114
|
-
if (!claimed) {
|
|
115
|
-
sessionCache.delete(session.sessionId);
|
|
116
|
-
// Use client.deleteSession (unconditional CMS soft-delete +
|
|
117
|
-
// best-effort orchestration cancel). mgmt.deleteSession routes
|
|
118
|
-
// through sendCommand and rejects when orchestrationStatus is
|
|
119
|
-
// NotFound, which is exactly the case we are cleaning up.
|
|
120
|
-
try {
|
|
121
|
-
await ctx.client.deleteSession(session.sessionId);
|
|
122
|
-
}
|
|
123
|
-
catch {
|
|
124
|
-
// best-effort; row may linger if soft-delete also fails
|
|
125
|
-
}
|
|
126
|
-
return {
|
|
127
|
-
content: [
|
|
128
|
-
{
|
|
129
|
-
type: "text",
|
|
130
|
-
text: JSON.stringify({
|
|
131
|
-
error: "no_worker_claimed",
|
|
132
|
-
created: false,
|
|
133
|
-
purged_session_id: session.sessionId,
|
|
134
|
-
message: "Session could not be created: no PilotSwarm worker claimed the orchestration "
|
|
135
|
-
+ `within ${claimTimeoutMs}ms. The CMS row was rolled back. `
|
|
136
|
-
+ "Start a worker process (e.g. CLI in local mode or Web Portal) "
|
|
137
|
-
+ "against the same DATABASE_URL, then retry.",
|
|
138
|
-
}),
|
|
139
|
-
},
|
|
140
|
-
],
|
|
141
|
-
isError: true,
|
|
142
|
-
};
|
|
143
|
-
}
|
|
144
|
-
}
|
|
84
|
+
// Queue-and-monitor semantics: PilotSwarm is a durable async
|
|
85
|
+
// system. Creation (and any initial prompt) is queued; the
|
|
86
|
+
// session runs when a worker picks it up. No liveness
|
|
87
|
+
// probing here — callers monitor the session directly via
|
|
88
|
+
// get_session_detail (include: ['status']) or
|
|
89
|
+
// get_session_events (wait: true).
|
|
145
90
|
return {
|
|
146
91
|
content: [
|
|
147
92
|
{
|
|
@@ -149,9 +94,16 @@ export function registerSessionTools(server, ctx) {
|
|
|
149
94
|
text: JSON.stringify({
|
|
150
95
|
session_id: session.sessionId,
|
|
151
96
|
status: "created",
|
|
97
|
+
...(systemMessageDropped && {
|
|
98
|
+
system_message_applied: false,
|
|
99
|
+
warning: "system_message has no Web API carrier and was NOT applied — bind the session to an agent whose definition carries the prompt, or run the MCP server in direct mode.",
|
|
100
|
+
}),
|
|
152
101
|
model: model ?? "default",
|
|
153
102
|
title: title ?? null,
|
|
154
|
-
...(prompt !== undefined && {
|
|
103
|
+
...(prompt !== undefined && {
|
|
104
|
+
prompt_sent: promptSent,
|
|
105
|
+
note: "Queued durably; monitor with get_session_detail (include: ['status']) or get_session_events (wait: true).",
|
|
106
|
+
}),
|
|
155
107
|
}),
|
|
156
108
|
},
|
|
157
109
|
],
|
|
@@ -168,12 +120,15 @@ export function registerSessionTools(server, ctx) {
|
|
|
168
120
|
// 2. send_message — Fire-and-forget message to a session
|
|
169
121
|
server.registerTool("send_message", {
|
|
170
122
|
title: "Send Message",
|
|
171
|
-
description: "Send a fire-and-forget message to a PilotSwarm session"
|
|
123
|
+
description: "Send a fire-and-forget message to a PilotSwarm session. Pass client_message_ids to make the "
|
|
124
|
+
+ "message(s) cancellable later via cancel_pending_messages; enqueue_only queues without waking the session.",
|
|
172
125
|
inputSchema: {
|
|
173
126
|
session_id: z.string().uuid({ message: "session_id must be a valid UUID" }).describe("The session to send the message to"),
|
|
174
127
|
message: z.string().describe("The message to send"),
|
|
128
|
+
client_message_ids: z.array(z.string().min(1)).optional().describe("Caller-chosen ids for this message — required later by cancel_pending_messages"),
|
|
129
|
+
enqueue_only: z.boolean().optional().describe("Queue the message without triggering processing (web mode only)"),
|
|
175
130
|
},
|
|
176
|
-
}, async ({ session_id, message }) => {
|
|
131
|
+
}, async ({ session_id, message, client_message_ids, enqueue_only }) => {
|
|
177
132
|
try {
|
|
178
133
|
const existing = await ctx.mgmt.getSession(session_id);
|
|
179
134
|
if (!existing) {
|
|
@@ -182,6 +137,24 @@ export function registerSessionTools(server, ctx) {
|
|
|
182
137
|
isError: true,
|
|
183
138
|
};
|
|
184
139
|
}
|
|
140
|
+
if (enqueue_only) {
|
|
141
|
+
if (!ctx.api) {
|
|
142
|
+
return {
|
|
143
|
+
content: [{ type: "text", text: JSON.stringify({ error: "enqueue_only is only supported in Web API mode" }) }],
|
|
144
|
+
isError: true,
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
await ctx.api.call("sendMessage", {
|
|
148
|
+
sessionId: session_id,
|
|
149
|
+
prompt: message,
|
|
150
|
+
options: { enqueueOnly: true, ...(client_message_ids ? { clientMessageIds: client_message_ids } : {}) },
|
|
151
|
+
});
|
|
152
|
+
return {
|
|
153
|
+
content: [
|
|
154
|
+
{ type: "text", text: JSON.stringify({ sent: true, enqueued: true, ...(client_message_ids ? { client_message_ids } : {}) }) },
|
|
155
|
+
],
|
|
156
|
+
};
|
|
157
|
+
}
|
|
185
158
|
// Use cached PilotSwarmSession when available; fall back to
|
|
186
159
|
// resumeSession() so a fresh session created via this MCP
|
|
187
160
|
// server's create_session (which doesn't auto-boot the
|
|
@@ -193,10 +166,10 @@ export function registerSessionTools(server, ctx) {
|
|
|
193
166
|
?? await ctx.client.resumeSession(session_id);
|
|
194
167
|
if (!sessionCache.has(session_id))
|
|
195
168
|
sessionCache.set(session_id, session);
|
|
196
|
-
await session.send(message);
|
|
169
|
+
await session.send(message, client_message_ids ? { clientMessageIds: client_message_ids } : undefined);
|
|
197
170
|
return {
|
|
198
171
|
content: [
|
|
199
|
-
{ type: "text", text: JSON.stringify({ sent: true }) },
|
|
172
|
+
{ type: "text", text: JSON.stringify({ sent: true, ...(client_message_ids ? { client_message_ids } : {}) }) },
|
|
200
173
|
],
|
|
201
174
|
};
|
|
202
175
|
}
|
|
@@ -375,10 +348,37 @@ export function registerSessionTools(server, ctx) {
|
|
|
375
348
|
.string()
|
|
376
349
|
.optional()
|
|
377
350
|
.describe("Filter by agent ID (e.g. 'sweeper', 'resourcemgr', or a custom agent name)"),
|
|
351
|
+
limit: z
|
|
352
|
+
.number()
|
|
353
|
+
.int()
|
|
354
|
+
.positive()
|
|
355
|
+
.optional()
|
|
356
|
+
.describe("Page size — switches to keyset pagination (fleet-scale listing). Response carries next_cursor."),
|
|
357
|
+
cursor: z
|
|
358
|
+
.object({ updatedAt: z.number(), sessionId: z.string() })
|
|
359
|
+
.optional()
|
|
360
|
+
.describe("Keyset cursor from a previous page's next_cursor"),
|
|
361
|
+
include_deleted: z
|
|
362
|
+
.boolean()
|
|
363
|
+
.optional()
|
|
364
|
+
.describe("Include soft-deleted sessions (paginated mode only)"),
|
|
378
365
|
},
|
|
379
|
-
}, async ({ status_filter, include_system, agent_id }) => {
|
|
366
|
+
}, async ({ status_filter, include_system, agent_id, limit, cursor, include_deleted }) => {
|
|
380
367
|
try {
|
|
381
|
-
let
|
|
368
|
+
let page = null;
|
|
369
|
+
let sessions;
|
|
370
|
+
if (limit !== undefined || cursor !== undefined || include_deleted !== undefined) {
|
|
371
|
+
const p = await ctx.mgmt.listSessionsPage({
|
|
372
|
+
limit,
|
|
373
|
+
cursor: cursor ?? null,
|
|
374
|
+
includeDeleted: include_deleted,
|
|
375
|
+
});
|
|
376
|
+
sessions = p.sessions;
|
|
377
|
+
page = { hasMore: p.hasMore, nextCursor: p.nextCursor };
|
|
378
|
+
}
|
|
379
|
+
else {
|
|
380
|
+
sessions = await ctx.mgmt.listSessions();
|
|
381
|
+
}
|
|
382
382
|
if (!include_system) {
|
|
383
383
|
sessions = sessions.filter((s) => !s.isSystem);
|
|
384
384
|
}
|
|
@@ -409,7 +409,11 @@ export function registerSessionTools(server, ctx) {
|
|
|
409
409
|
content: [
|
|
410
410
|
{
|
|
411
411
|
type: "text",
|
|
412
|
-
text: JSON.stringify({
|
|
412
|
+
text: JSON.stringify({
|
|
413
|
+
count: data.length,
|
|
414
|
+
sessions: data,
|
|
415
|
+
...(page ? { has_more: page.hasMore, next_cursor: page.nextCursor ?? null } : {}),
|
|
416
|
+
}, null, 2),
|
|
413
417
|
},
|
|
414
418
|
],
|
|
415
419
|
};
|
|
@@ -532,17 +536,20 @@ export function registerSessionTools(server, ctx) {
|
|
|
532
536
|
// 10. get_session_events — Paginated CMS event stream with optional long-poll
|
|
533
537
|
server.registerTool("get_session_events", {
|
|
534
538
|
title: "Get Session Events",
|
|
535
|
-
description: "Read the CMS event stream for a session. Supports pagination with after_seq
|
|
539
|
+
description: "Read the CMS event stream for a session. Supports forward pagination with after_seq, backward " +
|
|
540
|
+
"history paging with before_seq, server-side event_types filtering, and long-polling " +
|
|
536
541
|
"with wait=true to block until new events or a status change arrives.",
|
|
537
542
|
inputSchema: {
|
|
538
543
|
session_id: z.string().uuid({ message: "session_id must be a valid UUID" }).describe("The session to read events for"),
|
|
539
|
-
after_seq: z.number().optional().describe("Return events after this CMS sequence number (
|
|
544
|
+
after_seq: z.number().optional().describe("Return events after this CMS sequence number (forward paging)"),
|
|
545
|
+
before_seq: z.number().optional().describe("Return events BEFORE this sequence number (backward history paging; mutually exclusive with after_seq/wait)"),
|
|
546
|
+
event_types: z.array(z.string()).optional().describe("Server-side filter to these event types (e.g. chat transcript paging)"),
|
|
540
547
|
limit: z.number().optional().describe("Max events to return (default 50)"),
|
|
541
548
|
wait: z.boolean().optional().describe("If true, long-poll until new events or status change arrives"),
|
|
542
549
|
wait_timeout_ms: z.number().optional().describe("Long-poll timeout in ms (default 30000)"),
|
|
543
550
|
after_version: z.number().optional().describe("For wait mode: block until customStatusVersion exceeds this value"),
|
|
544
551
|
},
|
|
545
|
-
}, async ({ session_id, after_seq, limit, wait, wait_timeout_ms, after_version }) => {
|
|
552
|
+
}, async ({ session_id, after_seq, before_seq, event_types, limit, wait, wait_timeout_ms, after_version }) => {
|
|
546
553
|
try {
|
|
547
554
|
const existing = await ctx.mgmt.getSession(session_id);
|
|
548
555
|
if (!existing) {
|
|
@@ -552,6 +559,25 @@ export function registerSessionTools(server, ctx) {
|
|
|
552
559
|
};
|
|
553
560
|
}
|
|
554
561
|
const eventLimit = limit ?? 50;
|
|
562
|
+
if (before_seq !== undefined && (after_seq !== undefined || wait)) {
|
|
563
|
+
return {
|
|
564
|
+
content: [{ type: "text", text: JSON.stringify({ error: "before_seq is mutually exclusive with after_seq and wait" }) }],
|
|
565
|
+
isError: true,
|
|
566
|
+
};
|
|
567
|
+
}
|
|
568
|
+
// Backward history paging — a plain read, no long-poll.
|
|
569
|
+
if (before_seq !== undefined) {
|
|
570
|
+
const events = await ctx.mgmt.getSessionEventsBefore(session_id, before_seq, eventLimit, event_types);
|
|
571
|
+
const oldestSeq = events.length > 0
|
|
572
|
+
? Math.min(...events.map((e) => e.seq ?? 0))
|
|
573
|
+
: before_seq;
|
|
574
|
+
return {
|
|
575
|
+
content: [{
|
|
576
|
+
type: "text",
|
|
577
|
+
text: JSON.stringify({ events, oldest_seq: oldestSeq, count: events.length }, null, 2),
|
|
578
|
+
}],
|
|
579
|
+
};
|
|
580
|
+
}
|
|
555
581
|
let statusChange = undefined;
|
|
556
582
|
if (wait) {
|
|
557
583
|
const timeoutMs = wait_timeout_ms ?? 30_000;
|
|
@@ -573,7 +599,7 @@ export function registerSessionTools(server, ctx) {
|
|
|
573
599
|
// Timeout or error — still return whatever events exist
|
|
574
600
|
}
|
|
575
601
|
}
|
|
576
|
-
const events = await ctx.mgmt.getSessionEvents(session_id, after_seq, eventLimit);
|
|
602
|
+
const events = await ctx.mgmt.getSessionEvents(session_id, after_seq, eventLimit, event_types);
|
|
577
603
|
const latestSeq = events.length > 0
|
|
578
604
|
? Math.max(...events.map((e) => e.seq ?? 0))
|
|
579
605
|
: (after_seq ?? 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/tools/sessions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/tools/sessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
2
|
+
import type { ServerContext } from "../context.js";
|
|
3
|
+
/**
|
|
4
|
+
* Ops preflight & system tools (proposal G7).
|
|
5
|
+
*
|
|
6
|
+
* get_system_status workers / log config / session policy / creatable agents
|
|
7
|
+
* restart_system_session bounce sweeper, resourcemgr, ... [admin]
|
|
8
|
+
* facts_admin purge tombstoned facts, prune deleted summaries [admin]
|
|
9
|
+
*
|
|
10
|
+
* get_system_status turns the `no_worker_claimed` create_session failure into
|
|
11
|
+
* a preflight check: workers === 0 means don't bother creating sessions yet.
|
|
12
|
+
*/
|
|
13
|
+
export declare function registerSystemTools(server: McpServer, ctx: ServerContext): void;
|
|
14
|
+
//# sourceMappingURL=system.d.ts.map
|