@integrity-labs/agt-cli 0.28.689 → 0.28.691
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/bin/agt.js +5 -5
- package/dist/{chunk-RBZWLHGD.js → chunk-2GNXBVWJ.js} +20 -1
- package/dist/chunk-2GNXBVWJ.js.map +1 -0
- package/dist/{chunk-QXDHGJBW.js → chunk-XF2B7JHC.js} +2 -2
- package/dist/{chunk-4CQEX55A.js → chunk-ZY57BJYH.js} +4 -4
- package/dist/{claude-pair-runtime-36BMP4AW.js → claude-pair-runtime-PDOGREOQ.js} +2 -2
- package/dist/lib/manager-worker.js +13 -13
- package/dist/mcp/direct-chat-channel.js +19 -0
- package/dist/mcp/index.js +73 -2
- package/dist/mcp/origami.js +19 -0
- package/dist/mcp/slack-channel.js +19 -0
- package/dist/mcp/telegram-channel.js +19 -0
- package/dist/{persistent-session-WDAQ4RML.js → persistent-session-LVBNKFMF.js} +3 -3
- package/dist/{responsiveness-probe-NZH7PZEL.js → responsiveness-probe-T52RFYK3.js} +3 -3
- package/dist/{session-auth-dead-JCK3BOVA.js → session-auth-dead-MV6C7TBH.js} +2 -2
- package/package.json +1 -1
- package/dist/chunk-RBZWLHGD.js.map +0 -1
- /package/dist/{chunk-QXDHGJBW.js.map → chunk-XF2B7JHC.js.map} +0 -0
- /package/dist/{chunk-4CQEX55A.js.map → chunk-ZY57BJYH.js.map} +0 -0
- /package/dist/{claude-pair-runtime-36BMP4AW.js.map → claude-pair-runtime-PDOGREOQ.js.map} +0 -0
- /package/dist/{persistent-session-WDAQ4RML.js.map → persistent-session-LVBNKFMF.js.map} +0 -0
- /package/dist/{responsiveness-probe-NZH7PZEL.js.map → responsiveness-probe-T52RFYK3.js.map} +0 -0
- /package/dist/{session-auth-dead-JCK3BOVA.js.map → session-auth-dead-MV6C7TBH.js.map} +0 -0
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
rotateDailySession,
|
|
18
18
|
sessionFileExists,
|
|
19
19
|
todayLocalIso
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-2GNXBVWJ.js";
|
|
21
21
|
import {
|
|
22
22
|
reapOrphanChannelMcps
|
|
23
23
|
} from "./chunk-XWVM4KPK.js";
|
|
@@ -4531,4 +4531,4 @@ export {
|
|
|
4531
4531
|
stopAllSessionsAndWait,
|
|
4532
4532
|
getProjectDir
|
|
4533
4533
|
};
|
|
4534
|
-
//# sourceMappingURL=chunk-
|
|
4534
|
+
//# sourceMappingURL=chunk-XF2B7JHC.js.map
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
parseEnvFileEntries,
|
|
13
13
|
parseEnvIntegrations,
|
|
14
14
|
shellQuote
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-XF2B7JHC.js";
|
|
16
16
|
import {
|
|
17
17
|
BIND_FAILURE_QUARANTINE_THRESHOLD,
|
|
18
18
|
INTEGRATIONS_SECTION_END,
|
|
@@ -59,7 +59,7 @@ import {
|
|
|
59
59
|
resolveConnectivityProbe,
|
|
60
60
|
worseConnectivityOutcome,
|
|
61
61
|
wrapScheduledTaskPrompt
|
|
62
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-2GNXBVWJ.js";
|
|
63
63
|
import {
|
|
64
64
|
parsePsRows
|
|
65
65
|
} from "./chunk-XWVM4KPK.js";
|
|
@@ -6526,7 +6526,7 @@ function exchangeFailureKind(err) {
|
|
|
6526
6526
|
}
|
|
6527
6527
|
|
|
6528
6528
|
// src/lib/api-client.ts
|
|
6529
|
-
var agtCliVersion = true ? "0.28.
|
|
6529
|
+
var agtCliVersion = true ? "0.28.691" : "dev";
|
|
6530
6530
|
var lastConfigHash = null;
|
|
6531
6531
|
function setConfigHash(hash) {
|
|
6532
6532
|
lastConfigHash = hash && hash.length > 0 ? hash : null;
|
|
@@ -10268,4 +10268,4 @@ export {
|
|
|
10268
10268
|
managerInstallSystemUnitCommand,
|
|
10269
10269
|
managerUninstallSystemUnitCommand
|
|
10270
10270
|
};
|
|
10271
|
-
//# sourceMappingURL=chunk-
|
|
10271
|
+
//# sourceMappingURL=chunk-ZY57BJYH.js.map
|
|
@@ -100,7 +100,7 @@ async function spawnPairSession(session) {
|
|
|
100
100
|
return { ok: true };
|
|
101
101
|
} catch {
|
|
102
102
|
}
|
|
103
|
-
const { resolveClaudeBinary } = await import("./persistent-session-
|
|
103
|
+
const { resolveClaudeBinary } = await import("./persistent-session-LVBNKFMF.js");
|
|
104
104
|
const claudeBin = resolveClaudeBinary();
|
|
105
105
|
const pairEnv = {
|
|
106
106
|
...process.env,
|
|
@@ -373,4 +373,4 @@ export {
|
|
|
373
373
|
startClaudePair,
|
|
374
374
|
submitClaudePairCode
|
|
375
375
|
};
|
|
376
|
-
//# sourceMappingURL=claude-pair-runtime-
|
|
376
|
+
//# sourceMappingURL=claude-pair-runtime-PDOGREOQ.js.map
|
|
@@ -55,7 +55,7 @@ import {
|
|
|
55
55
|
setConfigHash,
|
|
56
56
|
setSecretFileTmpfsBacking,
|
|
57
57
|
tripClass
|
|
58
|
-
} from "../chunk-
|
|
58
|
+
} from "../chunk-ZY57BJYH.js";
|
|
59
59
|
import {
|
|
60
60
|
getProjectDir as getProjectDir2,
|
|
61
61
|
getReadyTasks,
|
|
@@ -113,7 +113,7 @@ import {
|
|
|
113
113
|
takeZombieDetection,
|
|
114
114
|
toOpencodeModel,
|
|
115
115
|
writeEgressAllowlist
|
|
116
|
-
} from "../chunk-
|
|
116
|
+
} from "../chunk-XF2B7JHC.js";
|
|
117
117
|
import {
|
|
118
118
|
ACCOUNT_ENFORCEMENT_MARKER_FILENAME,
|
|
119
119
|
AnchorSessionClient,
|
|
@@ -194,7 +194,7 @@ import {
|
|
|
194
194
|
subagentActivityAgeSeconds,
|
|
195
195
|
sumTranscriptUsageInWindow,
|
|
196
196
|
transcriptActivityAgeSeconds
|
|
197
|
-
} from "../chunk-
|
|
197
|
+
} from "../chunk-2GNXBVWJ.js";
|
|
198
198
|
import {
|
|
199
199
|
reapOrphanChannelMcps
|
|
200
200
|
} from "../chunk-XWVM4KPK.js";
|
|
@@ -11755,7 +11755,7 @@ var pendingDayRolloverReset = /* @__PURE__ */ new Set();
|
|
|
11755
11755
|
var dayRolloverInboundHold = /* @__PURE__ */ new Map();
|
|
11756
11756
|
var INBOUND_HOLD_EPISODE_GAP_MS = 12e4;
|
|
11757
11757
|
async function channelInboundActivityAgeSecondsFor(codeName) {
|
|
11758
|
-
const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-
|
|
11758
|
+
const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-T52RFYK3.js");
|
|
11759
11759
|
const newest = newestPendingInboundActivityMtimeMs(dirname10(paneLogPath(codeName)));
|
|
11760
11760
|
if (newest === null) return null;
|
|
11761
11761
|
return Math.max(0, Math.floor((Date.now() - newest) / 1e3));
|
|
@@ -12403,7 +12403,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
|
|
|
12403
12403
|
var lastVersionCheckAt = 0;
|
|
12404
12404
|
var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
|
|
12405
12405
|
var lastResponsivenessProbeAt = 0;
|
|
12406
|
-
var agtCliVersion = true ? "0.28.
|
|
12406
|
+
var agtCliVersion = true ? "0.28.691" : "dev";
|
|
12407
12407
|
function resolveBrewPath(execFileSync3) {
|
|
12408
12408
|
try {
|
|
12409
12409
|
const out = execFileSync3("which", ["brew"], { timeout: 5e3 }).toString().trim();
|
|
@@ -13864,7 +13864,7 @@ function flushRestartedAgentDiagnostics(hostId, codeNames) {
|
|
|
13864
13864
|
if (codeNames.length === 0) return;
|
|
13865
13865
|
void (async () => {
|
|
13866
13866
|
try {
|
|
13867
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
13867
|
+
const { collectDiagnostics } = await import("../persistent-session-LVBNKFMF.js");
|
|
13868
13868
|
await api.post("/host/heartbeat", {
|
|
13869
13869
|
host_id: hostId,
|
|
13870
13870
|
agent_diagnostics: collectDiagnostics(codeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor)
|
|
@@ -13981,7 +13981,7 @@ async function pollCycleInner() {
|
|
|
13981
13981
|
}
|
|
13982
13982
|
try {
|
|
13983
13983
|
const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
|
|
13984
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
13984
|
+
const { collectDiagnostics } = await import("../persistent-session-LVBNKFMF.js");
|
|
13985
13985
|
const diagCodeNames = [...agentState.persistentSessionAgents];
|
|
13986
13986
|
const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor) : void 0;
|
|
13987
13987
|
let tailscaleHostname;
|
|
@@ -14133,7 +14133,7 @@ async function pollCycleInner() {
|
|
|
14133
14133
|
collectPanelessActivityProbes,
|
|
14134
14134
|
getResponsivenessIntervalMs,
|
|
14135
14135
|
occupancyQualificationClassifications
|
|
14136
|
-
} = await import("../responsiveness-probe-
|
|
14136
|
+
} = await import("../responsiveness-probe-T52RFYK3.js");
|
|
14137
14137
|
const probeIntervalMs = getResponsivenessIntervalMs();
|
|
14138
14138
|
if (now - lastResponsivenessProbeAt > probeIntervalMs) {
|
|
14139
14139
|
const probeCodeNames = [...agentState.persistentSessionAgents];
|
|
@@ -14243,7 +14243,7 @@ async function pollCycleInner() {
|
|
|
14243
14243
|
collectResponsivenessProbes,
|
|
14244
14244
|
livePendingInboundOldestAgeSeconds,
|
|
14245
14245
|
parkPendingInbound
|
|
14246
|
-
} = await import("../responsiveness-probe-
|
|
14246
|
+
} = await import("../responsiveness-probe-T52RFYK3.js");
|
|
14247
14247
|
const { getProjectDir: wedgeProjectDir } = await import("../scheduler-engine-NDP36U7O.js");
|
|
14248
14248
|
const wedgeNow = /* @__PURE__ */ new Date();
|
|
14249
14249
|
const liveAgents = agentState.persistentSessionAgents;
|
|
@@ -14399,7 +14399,7 @@ async function pollCycleInner() {
|
|
|
14399
14399
|
}
|
|
14400
14400
|
try {
|
|
14401
14401
|
const { scrapeMcpFailedBannerCount } = await import("../pane-mcp-banner-scraper-JA437JIB.js");
|
|
14402
|
-
const { probeSessionAuth } = await import("../session-auth-dead-
|
|
14402
|
+
const { probeSessionAuth } = await import("../session-auth-dead-MV6C7TBH.js");
|
|
14403
14403
|
const observations = [];
|
|
14404
14404
|
const pendingCacheCommits = [];
|
|
14405
14405
|
const modelApiErrorReportingOn = hostFlagStore().getBoolean("model-api-error-reporting");
|
|
@@ -18160,7 +18160,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
|
|
|
18160
18160
|
void api.post("/host/restart-ack", { host_id: hostId, agent_id: agentId, restart_requested_at: requestedAt }).catch((err) => log(`[restart-lane] ack failed for '${codeName}': ${err.message}`));
|
|
18161
18161
|
void (async () => {
|
|
18162
18162
|
try {
|
|
18163
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
18163
|
+
const { collectDiagnostics } = await import("../persistent-session-LVBNKFMF.js");
|
|
18164
18164
|
await api.post("/host/heartbeat", {
|
|
18165
18165
|
host_id: hostId,
|
|
18166
18166
|
agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor)
|
|
@@ -18211,7 +18211,7 @@ async function respawnAgentAfterMcpStop(codeName, reason) {
|
|
|
18211
18211
|
}
|
|
18212
18212
|
try {
|
|
18213
18213
|
const hostId = await getHostId();
|
|
18214
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
18214
|
+
const { collectDiagnostics } = await import("../persistent-session-LVBNKFMF.js");
|
|
18215
18215
|
await api.post("/host/heartbeat", {
|
|
18216
18216
|
host_id: hostId,
|
|
18217
18217
|
agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor)
|
|
@@ -18843,7 +18843,7 @@ async function processClaudePairSessions(agents) {
|
|
|
18843
18843
|
killPairSession,
|
|
18844
18844
|
pairTmuxSession,
|
|
18845
18845
|
finalizeClaudePairOnboarding
|
|
18846
|
-
} = await import("../claude-pair-runtime-
|
|
18846
|
+
} = await import("../claude-pair-runtime-PDOGREOQ.js");
|
|
18847
18847
|
for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
|
|
18848
18848
|
log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
|
|
18849
18849
|
const killed = await killPairSession(pairTmuxSession(pairId));
|
|
@@ -34100,6 +34100,25 @@ var INTEGRATION_REGISTRY = [
|
|
|
34100
34100
|
name: "Write Summaries",
|
|
34101
34101
|
description: "Write or revise this agent's own summary of a note it was sent (ninjafy_notes_write_summary).",
|
|
34102
34102
|
access: "write"
|
|
34103
|
+
},
|
|
34104
|
+
{
|
|
34105
|
+
// ADR-0073. Present in the seed catalog's `defined_scopes` since
|
|
34106
|
+
// ENG-9358 but missing from this registry until now — a drift worth
|
|
34107
|
+
// noting, because this registry is what the org-scoped premium surface
|
|
34108
|
+
// reads and the seed is not.
|
|
34109
|
+
//
|
|
34110
|
+
// THE ONE `requires_org_opt_in` CAPABILITY TODAY, and the reason the
|
|
34111
|
+
// field exists. Live advising streams a meeting IN FLIGHT to a
|
|
34112
|
+
// server-side vet and meters per armed minute — a different exposure
|
|
34113
|
+
// from reading a transcript afterwards (ADR-0072), and a recurring
|
|
34114
|
+
// cost. Whether that happens is the customer's decision about their own
|
|
34115
|
+
// meetings, not ours; before ADR-0073 the only place to record it was
|
|
34116
|
+
// `live-meeting-advisor` in FLAG_REGISTRY, which is a staff control.
|
|
34117
|
+
id: "ninjafy-notes:live-advise",
|
|
34118
|
+
name: "Live Meeting Advice",
|
|
34119
|
+
description: "Let an agent advise on a meeting while it is happening. Audio is transcribed on the Mac as usual; short passages are then checked by Augmented Team to decide when the agent should speak up, and the agent sees those moments in real time. Off until you turn it on. Billed per minute the advisor is armed.",
|
|
34120
|
+
access: "write",
|
|
34121
|
+
requires_org_opt_in: true
|
|
34103
34122
|
}
|
|
34104
34123
|
],
|
|
34105
34124
|
beta: true,
|
package/dist/mcp/index.js
CHANGED
|
@@ -41500,6 +41500,25 @@ var INTEGRATION_REGISTRY = [
|
|
|
41500
41500
|
name: "Write Summaries",
|
|
41501
41501
|
description: "Write or revise this agent's own summary of a note it was sent (ninjafy_notes_write_summary).",
|
|
41502
41502
|
access: "write"
|
|
41503
|
+
},
|
|
41504
|
+
{
|
|
41505
|
+
// ADR-0073. Present in the seed catalog's `defined_scopes` since
|
|
41506
|
+
// ENG-9358 but missing from this registry until now — a drift worth
|
|
41507
|
+
// noting, because this registry is what the org-scoped premium surface
|
|
41508
|
+
// reads and the seed is not.
|
|
41509
|
+
//
|
|
41510
|
+
// THE ONE `requires_org_opt_in` CAPABILITY TODAY, and the reason the
|
|
41511
|
+
// field exists. Live advising streams a meeting IN FLIGHT to a
|
|
41512
|
+
// server-side vet and meters per armed minute — a different exposure
|
|
41513
|
+
// from reading a transcript afterwards (ADR-0072), and a recurring
|
|
41514
|
+
// cost. Whether that happens is the customer's decision about their own
|
|
41515
|
+
// meetings, not ours; before ADR-0073 the only place to record it was
|
|
41516
|
+
// `live-meeting-advisor` in FLAG_REGISTRY, which is a staff control.
|
|
41517
|
+
id: "ninjafy-notes:live-advise",
|
|
41518
|
+
name: "Live Meeting Advice",
|
|
41519
|
+
description: "Let an agent advise on a meeting while it is happening. Audio is transcribed on the Mac as usual; short passages are then checked by Augmented Team to decide when the agent should speak up, and the agent sees those moments in real time. Off until you turn it on. Billed per minute the advisor is armed.",
|
|
41520
|
+
access: "write",
|
|
41521
|
+
requires_org_opt_in: true
|
|
41503
41522
|
}
|
|
41504
41523
|
],
|
|
41505
41524
|
beta: true,
|
|
@@ -45791,11 +45810,61 @@ server.tool(
|
|
|
45791
45810
|
return { content: [{ type: "text", text: data.message ?? `Offer ${data.offer_id} filed.` }] };
|
|
45792
45811
|
}
|
|
45793
45812
|
);
|
|
45813
|
+
server.tool(
|
|
45814
|
+
"routine_list",
|
|
45815
|
+
"List the routines YOU own - the recurring responsibilities a human accepted on your behalf. Call this FIRST whenever you need a routine_id: routine_revise and submit_routine_output both require one, and this is the only tool that produces it. Each entry gives you the routine_id, its name and status, the schedule it runs on (id, cron, timezone), its version, whether it owes a submit_routine_output call, and its FULL current prompt. The prompt is complete and untruncated on purpose: routine_revise replaces a routine's substance wholesale, so anything missing from what you read is missing from what you write. Read it here before revising rather than reconstructing it from memory. Returns an empty list if you own none - that is an answer, not an error.",
|
|
45816
|
+
{},
|
|
45817
|
+
async () => {
|
|
45818
|
+
try {
|
|
45819
|
+
const data = await apiPost("/host/routines/list", { agent_id: AGT_AGENT_ID }, false, 15e3, "routine_list", true);
|
|
45820
|
+
if (!data.ok) {
|
|
45821
|
+
return { content: [{ type: "text", text: data.error ?? "Could not list routines." }] };
|
|
45822
|
+
}
|
|
45823
|
+
const routines = data.routines ?? [];
|
|
45824
|
+
if (routines.length === 0) {
|
|
45825
|
+
return {
|
|
45826
|
+
content: [
|
|
45827
|
+
{
|
|
45828
|
+
type: "text",
|
|
45829
|
+
text: "You own no routines. A routine is created when you propose one with routine_propose and a human accepts it."
|
|
45830
|
+
}
|
|
45831
|
+
]
|
|
45832
|
+
};
|
|
45833
|
+
}
|
|
45834
|
+
const body = routines.map((r) => {
|
|
45835
|
+
const when = r.cron ? `cron ${r.cron}` : r.every ? `every ${r.every}` : "no schedule";
|
|
45836
|
+
const tz = r.timezone ? ` ${r.timezone}` : "";
|
|
45837
|
+
const gated = r.requires_output_approval ? "\n approval: REQUIRED \u2014 call submit_routine_output instead of delivering directly" : "";
|
|
45838
|
+
return `\u2022 ${r.name} [${r.status}] v${r.version}
|
|
45839
|
+
routine_id: ${r.routine_id}
|
|
45840
|
+
schedule_id: ${r.schedule_id ?? "(none \u2014 this routine has no runtime row)"} (${when}${tz})${gated}
|
|
45841
|
+
prompt:
|
|
45842
|
+
${r.prompt ?? "(none)"}`;
|
|
45843
|
+
}).join("\n\n");
|
|
45844
|
+
return {
|
|
45845
|
+
content: [
|
|
45846
|
+
{
|
|
45847
|
+
type: "text",
|
|
45848
|
+
text: `${routines.length} routine${routines.length === 1 ? "" : "s"} you own:
|
|
45849
|
+
|
|
45850
|
+
${body}`
|
|
45851
|
+
}
|
|
45852
|
+
]
|
|
45853
|
+
};
|
|
45854
|
+
} catch (err) {
|
|
45855
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
45856
|
+
return {
|
|
45857
|
+
content: [{ type: "text", text: `Could not list your routines: ${msg}` }],
|
|
45858
|
+
isError: true
|
|
45859
|
+
};
|
|
45860
|
+
}
|
|
45861
|
+
}
|
|
45862
|
+
);
|
|
45794
45863
|
server.tool(
|
|
45795
45864
|
"routine_revise",
|
|
45796
45865
|
"Propose a CORRECTION to a routine you already own, for your manager to accept or decline. Use this when a routine you run is wrong: bad instructions, a gate that never fires, a step that no longer applies, or a defect you spotted before it ever ran. This is the only way to change what a routine DOES - schedule_update deliberately refuses prompt edits, and it will point you here. It does NOT change when the routine runs: to retime it, send only schedule fields to schedule_update instead. Nothing changes until your manager accepts: they get an accept/decline card, and the live routine keeps running as-is until they tap. On acceptance the SAME routine is updated in place - no duplicate is created. Pass the full replacement description, not a diff or a patch: it replaces the routine's substance wholesale, so anything you leave out is gone.",
|
|
45797
45866
|
{
|
|
45798
|
-
routine_id: external_exports.string().trim().min(1).describe("The
|
|
45867
|
+
routine_id: external_exports.string().trim().min(1).describe("The routine to revise. Get this from routine_list. A schedule_id from schedule_list is also accepted and resolved server-side. It must be a routine YOU own; anything else reads as not-found."),
|
|
45799
45868
|
description: external_exports.string().trim().min(1).describe(
|
|
45800
45869
|
"The FULL replacement description - what the routine should do, from scratch. This becomes the routine's instructions verbatim, so write it as a complete brief rather than as a change to the old one. Anything you omit is removed."
|
|
45801
45870
|
),
|
|
@@ -45833,7 +45902,7 @@ server.tool(
|
|
|
45833
45902
|
content: [
|
|
45834
45903
|
{
|
|
45835
45904
|
type: "text",
|
|
45836
|
-
text: notFound ? `Could not revise:
|
|
45905
|
+
text: notFound ? `Could not revise: nothing matched "${params.routine_id}". Call routine_list to get the routine_id \u2014 it also accepts a schedule_id from schedule_list.` : `Could not propose the revision: ${msg}`
|
|
45837
45906
|
}
|
|
45838
45907
|
],
|
|
45839
45908
|
isError: true
|
|
@@ -46585,6 +46654,8 @@ var LOCAL_TOOL_NAMES = /* @__PURE__ */ new Set([
|
|
|
46585
46654
|
"routine_propose",
|
|
46586
46655
|
// ENG-9392: the correction half of routine_propose.
|
|
46587
46656
|
"routine_revise",
|
|
46657
|
+
// ENG-9431: the discovery primitive both of the above depend on.
|
|
46658
|
+
"routine_list",
|
|
46588
46659
|
"knowledge_list",
|
|
46589
46660
|
"knowledge_add",
|
|
46590
46661
|
"knowledge_update",
|
package/dist/mcp/origami.js
CHANGED
|
@@ -40308,6 +40308,25 @@ var INTEGRATION_REGISTRY = [
|
|
|
40308
40308
|
name: "Write Summaries",
|
|
40309
40309
|
description: "Write or revise this agent's own summary of a note it was sent (ninjafy_notes_write_summary).",
|
|
40310
40310
|
access: "write"
|
|
40311
|
+
},
|
|
40312
|
+
{
|
|
40313
|
+
// ADR-0073. Present in the seed catalog's `defined_scopes` since
|
|
40314
|
+
// ENG-9358 but missing from this registry until now — a drift worth
|
|
40315
|
+
// noting, because this registry is what the org-scoped premium surface
|
|
40316
|
+
// reads and the seed is not.
|
|
40317
|
+
//
|
|
40318
|
+
// THE ONE `requires_org_opt_in` CAPABILITY TODAY, and the reason the
|
|
40319
|
+
// field exists. Live advising streams a meeting IN FLIGHT to a
|
|
40320
|
+
// server-side vet and meters per armed minute — a different exposure
|
|
40321
|
+
// from reading a transcript afterwards (ADR-0072), and a recurring
|
|
40322
|
+
// cost. Whether that happens is the customer's decision about their own
|
|
40323
|
+
// meetings, not ours; before ADR-0073 the only place to record it was
|
|
40324
|
+
// `live-meeting-advisor` in FLAG_REGISTRY, which is a staff control.
|
|
40325
|
+
id: "ninjafy-notes:live-advise",
|
|
40326
|
+
name: "Live Meeting Advice",
|
|
40327
|
+
description: "Let an agent advise on a meeting while it is happening. Audio is transcribed on the Mac as usual; short passages are then checked by Augmented Team to decide when the agent should speak up, and the agent sees those moments in real time. Off until you turn it on. Billed per minute the advisor is armed.",
|
|
40328
|
+
access: "write",
|
|
40329
|
+
requires_org_opt_in: true
|
|
40311
40330
|
}
|
|
40312
40331
|
],
|
|
40313
40332
|
beta: true,
|
|
@@ -34362,6 +34362,25 @@ var INTEGRATION_REGISTRY = [
|
|
|
34362
34362
|
name: "Write Summaries",
|
|
34363
34363
|
description: "Write or revise this agent's own summary of a note it was sent (ninjafy_notes_write_summary).",
|
|
34364
34364
|
access: "write"
|
|
34365
|
+
},
|
|
34366
|
+
{
|
|
34367
|
+
// ADR-0073. Present in the seed catalog's `defined_scopes` since
|
|
34368
|
+
// ENG-9358 but missing from this registry until now — a drift worth
|
|
34369
|
+
// noting, because this registry is what the org-scoped premium surface
|
|
34370
|
+
// reads and the seed is not.
|
|
34371
|
+
//
|
|
34372
|
+
// THE ONE `requires_org_opt_in` CAPABILITY TODAY, and the reason the
|
|
34373
|
+
// field exists. Live advising streams a meeting IN FLIGHT to a
|
|
34374
|
+
// server-side vet and meters per armed minute — a different exposure
|
|
34375
|
+
// from reading a transcript afterwards (ADR-0072), and a recurring
|
|
34376
|
+
// cost. Whether that happens is the customer's decision about their own
|
|
34377
|
+
// meetings, not ours; before ADR-0073 the only place to record it was
|
|
34378
|
+
// `live-meeting-advisor` in FLAG_REGISTRY, which is a staff control.
|
|
34379
|
+
id: "ninjafy-notes:live-advise",
|
|
34380
|
+
name: "Live Meeting Advice",
|
|
34381
|
+
description: "Let an agent advise on a meeting while it is happening. Audio is transcribed on the Mac as usual; short passages are then checked by Augmented Team to decide when the agent should speak up, and the agent sees those moments in real time. Off until you turn it on. Billed per minute the advisor is armed.",
|
|
34382
|
+
access: "write",
|
|
34383
|
+
requires_org_opt_in: true
|
|
34365
34384
|
}
|
|
34366
34385
|
],
|
|
34367
34386
|
beta: true,
|
|
@@ -34518,6 +34518,25 @@ var INTEGRATION_REGISTRY = [
|
|
|
34518
34518
|
name: "Write Summaries",
|
|
34519
34519
|
description: "Write or revise this agent's own summary of a note it was sent (ninjafy_notes_write_summary).",
|
|
34520
34520
|
access: "write"
|
|
34521
|
+
},
|
|
34522
|
+
{
|
|
34523
|
+
// ADR-0073. Present in the seed catalog's `defined_scopes` since
|
|
34524
|
+
// ENG-9358 but missing from this registry until now — a drift worth
|
|
34525
|
+
// noting, because this registry is what the org-scoped premium surface
|
|
34526
|
+
// reads and the seed is not.
|
|
34527
|
+
//
|
|
34528
|
+
// THE ONE `requires_org_opt_in` CAPABILITY TODAY, and the reason the
|
|
34529
|
+
// field exists. Live advising streams a meeting IN FLIGHT to a
|
|
34530
|
+
// server-side vet and meters per armed minute — a different exposure
|
|
34531
|
+
// from reading a transcript afterwards (ADR-0072), and a recurring
|
|
34532
|
+
// cost. Whether that happens is the customer's decision about their own
|
|
34533
|
+
// meetings, not ours; before ADR-0073 the only place to record it was
|
|
34534
|
+
// `live-meeting-advisor` in FLAG_REGISTRY, which is a staff control.
|
|
34535
|
+
id: "ninjafy-notes:live-advise",
|
|
34536
|
+
name: "Live Meeting Advice",
|
|
34537
|
+
description: "Let an agent advise on a meeting while it is happening. Audio is transcribed on the Mac as usual; short passages are then checked by Augmented Team to decide when the agent should speak up, and the agent sees those moments in real time. Off until you turn it on. Billed per minute the advisor is armed.",
|
|
34538
|
+
access: "write",
|
|
34539
|
+
requires_org_opt_in: true
|
|
34521
34540
|
}
|
|
34522
34541
|
],
|
|
34523
34542
|
beta: true,
|
|
@@ -43,8 +43,8 @@ import {
|
|
|
43
43
|
writeDirectChatSessionState,
|
|
44
44
|
writeEgressAllowlist,
|
|
45
45
|
writePersistentClaudeWrapper
|
|
46
|
-
} from "./chunk-
|
|
47
|
-
import "./chunk-
|
|
46
|
+
} from "./chunk-XF2B7JHC.js";
|
|
47
|
+
import "./chunk-2GNXBVWJ.js";
|
|
48
48
|
import "./chunk-XWVM4KPK.js";
|
|
49
49
|
export {
|
|
50
50
|
EGRESS_BASELINE_DOMAINS,
|
|
@@ -92,4 +92,4 @@ export {
|
|
|
92
92
|
writeEgressAllowlist,
|
|
93
93
|
writePersistentClaudeWrapper
|
|
94
94
|
};
|
|
95
|
-
//# sourceMappingURL=persistent-session-
|
|
95
|
+
//# sourceMappingURL=persistent-session-LVBNKFMF.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
paneLogPath
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-XF2B7JHC.js";
|
|
4
|
+
import "./chunk-2GNXBVWJ.js";
|
|
5
5
|
import "./chunk-XWVM4KPK.js";
|
|
6
6
|
|
|
7
7
|
// src/lib/responsiveness-probe.ts
|
|
@@ -745,4 +745,4 @@ export {
|
|
|
745
745
|
readAndResetSlackReplyBindingClassifications,
|
|
746
746
|
readAndResetSlackReplyTargetClassifications
|
|
747
747
|
};
|
|
748
|
-
//# sourceMappingURL=responsiveness-probe-
|
|
748
|
+
//# sourceMappingURL=responsiveness-probe-T52RFYK3.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
sessionTranscriptDir
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-2GNXBVWJ.js";
|
|
4
4
|
|
|
5
5
|
// src/lib/session-auth-dead.ts
|
|
6
6
|
import { closeSync, openSync, readSync, readdirSync, statSync } from "fs";
|
|
@@ -203,4 +203,4 @@ export {
|
|
|
203
203
|
decideSessionAuthState,
|
|
204
204
|
probeSessionAuth
|
|
205
205
|
};
|
|
206
|
-
//# sourceMappingURL=session-auth-dead-
|
|
206
|
+
//# sourceMappingURL=session-auth-dead-MV6C7TBH.js.map
|