@integrity-labs/agt-cli 0.28.423 → 0.28.425
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-4SEBGBAO.js → chunk-M3L6HOYG.js} +3 -3
- package/dist/{chunk-XFC7YVGS.js → chunk-PR3IJAMV.js} +81 -1
- package/dist/chunk-PR3IJAMV.js.map +1 -0
- package/dist/{claude-pair-runtime-3JHCWZZD.js → claude-pair-runtime-XN4JLRAB.js} +2 -2
- package/dist/lib/manager-worker.js +63 -42
- package/dist/lib/manager-worker.js.map +1 -1
- package/dist/mcp/direct-chat-channel.js +160 -64
- package/dist/mcp/origami.js +80 -0
- package/dist/mcp/slack-channel.js +81 -1
- package/dist/mcp/telegram-channel.js +193 -97
- package/dist/{persistent-session-HWCKGPYF.js → persistent-session-37WNPBRA.js} +2 -2
- package/dist/{responsiveness-probe-4CGMUXOH.js → responsiveness-probe-GMIXR3TR.js} +2 -2
- package/package.json +1 -1
- package/dist/chunk-XFC7YVGS.js.map +0 -1
- /package/dist/{chunk-4SEBGBAO.js.map → chunk-M3L6HOYG.js.map} +0 -0
- /package/dist/{claude-pair-runtime-3JHCWZZD.js.map → claude-pair-runtime-XN4JLRAB.js.map} +0 -0
- /package/dist/{persistent-session-HWCKGPYF.js.map → persistent-session-37WNPBRA.js.map} +0 -0
- /package/dist/{responsiveness-probe-4CGMUXOH.js.map → responsiveness-probe-GMIXR3TR.js.map} +0 -0
|
@@ -33469,6 +33469,86 @@ var INTEGRATION_REGISTRY = [
|
|
|
33469
33469
|
]
|
|
33470
33470
|
}
|
|
33471
33471
|
},
|
|
33472
|
+
{
|
|
33473
|
+
// Social Scraping: a PREMIUM, platform-managed integration on the Deck /
|
|
33474
|
+
// Firecrawl / X-Search model (ADR-0031, epic ENG-6920; ADR-0053). Backed by
|
|
33475
|
+
// Apify, but deliberately NOT surfaced as an "Apify" integration - the
|
|
33476
|
+
// integration is what a customer picks, and Apify is a vendor, not a job.
|
|
33477
|
+
// Splitting by job also means opt-in, rate card and monthly budget are keyed
|
|
33478
|
+
// per definition, so an org can take Local Business Data without taking the
|
|
33479
|
+
// pricier, more ToS-sensitive social scraping.
|
|
33480
|
+
//
|
|
33481
|
+
// Augmented holds ONE Apify account whose token (APIFY_API_TOKEN, read
|
|
33482
|
+
// from SSM - the API Lambda env is at the 4KB cap) every customer run bills
|
|
33483
|
+
// back to, so the key is a single platform-held secret, NOT a per-agent
|
|
33484
|
+
// credential. Auth type is `none` - customers never enter a key. Tools run on
|
|
33485
|
+
// a brokered-REST lane (apify-brokers.ts) so each run is metered at one
|
|
33486
|
+
// chokepoint and gated on a per-org monthly USD cap + the per-org premium
|
|
33487
|
+
// opt-in.
|
|
33488
|
+
//
|
|
33489
|
+
// "PPE-only" is guaranteed by a curated allowlist: the broker only ever runs
|
|
33490
|
+
// Actors on it, so a rental / pay-per-usage Actor can never surprise-bill the
|
|
33491
|
+
// shared account. (Apify's x402 rail enforces PPE-only at the payment layer;
|
|
33492
|
+
// we are on the account-key rail - Option A in the spike.) See
|
|
33493
|
+
// docs/design/apify-premium-option-a-ppe-allowlist.md.
|
|
33494
|
+
//
|
|
33495
|
+
// No `installable` here on purpose: this is a seed integration
|
|
33496
|
+
// (integration-definitions.json), so the seed catalog already makes it
|
|
33497
|
+
// picker-visible. This registry entry exists ONLY to carry the `premium`
|
|
33498
|
+
// descriptor that `isPremiumDefinition` reads - which arms the per-org opt-in
|
|
33499
|
+
// gate, the priced acknowledgement modal, and the admin pricing tab.
|
|
33500
|
+
id: "social-scraping",
|
|
33501
|
+
name: "Social Scraping",
|
|
33502
|
+
category: "social",
|
|
33503
|
+
description: "Pull public posts and videos from TikTok, Instagram and YouTube - captions, media, engagement counts and URLs - for brand, competitor and campaign research. Augmented Team manages the scraping account for you; there is no key to enter.",
|
|
33504
|
+
supported_auth_types: ["none"],
|
|
33505
|
+
capabilities: [
|
|
33506
|
+
{ id: "social-scraping:scrape", name: "Scrape Social Posts", description: "Scrape public TikTok, Instagram and YouTube content (social_scrape_tiktok, social_scrape_instagram, social_scrape_youtube).", access: "write" },
|
|
33507
|
+
{ id: "social-scraping:status", name: "Check Scrape Runs", description: "Poll a running scrape for status + results (social_scrape_status).", access: "read" }
|
|
33508
|
+
],
|
|
33509
|
+
docs_url: "https://docs.apify.com/api/v2",
|
|
33510
|
+
beta: true,
|
|
33511
|
+
// Premium (billable). The upstream pay-per-event cost is per-Actor and
|
|
33512
|
+
// VARIABLE (each Actor's creator sets its own event prices), unlike X-Search's
|
|
33513
|
+
// fixed per-post price. So we meter the ACTUAL cost charged to us for each
|
|
33514
|
+
// run, as a pass-through: `units` = the run's `usageTotalUsd` in whole US
|
|
33515
|
+
// cents (the physical unit `usd_cent`), and the rate card prices each cent at
|
|
33516
|
+
// a managed markup (1.5x USD). This keeps margin safe across cheap and
|
|
33517
|
+
// expensive scrapes alike. `event_type` must match what the broker writes to
|
|
33518
|
+
// integration_usage_events. Until the rate row is seeded a run prices at 0
|
|
33519
|
+
// (budget gate inert) - the rate-card migration ships in the same PR.
|
|
33520
|
+
premium: {
|
|
33521
|
+
pricing: "usage",
|
|
33522
|
+
note: "Billed per result on the upstream pay-per-event cost of each scrape, at a managed markup.",
|
|
33523
|
+
meters: [{ event_type: "actor_run", unit: "usd_cent" }]
|
|
33524
|
+
}
|
|
33525
|
+
},
|
|
33526
|
+
{
|
|
33527
|
+
// Local Business Data: the second Apify-backed premium integration (ADR-0053).
|
|
33528
|
+
// Same platform-held account, same pass-through metering model, but a separate
|
|
33529
|
+
// definition so its opt-in, rate card and monthly budget are independent of
|
|
33530
|
+
// Social Scraping's - see the note on that entry for why the split exists.
|
|
33531
|
+
//
|
|
33532
|
+
// Distinct from Firecrawl on purpose: Firecrawl covers generic web
|
|
33533
|
+
// scrape/crawl/search, and we deliberately do NOT ship an Apify-backed
|
|
33534
|
+
// duplicate of that. This is the local-places job Firecrawl does not do.
|
|
33535
|
+
id: "local-business-data",
|
|
33536
|
+
name: "Local Business Data",
|
|
33537
|
+
category: "knowledge",
|
|
33538
|
+
description: "Find local businesses on Google Maps and pull their public listing details - name, address, phone, website, category, rating and review count - for local market research, competitor lists and lead research. Augmented Team manages the data account for you; there is no key to enter.",
|
|
33539
|
+
supported_auth_types: ["none"],
|
|
33540
|
+
capabilities: [
|
|
33541
|
+
{ id: "local-business-data:search", name: "Search Local Businesses", description: "Search Google Maps for businesses and return their public listing details (local_business_search).", access: "write" },
|
|
33542
|
+
{ id: "local-business-data:status", name: "Check Searches", description: "Poll a running search for status + results (local_business_search_status).", access: "read" }
|
|
33543
|
+
],
|
|
33544
|
+
docs_url: "https://docs.apify.com/api/v2",
|
|
33545
|
+
beta: true,
|
|
33546
|
+
premium: {
|
|
33547
|
+
pricing: "usage",
|
|
33548
|
+
note: "Billed per place returned on the upstream pay-per-event cost of each search, at a managed markup.",
|
|
33549
|
+
meters: [{ event_type: "actor_run", unit: "usd_cent" }]
|
|
33550
|
+
}
|
|
33551
|
+
},
|
|
33472
33552
|
{
|
|
33473
33553
|
// Seed-catalog toolkit (composed by the ultimate-app-coder bundle). Registered
|
|
33474
33554
|
// here only so the manager's ensureToolkitCli installs the binary via the
|
|
@@ -37803,7 +37883,7 @@ function recordReplyTargetClassification(agentDir, channel, classification) {
|
|
|
37803
37883
|
import { readFileSync as readFileSync15, unlinkSync as unlinkSync5 } from "fs";
|
|
37804
37884
|
import { join as join15 } from "path";
|
|
37805
37885
|
var SCHEDULED_TURN_MARKER_FILENAME2 = ".current-scheduled-turn.json";
|
|
37806
|
-
var SCHEDULED_TURN_MAX_AGE_MS =
|
|
37886
|
+
var SCHEDULED_TURN_MAX_AGE_MS = 15 * 60 * 1e3;
|
|
37807
37887
|
function validateScheduledTurnMarker(raw, now, maxAgeMs = SCHEDULED_TURN_MAX_AGE_MS) {
|
|
37808
37888
|
if (!raw || typeof raw !== "object") return null;
|
|
37809
37889
|
const m = raw;
|