@agentistics/mcp 2.132.6 → 2.134.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/dist/agentistics-mcp.js +9 -4
- package/package.json +1 -1
package/dist/agentistics-mcp.js
CHANGED
|
@@ -1024,7 +1024,7 @@ var AGENT_TOOL_POLICY = {
|
|
|
1024
1024
|
agentistics_session_away: {
|
|
1025
1025
|
...GROUPS,
|
|
1026
1026
|
risk: "W",
|
|
1027
|
-
routes: ["GET /api/away", "PUT /api/away", "POST /api/away/notice"],
|
|
1027
|
+
routes: ["GET /api/away", "PUT /api/away", "PUT /api/away/session", "POST /api/away/notice"],
|
|
1028
1028
|
reason: "reads or switches away mode (what newly started sessions are told about the owner being out) and lets a leader raise a notice in the owner's bell; reversible by switching it off; the server accepts writes only from a verified LEADER session"
|
|
1029
1029
|
},
|
|
1030
1030
|
agentistics_summary: { ...DATA, capability: "localTranscripts", host: true, risk: "R", routes: ["GET /api/data", "GET /api/runtime/metrics"], reason: "reads computed metrics" },
|
|
@@ -2322,7 +2322,7 @@ var TOOLS = [
|
|
|
2322
2322
|
},
|
|
2323
2323
|
{
|
|
2324
2324
|
name: "agentistics_session_away",
|
|
2325
|
-
description: "Read or switch AWAY MODE, or send the owner a notice while away — the owner is out (asleep, travelling) and the fleet carries on without asking them. With no `on` it reports the state (`active`, `until`, what is pre-authorised). With `on: true` it switches it on: `until` is an ISO instant (omit = until the owner says they are back), `authorised` lists what the owner pre-approved (releases = publish releases the leader approved; workers = open worker sessions within the plan limits; merges = merge PRs the leader reviewed), `note` is free text. `on: false` switches it off. Every session started while it is active is told in its briefing. Only a LEADER session may switch it; use it when the owner tells you they are leaving or are back.",
|
|
2325
|
+
description: "Read or switch AWAY MODE, or send the owner a notice while away — the owner is out (asleep, travelling) and the fleet carries on without asking them. With no `on` it reports the state (`active`, `until`, what is pre-authorised). With `on: true` it switches it on: `until` is an ISO instant (omit = until the owner says they are back), `authorised` lists what the owner pre-approved (releases = publish releases the leader approved; workers = open worker sessions within the plan limits; merges = merge PRs the leader reviewed), `note` is free text. `on: false` switches it off. Every session started while it is active is told in its briefing. With `target` (a session's managed id or conversation id) `on` switches THAT session's own away mode instead — it alone is told the owner is out, even with the global switch off, and a running one is told the change; sessions it starts inherit it. Ceilings are per PROVIDER: `topCaps` maps a harness (claude, codex, gemini, copilot, antigravity, kimi, opencode) to how many workers may run on its top model tier at once. Only a LEADER session may switch it; use it when the owner tells you they are leaving or are back.",
|
|
2326
2326
|
inputSchema: {
|
|
2327
2327
|
type: "object",
|
|
2328
2328
|
properties: {
|
|
@@ -2331,7 +2331,8 @@ var TOOLS = [
|
|
|
2331
2331
|
authorised: { type: "array", items: { type: "string", enum: ["releases", "workers", "merges"] } },
|
|
2332
2332
|
note: { type: "string", description: "Free text from the owner (max 500 chars)." },
|
|
2333
2333
|
maxWorkers: { type: "number", description: "Ceiling of worker sessions at once while away (default 6)." },
|
|
2334
|
-
|
|
2334
|
+
topCaps: { type: "object", additionalProperties: { type: "number" }, description: "Per provider (harness id → number): ceiling of workers on that provider's top model tier at once (Opus, top GPT tier, Gemini Pro, …). A provider with no entry gets 2." },
|
|
2335
|
+
target: { type: "string", description: "A session's managed id or conversation id: switch only that session's own away mode (with `on`)." },
|
|
2335
2336
|
notice: { type: "string", description: "While away: a warning or decision that cannot wait, sent to the owner's bell/Nay as a notice (max 500 chars) instead of a question that blocks your turn. Leaders only; ignores the other fields." }
|
|
2336
2337
|
},
|
|
2337
2338
|
required: []
|
|
@@ -2801,13 +2802,17 @@ async function callTool(req) {
|
|
|
2801
2802
|
const body = await apiGet("/api/away");
|
|
2802
2803
|
return { content: [{ type: "text", text: JSON.stringify(body, null, 2) }] };
|
|
2803
2804
|
}
|
|
2805
|
+
if (typeof a.target === "string" && a.target.trim() !== "") {
|
|
2806
|
+
const body = await apiSend("PUT", "/api/away/session", { target: a.target, on: a.on, session: sessionProof(process.env) });
|
|
2807
|
+
return { content: [{ type: "text", text: JSON.stringify(body, null, 2) }] };
|
|
2808
|
+
}
|
|
2804
2809
|
const body = await apiSend("PUT", "/api/away", {
|
|
2805
2810
|
on: a.on,
|
|
2806
2811
|
...a.until !== undefined ? { until: a.until } : {},
|
|
2807
2812
|
...a.authorised !== undefined ? { authorised: a.authorised } : {},
|
|
2808
2813
|
...a.note !== undefined ? { note: a.note } : {},
|
|
2809
2814
|
...a.maxWorkers !== undefined ? { maxWorkers: a.maxWorkers } : {},
|
|
2810
|
-
...a.
|
|
2815
|
+
...a.topCaps !== undefined ? { topCaps: a.topCaps } : {},
|
|
2811
2816
|
session: sessionProof(process.env)
|
|
2812
2817
|
});
|
|
2813
2818
|
return { content: [{ type: "text", text: JSON.stringify(body, null, 2) }] };
|
package/package.json
CHANGED