@integrity-labs/agt-cli 0.28.359 → 0.28.361
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-FAGXXKWZ.js → chunk-3D7IBJYZ.js} +1606 -188
- package/dist/chunk-3D7IBJYZ.js.map +1 -0
- package/dist/{chunk-TVFNWNSP.js → chunk-7EKDO7A5.js} +199 -1090
- package/dist/chunk-7EKDO7A5.js.map +1 -0
- package/dist/{claude-pair-runtime-ASRAOWWQ.js → claude-pair-runtime-LKXINT7K.js} +2 -2
- package/dist/lib/manager-worker.js +283 -744
- package/dist/lib/manager-worker.js.map +1 -1
- package/dist/mcp/direct-chat-channel.js +17 -1
- package/dist/mcp/origami.js +17 -1
- package/dist/mcp/slack-channel.js +17 -1
- package/dist/mcp/telegram-channel.js +17 -1
- package/dist/{persistent-session-R7JOZNIC.js → persistent-session-7VMIE4G4.js} +2 -2
- package/dist/{responsiveness-probe-7SUERVWL.js → responsiveness-probe-XJ7DQX4M.js} +2 -2
- package/package.json +1 -1
- package/dist/chunk-FAGXXKWZ.js.map +0 -1
- package/dist/chunk-TVFNWNSP.js.map +0 -1
- /package/dist/{claude-pair-runtime-ASRAOWWQ.js.map → claude-pair-runtime-LKXINT7K.js.map} +0 -0
- /package/dist/{persistent-session-R7JOZNIC.js.map → persistent-session-7VMIE4G4.js.map} +0 -0
- /package/dist/{responsiveness-probe-7SUERVWL.js.map → responsiveness-probe-XJ7DQX4M.js.map} +0 -0
|
@@ -32922,7 +32922,7 @@ var INTEGRATION_REGISTRY = [
|
|
|
32922
32922
|
id: "brand-ninja",
|
|
32923
32923
|
name: "Brand Ninja",
|
|
32924
32924
|
category: "social",
|
|
32925
|
-
description: "Brand-aligned content generation: submit async content requests
|
|
32925
|
+
description: "Brand-aligned content generation: submit async content requests and track them, search transcripts and assemble ranked timelines from source clips, and discover the account catalog (channels, brands, topics, templates, content types, skills). Wired as the hosted Brand Ninja External-Content MCP at https://ext-api.app.brandninja.ai/v1/mcp.",
|
|
32926
32926
|
// ENG-6820: same remote streamable-HTTP MCP + OAuth pattern as Granola.
|
|
32927
32927
|
// Brand Ninja's server implements the full MCP discovery chain (RFC
|
|
32928
32928
|
// 9728/8414/7591); auth is OAuth 2.0 authorization-code with PKCE (S256)
|
|
@@ -32937,6 +32937,9 @@ var INTEGRATION_REGISTRY = [
|
|
|
32937
32937
|
capabilities: [
|
|
32938
32938
|
{ id: "brand-ninja:generate-content", name: "Generate Content", description: "Submit async brand-aligned content-generation requests and poll their status (submit_content_request, get_content_status, list_content_requests)", access: "write" },
|
|
32939
32939
|
{ id: "brand-ninja:list-channels", name: "List Channels", description: "Discover the publishing channels available to the account, metadata only (list_channels)", access: "read" },
|
|
32940
|
+
{ id: "brand-ninja:list-catalog", name: "List Catalog", description: "Discover account catalog metadata: brands, topics, timeline templates, content types, and source, output and conversion skills (list_brands, list_topics, list_timeline_templates, list_content_types, list_source_skills, list_output_skills, list_conversion_skills)", access: "read" },
|
|
32941
|
+
{ id: "brand-ninja:search-transcripts", name: "Search Transcripts", description: "Search the transcripts available to the account to source or reference when generating content, text and metadata (search_transcripts)", access: "read" },
|
|
32942
|
+
{ id: "brand-ninja:assemble-timeline", name: "Assemble Timeline", description: "Turn transcript spans into topic-tagged source clips and rank a topic's clips into a ranked timeline via an async LLM job (create_source_clips, create_timeline_ranking)", access: "write" },
|
|
32940
32943
|
{ id: "brand-ninja:read-credentials", name: "Read Credentials", description: "Read-only External-API credential metadata, secrets stripped. Requires the elevated external-api/admin scope (list_credentials)", access: "admin" }
|
|
32941
32944
|
],
|
|
32942
32945
|
docs_url: "https://ext-api.app.brandninja.ai/v1/mcp",
|
|
@@ -34781,6 +34784,19 @@ var FLAG_REGISTRY = [
|
|
|
34781
34784
|
// deliberate, audited per-org flip (ADR-0022 §4).
|
|
34782
34785
|
sensitive: true
|
|
34783
34786
|
},
|
|
34787
|
+
{
|
|
34788
|
+
key: "email-guard-require-approval-enabled",
|
|
34789
|
+
description: "Platform enable-gate for the email-domain guardrail REQUIRE_APPROVAL stage (ENG-7939). When ON for an org, a scope at email_guard_stage=require_approval routes a send to a non-allowed domain into Human Approval (an Approve/Deny card) instead of a hard block: the rollout UI unlocks the option and the write routes accept require_approval. When OFF (default) the write routes reject require_approval and the UI shows it as not yet available, so no scope can select it. Structurally also depends on hitl-approval-routing being on (the approval broker fails closed to a hard block when routing is off). Evaluated per-org. Ships dark.",
|
|
34790
|
+
flagType: "boolean",
|
|
34791
|
+
// Declared safe value is `false` (require_approval is unselectable / inert). A flag-DB read
|
|
34792
|
+
// error degrades here, so a flags outage can never start routing customer email through a
|
|
34793
|
+
// half-wired approval path - the fail-closed direction. No envVar: net-new control with no
|
|
34794
|
+
// pre-flags env gate to migrate (ADR-0022).
|
|
34795
|
+
defaultValue: false,
|
|
34796
|
+
// Ungates a stage that changes how real customer email is handled (block becomes approval),
|
|
34797
|
+
// so it is a deliberate, audited per-org flip (ADR-0022 §4).
|
|
34798
|
+
sensitive: true
|
|
34799
|
+
},
|
|
34784
34800
|
{
|
|
34785
34801
|
key: "slack-reply-binding",
|
|
34786
34802
|
description: "Slack reply-target binding (ENG-7396 / WS2, cross-thread reply routing): the model names which inbound it answers (inbound_id) and the server resolves the destination from its own verified record. shadow = classify + count only, routing unchanged; warn = same routing plus a tool-result note so the model self-corrects; enforce = route a bound reply to the registry thread and REJECT a reply whose target matches no inbound this process delivered. The channel server can't evaluate flags, so the manager materializes the resolved value into the AGT_SLACK_REPLY_BINDING spawn env (the operator/canary override, ADR-0022). Ships shadow.",
|
package/dist/mcp/origami.js
CHANGED
|
@@ -38721,7 +38721,7 @@ var INTEGRATION_REGISTRY = [
|
|
|
38721
38721
|
id: "brand-ninja",
|
|
38722
38722
|
name: "Brand Ninja",
|
|
38723
38723
|
category: "social",
|
|
38724
|
-
description: "Brand-aligned content generation: submit async content requests
|
|
38724
|
+
description: "Brand-aligned content generation: submit async content requests and track them, search transcripts and assemble ranked timelines from source clips, and discover the account catalog (channels, brands, topics, templates, content types, skills). Wired as the hosted Brand Ninja External-Content MCP at https://ext-api.app.brandninja.ai/v1/mcp.",
|
|
38725
38725
|
// ENG-6820: same remote streamable-HTTP MCP + OAuth pattern as Granola.
|
|
38726
38726
|
// Brand Ninja's server implements the full MCP discovery chain (RFC
|
|
38727
38727
|
// 9728/8414/7591); auth is OAuth 2.0 authorization-code with PKCE (S256)
|
|
@@ -38736,6 +38736,9 @@ var INTEGRATION_REGISTRY = [
|
|
|
38736
38736
|
capabilities: [
|
|
38737
38737
|
{ id: "brand-ninja:generate-content", name: "Generate Content", description: "Submit async brand-aligned content-generation requests and poll their status (submit_content_request, get_content_status, list_content_requests)", access: "write" },
|
|
38738
38738
|
{ id: "brand-ninja:list-channels", name: "List Channels", description: "Discover the publishing channels available to the account, metadata only (list_channels)", access: "read" },
|
|
38739
|
+
{ id: "brand-ninja:list-catalog", name: "List Catalog", description: "Discover account catalog metadata: brands, topics, timeline templates, content types, and source, output and conversion skills (list_brands, list_topics, list_timeline_templates, list_content_types, list_source_skills, list_output_skills, list_conversion_skills)", access: "read" },
|
|
38740
|
+
{ id: "brand-ninja:search-transcripts", name: "Search Transcripts", description: "Search the transcripts available to the account to source or reference when generating content, text and metadata (search_transcripts)", access: "read" },
|
|
38741
|
+
{ id: "brand-ninja:assemble-timeline", name: "Assemble Timeline", description: "Turn transcript spans into topic-tagged source clips and rank a topic's clips into a ranked timeline via an async LLM job (create_source_clips, create_timeline_ranking)", access: "write" },
|
|
38739
38742
|
{ id: "brand-ninja:read-credentials", name: "Read Credentials", description: "Read-only External-API credential metadata, secrets stripped. Requires the elevated external-api/admin scope (list_credentials)", access: "admin" }
|
|
38740
38743
|
],
|
|
38741
38744
|
docs_url: "https://ext-api.app.brandninja.ai/v1/mcp",
|
|
@@ -40544,6 +40547,19 @@ var FLAG_REGISTRY = [
|
|
|
40544
40547
|
// deliberate, audited per-org flip (ADR-0022 §4).
|
|
40545
40548
|
sensitive: true
|
|
40546
40549
|
},
|
|
40550
|
+
{
|
|
40551
|
+
key: "email-guard-require-approval-enabled",
|
|
40552
|
+
description: "Platform enable-gate for the email-domain guardrail REQUIRE_APPROVAL stage (ENG-7939). When ON for an org, a scope at email_guard_stage=require_approval routes a send to a non-allowed domain into Human Approval (an Approve/Deny card) instead of a hard block: the rollout UI unlocks the option and the write routes accept require_approval. When OFF (default) the write routes reject require_approval and the UI shows it as not yet available, so no scope can select it. Structurally also depends on hitl-approval-routing being on (the approval broker fails closed to a hard block when routing is off). Evaluated per-org. Ships dark.",
|
|
40553
|
+
flagType: "boolean",
|
|
40554
|
+
// Declared safe value is `false` (require_approval is unselectable / inert). A flag-DB read
|
|
40555
|
+
// error degrades here, so a flags outage can never start routing customer email through a
|
|
40556
|
+
// half-wired approval path - the fail-closed direction. No envVar: net-new control with no
|
|
40557
|
+
// pre-flags env gate to migrate (ADR-0022).
|
|
40558
|
+
defaultValue: false,
|
|
40559
|
+
// Ungates a stage that changes how real customer email is handled (block becomes approval),
|
|
40560
|
+
// so it is a deliberate, audited per-org flip (ADR-0022 §4).
|
|
40561
|
+
sensitive: true
|
|
40562
|
+
},
|
|
40547
40563
|
{
|
|
40548
40564
|
key: "slack-reply-binding",
|
|
40549
40565
|
description: "Slack reply-target binding (ENG-7396 / WS2, cross-thread reply routing): the model names which inbound it answers (inbound_id) and the server resolves the destination from its own verified record. shadow = classify + count only, routing unchanged; warn = same routing plus a tool-result note so the model self-corrects; enforce = route a bound reply to the registry thread and REJECT a reply whose target matches no inbound this process delivered. The channel server can't evaluate flags, so the manager materializes the resolved value into the AGT_SLACK_REPLY_BINDING spawn env (the operator/canary override, ADR-0022). Ships shadow.",
|
|
@@ -32604,7 +32604,7 @@ var INTEGRATION_REGISTRY = [
|
|
|
32604
32604
|
id: "brand-ninja",
|
|
32605
32605
|
name: "Brand Ninja",
|
|
32606
32606
|
category: "social",
|
|
32607
|
-
description: "Brand-aligned content generation: submit async content requests
|
|
32607
|
+
description: "Brand-aligned content generation: submit async content requests and track them, search transcripts and assemble ranked timelines from source clips, and discover the account catalog (channels, brands, topics, templates, content types, skills). Wired as the hosted Brand Ninja External-Content MCP at https://ext-api.app.brandninja.ai/v1/mcp.",
|
|
32608
32608
|
// ENG-6820: same remote streamable-HTTP MCP + OAuth pattern as Granola.
|
|
32609
32609
|
// Brand Ninja's server implements the full MCP discovery chain (RFC
|
|
32610
32610
|
// 9728/8414/7591); auth is OAuth 2.0 authorization-code with PKCE (S256)
|
|
@@ -32619,6 +32619,9 @@ var INTEGRATION_REGISTRY = [
|
|
|
32619
32619
|
capabilities: [
|
|
32620
32620
|
{ id: "brand-ninja:generate-content", name: "Generate Content", description: "Submit async brand-aligned content-generation requests and poll their status (submit_content_request, get_content_status, list_content_requests)", access: "write" },
|
|
32621
32621
|
{ id: "brand-ninja:list-channels", name: "List Channels", description: "Discover the publishing channels available to the account, metadata only (list_channels)", access: "read" },
|
|
32622
|
+
{ id: "brand-ninja:list-catalog", name: "List Catalog", description: "Discover account catalog metadata: brands, topics, timeline templates, content types, and source, output and conversion skills (list_brands, list_topics, list_timeline_templates, list_content_types, list_source_skills, list_output_skills, list_conversion_skills)", access: "read" },
|
|
32623
|
+
{ id: "brand-ninja:search-transcripts", name: "Search Transcripts", description: "Search the transcripts available to the account to source or reference when generating content, text and metadata (search_transcripts)", access: "read" },
|
|
32624
|
+
{ id: "brand-ninja:assemble-timeline", name: "Assemble Timeline", description: "Turn transcript spans into topic-tagged source clips and rank a topic's clips into a ranked timeline via an async LLM job (create_source_clips, create_timeline_ranking)", access: "write" },
|
|
32622
32625
|
{ id: "brand-ninja:read-credentials", name: "Read Credentials", description: "Read-only External-API credential metadata, secrets stripped. Requires the elevated external-api/admin scope (list_credentials)", access: "admin" }
|
|
32623
32626
|
],
|
|
32624
32627
|
docs_url: "https://ext-api.app.brandninja.ai/v1/mcp",
|
|
@@ -34463,6 +34466,19 @@ var FLAG_REGISTRY = [
|
|
|
34463
34466
|
// deliberate, audited per-org flip (ADR-0022 §4).
|
|
34464
34467
|
sensitive: true
|
|
34465
34468
|
},
|
|
34469
|
+
{
|
|
34470
|
+
key: "email-guard-require-approval-enabled",
|
|
34471
|
+
description: "Platform enable-gate for the email-domain guardrail REQUIRE_APPROVAL stage (ENG-7939). When ON for an org, a scope at email_guard_stage=require_approval routes a send to a non-allowed domain into Human Approval (an Approve/Deny card) instead of a hard block: the rollout UI unlocks the option and the write routes accept require_approval. When OFF (default) the write routes reject require_approval and the UI shows it as not yet available, so no scope can select it. Structurally also depends on hitl-approval-routing being on (the approval broker fails closed to a hard block when routing is off). Evaluated per-org. Ships dark.",
|
|
34472
|
+
flagType: "boolean",
|
|
34473
|
+
// Declared safe value is `false` (require_approval is unselectable / inert). A flag-DB read
|
|
34474
|
+
// error degrades here, so a flags outage can never start routing customer email through a
|
|
34475
|
+
// half-wired approval path - the fail-closed direction. No envVar: net-new control with no
|
|
34476
|
+
// pre-flags env gate to migrate (ADR-0022).
|
|
34477
|
+
defaultValue: false,
|
|
34478
|
+
// Ungates a stage that changes how real customer email is handled (block becomes approval),
|
|
34479
|
+
// so it is a deliberate, audited per-org flip (ADR-0022 §4).
|
|
34480
|
+
sensitive: true
|
|
34481
|
+
},
|
|
34466
34482
|
{
|
|
34467
34483
|
key: "slack-reply-binding",
|
|
34468
34484
|
description: "Slack reply-target binding (ENG-7396 / WS2, cross-thread reply routing): the model names which inbound it answers (inbound_id) and the server resolves the destination from its own verified record. shadow = classify + count only, routing unchanged; warn = same routing plus a tool-result note so the model self-corrects; enforce = route a bound reply to the registry thread and REJECT a reply whose target matches no inbound this process delivered. The channel server can't evaluate flags, so the manager materializes the resolved value into the AGT_SLACK_REPLY_BINDING spawn env (the operator/canary override, ADR-0022). Ships shadow.",
|
|
@@ -32954,7 +32954,7 @@ var INTEGRATION_REGISTRY = [
|
|
|
32954
32954
|
id: "brand-ninja",
|
|
32955
32955
|
name: "Brand Ninja",
|
|
32956
32956
|
category: "social",
|
|
32957
|
-
description: "Brand-aligned content generation: submit async content requests
|
|
32957
|
+
description: "Brand-aligned content generation: submit async content requests and track them, search transcripts and assemble ranked timelines from source clips, and discover the account catalog (channels, brands, topics, templates, content types, skills). Wired as the hosted Brand Ninja External-Content MCP at https://ext-api.app.brandninja.ai/v1/mcp.",
|
|
32958
32958
|
// ENG-6820: same remote streamable-HTTP MCP + OAuth pattern as Granola.
|
|
32959
32959
|
// Brand Ninja's server implements the full MCP discovery chain (RFC
|
|
32960
32960
|
// 9728/8414/7591); auth is OAuth 2.0 authorization-code with PKCE (S256)
|
|
@@ -32969,6 +32969,9 @@ var INTEGRATION_REGISTRY = [
|
|
|
32969
32969
|
capabilities: [
|
|
32970
32970
|
{ id: "brand-ninja:generate-content", name: "Generate Content", description: "Submit async brand-aligned content-generation requests and poll their status (submit_content_request, get_content_status, list_content_requests)", access: "write" },
|
|
32971
32971
|
{ id: "brand-ninja:list-channels", name: "List Channels", description: "Discover the publishing channels available to the account, metadata only (list_channels)", access: "read" },
|
|
32972
|
+
{ id: "brand-ninja:list-catalog", name: "List Catalog", description: "Discover account catalog metadata: brands, topics, timeline templates, content types, and source, output and conversion skills (list_brands, list_topics, list_timeline_templates, list_content_types, list_source_skills, list_output_skills, list_conversion_skills)", access: "read" },
|
|
32973
|
+
{ id: "brand-ninja:search-transcripts", name: "Search Transcripts", description: "Search the transcripts available to the account to source or reference when generating content, text and metadata (search_transcripts)", access: "read" },
|
|
32974
|
+
{ id: "brand-ninja:assemble-timeline", name: "Assemble Timeline", description: "Turn transcript spans into topic-tagged source clips and rank a topic's clips into a ranked timeline via an async LLM job (create_source_clips, create_timeline_ranking)", access: "write" },
|
|
32972
32975
|
{ id: "brand-ninja:read-credentials", name: "Read Credentials", description: "Read-only External-API credential metadata, secrets stripped. Requires the elevated external-api/admin scope (list_credentials)", access: "admin" }
|
|
32973
32976
|
],
|
|
32974
32977
|
docs_url: "https://ext-api.app.brandninja.ai/v1/mcp",
|
|
@@ -34813,6 +34816,19 @@ var FLAG_REGISTRY = [
|
|
|
34813
34816
|
// deliberate, audited per-org flip (ADR-0022 §4).
|
|
34814
34817
|
sensitive: true
|
|
34815
34818
|
},
|
|
34819
|
+
{
|
|
34820
|
+
key: "email-guard-require-approval-enabled",
|
|
34821
|
+
description: "Platform enable-gate for the email-domain guardrail REQUIRE_APPROVAL stage (ENG-7939). When ON for an org, a scope at email_guard_stage=require_approval routes a send to a non-allowed domain into Human Approval (an Approve/Deny card) instead of a hard block: the rollout UI unlocks the option and the write routes accept require_approval. When OFF (default) the write routes reject require_approval and the UI shows it as not yet available, so no scope can select it. Structurally also depends on hitl-approval-routing being on (the approval broker fails closed to a hard block when routing is off). Evaluated per-org. Ships dark.",
|
|
34822
|
+
flagType: "boolean",
|
|
34823
|
+
// Declared safe value is `false` (require_approval is unselectable / inert). A flag-DB read
|
|
34824
|
+
// error degrades here, so a flags outage can never start routing customer email through a
|
|
34825
|
+
// half-wired approval path - the fail-closed direction. No envVar: net-new control with no
|
|
34826
|
+
// pre-flags env gate to migrate (ADR-0022).
|
|
34827
|
+
defaultValue: false,
|
|
34828
|
+
// Ungates a stage that changes how real customer email is handled (block becomes approval),
|
|
34829
|
+
// so it is a deliberate, audited per-org flip (ADR-0022 §4).
|
|
34830
|
+
sensitive: true
|
|
34831
|
+
},
|
|
34816
34832
|
{
|
|
34817
34833
|
key: "slack-reply-binding",
|
|
34818
34834
|
description: "Slack reply-target binding (ENG-7396 / WS2, cross-thread reply routing): the model names which inbound it answers (inbound_id) and the server resolves the destination from its own verified record. shadow = classify + count only, routing unchanged; warn = same routing plus a tool-result note so the model self-corrects; enforce = route a bound reply to the registry thread and REJECT a reply whose target matches no inbound this process delivered. The channel server can't evaluate flags, so the manager materializes the resolved value into the AGT_SLACK_REPLY_BINDING spawn env (the operator/canary override, ADR-0022). Ships shadow.",
|
|
@@ -36,7 +36,7 @@ import {
|
|
|
36
36
|
writeDirectChatSessionState,
|
|
37
37
|
writeEgressAllowlist,
|
|
38
38
|
writePersistentClaudeWrapper
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-3D7IBJYZ.js";
|
|
40
40
|
import "./chunk-XWVM4KPK.js";
|
|
41
41
|
export {
|
|
42
42
|
EGRESS_BASELINE_DOMAINS,
|
|
@@ -77,4 +77,4 @@ export {
|
|
|
77
77
|
writeEgressAllowlist,
|
|
78
78
|
writePersistentClaudeWrapper
|
|
79
79
|
};
|
|
80
|
-
//# sourceMappingURL=persistent-session-
|
|
80
|
+
//# sourceMappingURL=persistent-session-7VMIE4G4.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
paneLogPath
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3D7IBJYZ.js";
|
|
4
4
|
import "./chunk-XWVM4KPK.js";
|
|
5
5
|
|
|
6
6
|
// src/lib/responsiveness-probe.ts
|
|
@@ -437,4 +437,4 @@ export {
|
|
|
437
437
|
readAndResetSlackReplyBindingClassifications,
|
|
438
438
|
readAndResetSlackReplyTargetClassifications
|
|
439
439
|
};
|
|
440
|
-
//# sourceMappingURL=responsiveness-probe-
|
|
440
|
+
//# sourceMappingURL=responsiveness-probe-XJ7DQX4M.js.map
|