@integrity-labs/agt-cli 0.28.419 → 0.28.421
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 +4 -4
- package/dist/{chunk-IKQHNN7I.js → chunk-B4NX2T2H.js} +50 -14
- package/dist/chunk-B4NX2T2H.js.map +1 -0
- package/dist/{chunk-W63FDJBY.js → chunk-HVVEMQWZ.js} +3 -3
- package/dist/{claude-pair-runtime-UOH5MOK4.js → claude-pair-runtime-ZTZR3VCN.js} +2 -2
- package/dist/lib/manager-worker.js +10 -10
- package/dist/mcp/direct-chat-channel.js +40 -11
- package/dist/mcp/origami.js +40 -11
- package/dist/mcp/slack-channel.js +147 -12
- package/dist/mcp/telegram-channel.js +40 -11
- package/dist/{persistent-session-AYCUX4DJ.js → persistent-session-2OYYXMM7.js} +2 -2
- package/dist/{responsiveness-probe-AQUOYHCE.js → responsiveness-probe-7OOA57BP.js} +12 -3
- package/dist/responsiveness-probe-7OOA57BP.js.map +1 -0
- package/package.json +1 -1
- package/dist/chunk-IKQHNN7I.js.map +0 -1
- package/dist/responsiveness-probe-AQUOYHCE.js.map +0 -1
- /package/dist/{chunk-W63FDJBY.js.map → chunk-HVVEMQWZ.js.map} +0 -0
- /package/dist/{claude-pair-runtime-UOH5MOK4.js.map → claude-pair-runtime-ZTZR3VCN.js.map} +0 -0
- /package/dist/{persistent-session-AYCUX4DJ.js.map → persistent-session-2OYYXMM7.js.map} +0 -0
package/dist/bin/agt.js
CHANGED
|
@@ -40,7 +40,7 @@ import {
|
|
|
40
40
|
success,
|
|
41
41
|
table,
|
|
42
42
|
warn
|
|
43
|
-
} from "../chunk-
|
|
43
|
+
} from "../chunk-HVVEMQWZ.js";
|
|
44
44
|
import {
|
|
45
45
|
AnchorSessionClient,
|
|
46
46
|
CHANNEL_REGISTRY,
|
|
@@ -70,7 +70,7 @@ import {
|
|
|
70
70
|
renderTemplate,
|
|
71
71
|
resolveChannels,
|
|
72
72
|
serializeManifestForSlackCli
|
|
73
|
-
} from "../chunk-
|
|
73
|
+
} from "../chunk-B4NX2T2H.js";
|
|
74
74
|
import "../chunk-XWVM4KPK.js";
|
|
75
75
|
|
|
76
76
|
// src/bin/agt.ts
|
|
@@ -4829,7 +4829,7 @@ import { execFileSync, execSync } from "child_process";
|
|
|
4829
4829
|
import { existsSync as existsSync10, realpathSync as realpathSync2 } from "fs";
|
|
4830
4830
|
import chalk18 from "chalk";
|
|
4831
4831
|
import ora16 from "ora";
|
|
4832
|
-
var cliVersion = true ? "0.28.
|
|
4832
|
+
var cliVersion = true ? "0.28.421" : "dev";
|
|
4833
4833
|
async function fetchLatestVersion() {
|
|
4834
4834
|
const host2 = getHost();
|
|
4835
4835
|
if (!host2) return null;
|
|
@@ -6001,7 +6001,7 @@ function handleError(err) {
|
|
|
6001
6001
|
}
|
|
6002
6002
|
|
|
6003
6003
|
// src/bin/agt.ts
|
|
6004
|
-
var cliVersion2 = true ? "0.28.
|
|
6004
|
+
var cliVersion2 = true ? "0.28.421" : "dev";
|
|
6005
6005
|
var program = new Command();
|
|
6006
6006
|
program.name("agt").description("Augmented CLI \u2014 agent provisioning and management").version(cliVersion2).option("--json", "Emit machine-readable JSON output (suppress spinners and colors)").option("--skip-update-check", "Skip the automatic update check on startup");
|
|
6007
6007
|
program.hook("preAction", async (thisCommand, actionCommand) => {
|
|
@@ -2968,19 +2968,27 @@ function resolveAvatarEnvUrl(raw) {
|
|
|
2968
2968
|
|
|
2969
2969
|
// ../../packages/core/dist/provisioning/ec2-capacity.js
|
|
2970
2970
|
var CAPACITY_TABLE = {
|
|
2971
|
-
// t3 family —
|
|
2972
|
-
//
|
|
2971
|
+
// t3 family — burstable (CPU credits). Fine for these mostly-I/O-bound
|
|
2972
|
+
// agents; the monitor + resize path cover the rare sustained-load case.
|
|
2973
2973
|
"t3.micro": 1,
|
|
2974
|
-
//
|
|
2975
|
-
"t3.small":
|
|
2976
|
-
//
|
|
2977
|
-
"t3.medium":
|
|
2978
|
-
//
|
|
2979
|
-
"t3.large":
|
|
2980
|
-
//
|
|
2981
|
-
"t3.xlarge":
|
|
2974
|
+
// 2 vCPU / 1 GB — floor
|
|
2975
|
+
"t3.small": 2,
|
|
2976
|
+
// 2 vCPU / 2 GB
|
|
2977
|
+
"t3.medium": 4,
|
|
2978
|
+
// 2 vCPU / 4 GB
|
|
2979
|
+
"t3.large": 8,
|
|
2980
|
+
// 2 vCPU / 8 GB
|
|
2981
|
+
"t3.xlarge": 16,
|
|
2982
2982
|
// 4 vCPU / 16 GB
|
|
2983
|
-
"t3.2xlarge":
|
|
2983
|
+
"t3.2xlarge": 32,
|
|
2984
|
+
// 8 vCPU / 32 GB
|
|
2985
|
+
// m6i family — fixed performance (no burst-credit cliff), the preferred
|
|
2986
|
+
// family for dense / sustained multi-agent hosts (e.g. Enterprise default).
|
|
2987
|
+
"m6i.large": 8,
|
|
2988
|
+
// 2 vCPU / 8 GB
|
|
2989
|
+
"m6i.xlarge": 16,
|
|
2990
|
+
// 4 vCPU / 16 GB
|
|
2991
|
+
"m6i.2xlarge": 32
|
|
2984
2992
|
// 8 vCPU / 32 GB
|
|
2985
2993
|
};
|
|
2986
2994
|
var KNOWN_INSTANCE_TYPES = Object.keys(CAPACITY_TABLE);
|
|
@@ -4126,6 +4134,13 @@ var BROKER_TOOLKIT_PROVIDERS = {
|
|
|
4126
4134
|
function isBrokerToolkit(definitionId) {
|
|
4127
4135
|
return definitionId in BROKER_TOOLKIT_PROVIDERS;
|
|
4128
4136
|
}
|
|
4137
|
+
var APPROVAL_BROKER_TOOLKITS = /* @__PURE__ */ new Set(["xero-broker"]);
|
|
4138
|
+
function isApprovalBrokerToolkit(definitionId) {
|
|
4139
|
+
return APPROVAL_BROKER_TOOLKITS.has(definitionId);
|
|
4140
|
+
}
|
|
4141
|
+
function isHostUnprobeableBroker(definitionId) {
|
|
4142
|
+
return isBrokerToolkit(definitionId) || isApprovalBrokerToolkit(definitionId);
|
|
4143
|
+
}
|
|
4129
4144
|
var HTTP_PROBE_PROVIDERS = /* @__PURE__ */ new Set([
|
|
4130
4145
|
"linear",
|
|
4131
4146
|
"google-workspace",
|
|
@@ -4176,12 +4191,12 @@ function mcpOverrideFrom(ct) {
|
|
|
4176
4191
|
}
|
|
4177
4192
|
function resolveConnectivityProbe(input) {
|
|
4178
4193
|
const { definitionId, sourceType, authType } = input;
|
|
4179
|
-
if (
|
|
4194
|
+
if (isHostUnprobeableBroker(definitionId) && (authType === "managed" || sourceType === "managed")) {
|
|
4180
4195
|
return {
|
|
4181
4196
|
kind: "unsupported",
|
|
4182
4197
|
sourceType: "managed",
|
|
4183
4198
|
readOnly: true,
|
|
4184
|
-
label: `${definitionId}: broker-managed \u2014 credentials minted per task; no host probe (central enrolment check only)`,
|
|
4199
|
+
label: isApprovalBrokerToolkit(definitionId) ? `${definitionId}: approval broker \u2014 no stored credential; writes authenticate server-side (no host probe)` : `${definitionId}: broker-managed \u2014 credentials minted per task; no host probe (central enrolment check only)`,
|
|
4185
4200
|
centralReachable: false
|
|
4186
4201
|
};
|
|
4187
4202
|
}
|
|
@@ -8034,6 +8049,27 @@ var FLAG_REGISTRY = [
|
|
|
8034
8049
|
// change (ADR-0022 sensitive-flag confirm).
|
|
8035
8050
|
sensitive: true
|
|
8036
8051
|
},
|
|
8052
|
+
{
|
|
8053
|
+
key: "slack-scheduled-channel-guard",
|
|
8054
|
+
description: 'Guard on slack.reply that refuses to let an active scheduled-task destination silently move a reply to a DIFFERENT channel than the agent named (ENG-8137). CS-1505 gave an explicit inbound_id priority over the task destination but left the no-inbound_id case treating "no inbound reference" as "no destination specified" - and `channel` is a REQUIRED argument, so every call names one. The symptom: a question asked in one channel answered in another, and a reply meant as a DM landing in a public channel. Fires only when the marker carries an EXPLICIT target, the named channel differs from it, and neither an inbound_id, an enforce binding, nor an ENG-7542 channel correction is available to arbitrate. off = never runs (today behaviour: silent retarget). shadow = count + log the would-block but STILL route as today, so the false-positive rate is measurable before anyone refuses a send. enforce = block the reply and tell the agent to retry. Read live from the heartbeat flags-cache (or the env override). NOTE: enforce is currently CLAMPED to shadow host-side and setting it here will not take effect - it stays blocked until ENG-8142 teaches the Stop hook to tell a refused reply from a delivered one, because until then a blocked send fails silently (no recovery, no re-prompt, nothing in the channel). Lifting the clamp is a code change, not a flag flip.',
|
|
8055
|
+
flagType: "enum",
|
|
8056
|
+
allowedValues: ["off", "shadow", "enforce"],
|
|
8057
|
+
// Ships in SHADOW, not off: the counter is the whole point - the fleet metric
|
|
8058
|
+
// is currently blind to this misroute, which is why it went unnoticed. shadow
|
|
8059
|
+
// is a free local log line + counter (no model spend, no behaviour change), so
|
|
8060
|
+
// it measures the fire rate immediately. enforce turns a misroute into a
|
|
8061
|
+
// REFUSED send, which trades a confidentiality risk for an availability one -
|
|
8062
|
+
// that is the audited per-org flip, taken after reading the shadow numbers and
|
|
8063
|
+
// after ENG-8143 shrinks the stale-marker window that dominates the false
|
|
8064
|
+
// positives.
|
|
8065
|
+
defaultValue: "shadow",
|
|
8066
|
+
// Enum override AGT_SLACK_SCHEDULED_CHANNEL_GUARD_MODE (off|shadow|enforce),
|
|
8067
|
+
// resolved by resolveSlackScheduledChannelGuardMode in the channel-server bundle.
|
|
8068
|
+
envVar: "AGT_SLACK_SCHEDULED_CHANNEL_GUARD_MODE",
|
|
8069
|
+
// enforce REFUSES a send the agent asked to make - a visible availability
|
|
8070
|
+
// change, so flipping toward it is deliberate (ADR-0022 sensitive-flag confirm).
|
|
8071
|
+
sensitive: true
|
|
8072
|
+
},
|
|
8037
8073
|
{
|
|
8038
8074
|
key: "slack-hot-thread-guard",
|
|
8039
8075
|
description: "Server-side hot-thread guard on the slack.reply surface (ENG-7462). Prevents an agent posting a NEW top-level Slack message when it meant to reply inside the thread it is already working in - a prompt/memory rule proved insufficient (the agent had the rule and still slipped). When a reply would otherwise post to channel ROOT (no thread_ts / message_ts / inbound_id, no active kanban card) and the agent has a recent active thread in that channel (its last bot-posted thread, from the persisted trackedThreads cache, within a freshness window), the reply is redirected into that thread. proactive:true no longer implies channel root; posting at root becomes a deliberate action (the to_channel_root flag, or the thread_ts:null sentinel). off = guard never runs, replies with no coords root exactly as today (ships dark). shadow = compute + log the would-redirect but STILL post to root (measure the fire rate before acting). enforce = apply the redirect (a soft-block: redirect + inform, never a hard rejection). Read live from the heartbeat flags-cache (or the env override); enforce is a deliberate per-org flip after a shadow soak.",
|
|
@@ -12691,4 +12727,4 @@ export {
|
|
|
12691
12727
|
stopAllSessionsAndWait,
|
|
12692
12728
|
getProjectDir
|
|
12693
12729
|
};
|
|
12694
|
-
//# sourceMappingURL=chunk-
|
|
12730
|
+
//# sourceMappingURL=chunk-B4NX2T2H.js.map
|