@integrity-labs/agt-cli 0.28.1172 → 0.28.1173
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 +3 -3
- package/dist/{chunk-7XUOPTSD.js → chunk-W34QK2EY.js} +2 -2
- package/dist/lib/manager-worker.js +2 -2
- package/dist/mcp/direct-chat-channel.js +1 -0
- package/dist/mcp/index.js +44 -0
- package/dist/mcp/slack-channel.js +1 -0
- package/dist/mcp/telegram-channel.js +1 -0
- package/package.json +1 -1
- /package/dist/{chunk-7XUOPTSD.js.map → chunk-W34QK2EY.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-W34QK2EY.js";
|
|
44
44
|
import {
|
|
45
45
|
getProjectDir,
|
|
46
46
|
isSessionResumeDisabled,
|
|
@@ -5513,7 +5513,7 @@ import { execFileSync, execSync } from "child_process";
|
|
|
5513
5513
|
import { existsSync as existsSync11, realpathSync as realpathSync2 } from "fs";
|
|
5514
5514
|
import chalk18 from "chalk";
|
|
5515
5515
|
import ora16 from "ora";
|
|
5516
|
-
var cliVersion = true ? "0.28.
|
|
5516
|
+
var cliVersion = true ? "0.28.1173" : "dev";
|
|
5517
5517
|
async function fetchLatestVersion() {
|
|
5518
5518
|
const host2 = getHost();
|
|
5519
5519
|
if (!host2) return null;
|
|
@@ -6773,7 +6773,7 @@ function handleError(err) {
|
|
|
6773
6773
|
}
|
|
6774
6774
|
|
|
6775
6775
|
// src/bin/agt.ts
|
|
6776
|
-
var cliVersion2 = true ? "0.28.
|
|
6776
|
+
var cliVersion2 = true ? "0.28.1173" : "dev";
|
|
6777
6777
|
var program = new Command();
|
|
6778
6778
|
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");
|
|
6779
6779
|
program.hook("preAction", async (thisCommand, actionCommand) => {
|
|
@@ -8078,7 +8078,7 @@ function exchangeFailureKind(err) {
|
|
|
8078
8078
|
}
|
|
8079
8079
|
|
|
8080
8080
|
// src/lib/api-client.ts
|
|
8081
|
-
var agtCliVersion = true ? "0.28.
|
|
8081
|
+
var agtCliVersion = true ? "0.28.1173" : "dev";
|
|
8082
8082
|
var lastConfigHash = null;
|
|
8083
8083
|
function setConfigHash(hash) {
|
|
8084
8084
|
lastConfigHash = hash && hash.length > 0 ? hash : null;
|
|
@@ -13235,4 +13235,4 @@ export {
|
|
|
13235
13235
|
managerInstallSystemUnitCommand,
|
|
13236
13236
|
managerUninstallSystemUnitCommand
|
|
13237
13237
|
};
|
|
13238
|
-
//# sourceMappingURL=chunk-
|
|
13238
|
+
//# sourceMappingURL=chunk-W34QK2EY.js.map
|
|
@@ -77,7 +77,7 @@ import {
|
|
|
77
77
|
setConfigHash,
|
|
78
78
|
shellGuard,
|
|
79
79
|
tripClass
|
|
80
|
-
} from "../chunk-
|
|
80
|
+
} from "../chunk-W34QK2EY.js";
|
|
81
81
|
import {
|
|
82
82
|
CLAUDE_CODE_SECURITY_FLOOR,
|
|
83
83
|
SELF_UPDATE_TIMEOUTS,
|
|
@@ -15928,7 +15928,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
|
|
|
15928
15928
|
var lastVersionCheckAt = 0;
|
|
15929
15929
|
var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
|
|
15930
15930
|
var lastResponsivenessProbeAt = 0;
|
|
15931
|
-
var agtCliVersion = true ? "0.28.
|
|
15931
|
+
var agtCliVersion = true ? "0.28.1173" : "dev";
|
|
15932
15932
|
function resolveBrewPath(execFileSync3) {
|
|
15933
15933
|
try {
|
|
15934
15934
|
const out = execFileSync3("which", ["brew"], { timeout: 5e3 }).toString().trim();
|
|
@@ -54082,6 +54082,7 @@ var MAINTENANCE_GATED_TOOLS = /* @__PURE__ */ new Set([
|
|
|
54082
54082
|
// ADR-0025 approval tools, registered by `approval-tools.ts` against the same
|
|
54083
54083
|
// server object, so the wrapper in index.ts covers them too.
|
|
54084
54084
|
"cancel_approval",
|
|
54085
|
+
"approval_annotate",
|
|
54085
54086
|
// Status / identity.
|
|
54086
54087
|
"status_standup",
|
|
54087
54088
|
"status_update",
|
package/dist/mcp/index.js
CHANGED
|
@@ -47352,6 +47352,7 @@ var MAINTENANCE_GATED_TOOLS = /* @__PURE__ */ new Set([
|
|
|
47352
47352
|
// ADR-0025 approval tools, registered by `approval-tools.ts` against the same
|
|
47353
47353
|
// server object, so the wrapper in index.ts covers them too.
|
|
47354
47354
|
"cancel_approval",
|
|
47355
|
+
"approval_annotate",
|
|
47355
47356
|
// Status / identity.
|
|
47356
47357
|
"status_standup",
|
|
47357
47358
|
"status_update",
|
|
@@ -48694,6 +48695,22 @@ function describeKanbanLink(requestedCardId, resp) {
|
|
|
48694
48695
|
}
|
|
48695
48696
|
return ` Card ${requestedCardId} was NOT linked to this approval (${why}), so the card is not waiting on it and answering the card will not decide it. Leave the request as is (the approver can still decide it from the Approvals page) and do not park the card as a human Approve/Deny wait.`;
|
|
48696
48697
|
}
|
|
48698
|
+
var APPROVAL_ANNOTATE_EVIDENCE_MAX = 1e3;
|
|
48699
|
+
function describeAnnotation(resp) {
|
|
48700
|
+
const head = `Recorded your recommendation (${resp.recommendation}) on request ${resp.request_id}. This is not a decision; the person still decides.`;
|
|
48701
|
+
switch (resp.card.outcome) {
|
|
48702
|
+
case "card_updated":
|
|
48703
|
+
return `${head} It now shows on their approval card.`;
|
|
48704
|
+
case "follow_up_posted":
|
|
48705
|
+
return `${head} It was posted as a follow-up beside their card. It also shows on the Approvals page.`;
|
|
48706
|
+
case "unchanged":
|
|
48707
|
+
return `${head} It is identical to your last one, which already reached their card, so nothing was re-sent.`;
|
|
48708
|
+
case "no_card":
|
|
48709
|
+
return `${head} No chat card was delivered for this request, so it shows on the Approvals page only.`;
|
|
48710
|
+
default:
|
|
48711
|
+
return `${head} It could NOT be added to their chat card (${resp.card.reason ?? "unknown"}), so it shows on the Approvals page only. Do not say they have seen it.`;
|
|
48712
|
+
}
|
|
48713
|
+
}
|
|
48697
48714
|
function statusToOutcome(status) {
|
|
48698
48715
|
switch (status) {
|
|
48699
48716
|
case "active":
|
|
@@ -48803,6 +48820,31 @@ function registerApprovalTools(server2, deps) {
|
|
|
48803
48820
|
}
|
|
48804
48821
|
}
|
|
48805
48822
|
);
|
|
48823
|
+
server2.tool(
|
|
48824
|
+
"approval_annotate",
|
|
48825
|
+
"Attach your recommendation and what you checked to an approval request from an agent that reports to you, directly or further down your reports-to chain. The person deciding sees it on their approval card, labelled as an agent recommendation. It is NOT a decision: it cannot approve, deny or change the request, and the human still decides. Use it after you have verified the facts yourself, never by repeating the requester's own words. Calling it again replaces your earlier recommendation. Only works while the request is pending.",
|
|
48826
|
+
{
|
|
48827
|
+
request_id: external_exports.string().min(1).describe("The request id from the notice telling you about your report's approval."),
|
|
48828
|
+
recommendation: external_exports.enum(["approve", "deny", "unsure"]).describe("What you recommend the person decides."),
|
|
48829
|
+
evidence: external_exports.string().min(1).max(APPROVAL_ANNOTATE_EVIDENCE_MAX).describe('What you checked and found, e.g. "tree clean, no stash, all commits on origin". Shown as one line of quoted text, attributed to you.')
|
|
48830
|
+
},
|
|
48831
|
+
async (params) => {
|
|
48832
|
+
try {
|
|
48833
|
+
const resp = await apiPost2(`/approvals/${encodeURIComponent(params.request_id)}/annotate`, {
|
|
48834
|
+
agent_id: agentId,
|
|
48835
|
+
recommendation: params.recommendation,
|
|
48836
|
+
evidence: params.evidence
|
|
48837
|
+
});
|
|
48838
|
+
return { content: [{ type: "text", text: describeAnnotation(resp) }] };
|
|
48839
|
+
} catch (err) {
|
|
48840
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
48841
|
+
return {
|
|
48842
|
+
content: [{ type: "text", text: `Could not attach the recommendation to ${params.request_id}: ${msg}` }],
|
|
48843
|
+
isError: true
|
|
48844
|
+
};
|
|
48845
|
+
}
|
|
48846
|
+
}
|
|
48847
|
+
);
|
|
48806
48848
|
server2.tool(
|
|
48807
48849
|
"cancel_approval",
|
|
48808
48850
|
"Withdraw an approval request you no longer need (only works while it is still pending). The Manager stops being asked. Use when the underlying need went away.",
|
|
@@ -52424,6 +52466,8 @@ var LOCAL_TOOL_NAMES = /* @__PURE__ */ new Set([
|
|
|
52424
52466
|
"request_approval",
|
|
52425
52467
|
"check_approval",
|
|
52426
52468
|
"cancel_approval",
|
|
52469
|
+
// ENG-11573: a managing agent's recommendation on a report's approval.
|
|
52470
|
+
"approval_annotate",
|
|
52427
52471
|
"kanban_list",
|
|
52428
52472
|
"kanban_search",
|
|
52429
52473
|
"kanban_get",
|
|
@@ -31065,6 +31065,7 @@ var MAINTENANCE_GATED_TOOLS = /* @__PURE__ */ new Set([
|
|
|
31065
31065
|
// ADR-0025 approval tools, registered by `approval-tools.ts` against the same
|
|
31066
31066
|
// server object, so the wrapper in index.ts covers them too.
|
|
31067
31067
|
"cancel_approval",
|
|
31068
|
+
"approval_annotate",
|
|
31068
31069
|
// Status / identity.
|
|
31069
31070
|
"status_standup",
|
|
31070
31071
|
"status_update",
|
|
@@ -31282,6 +31282,7 @@ var MAINTENANCE_GATED_TOOLS = /* @__PURE__ */ new Set([
|
|
|
31282
31282
|
// ADR-0025 approval tools, registered by `approval-tools.ts` against the same
|
|
31283
31283
|
// server object, so the wrapper in index.ts covers them too.
|
|
31284
31284
|
"cancel_approval",
|
|
31285
|
+
"approval_annotate",
|
|
31285
31286
|
// Status / identity.
|
|
31286
31287
|
"status_standup",
|
|
31287
31288
|
"status_update",
|
package/package.json
CHANGED
|
File without changes
|