@integrity-labs/agt-cli 0.28.507 → 0.28.508

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.
@@ -35502,6 +35502,54 @@ var FLAG_REGISTRY = [
35502
35502
  // Turning this on lets agents originate proposals that create customer
35503
35503
  // infrastructure once approved — same posture as augmented-support-writes.
35504
35504
  sensitive: true
35505
+ },
35506
+ {
35507
+ key: "github-broker-credentials",
35508
+ description: "Deliver GitHub App installation tokens to `git` and the `gh` CLI through the broker credential endpoint at USE time, instead of materializing them into the agent process environment at spawn (ENG-8344). A GitHub App installation token has a ~1h TTL, so the spawn-frozen GITHUB_ACCESS_TOKEN / GITHUB_TOKEN pair rotates hourly; the wrapper sources `.env.integrations` exactly once, so the only way a running agent sees the new value is a full session respawn (measured: 6 agents, ~144 kills/day). ENG-8343 stopped those kills landing mid-turn; this removes them. ON: `POST /host/agent-integrations` stops minting the installation token into the payload for auth_type=github_app rows (so computeIntegrationsHash stops seeing a rotating value) and marks the row credential_delivery=broker; the claudecode adapter then writes a git credential helper + a `gh` shim that fetch a fresh token per use from POST /host/agent-integrations/github/credential (ENG-8264 name addressing). OFF (default): byte-for-byte today's behaviour - the token is minted into the payload and materialized as GITHUB_ACCESS_TOKEN / GITHUB_TOKEN, no helper, no shim. NOTE the scope of the security claim: this removes the token from the agent's ENVIRONMENT, which is what stops the respawns. It does NOT make the token unreachable by a determined agent - the agent can invoke the helper itself. Strictly better than today, not a sandbox. Evaluated API-side only, per agent, in POST /host/agent-integrations; no host-side envVar. The host does not read this flag - it keys off the resulting credential_delivery marker on the row - so there is deliberately no host override that could put the token back on its own. Roll back from the flag.",
35509
+ flagType: "boolean",
35510
+ // Declared safe value is `false` = today's env delivery. Fail-safe direction:
35511
+ // a flag-DB read error must never strip `git`/`gh` credentials off a live
35512
+ // agent, which is what the ON path does when its host has no helper writer.
35513
+ defaultValue: false,
35514
+ // Flipping ON changes how every GitHub App agent on the scope authenticates
35515
+ // `git push` / `gh`. A bad flip takes those away, so it is a deliberate,
35516
+ // confirmed action (ADR-0022 §4).
35517
+ sensitive: true,
35518
+ // Set even though the flag is evaluated centrally, because `since` is a
35519
+ // REACH threshold ("a host this old has no consumer code for the flag") and
35520
+ // that is exactly the hazard here: the host does not read the flag, but it
35521
+ // does need the claudecode adapter's helper/shim writer and the wrapper PATH
35522
+ // prepend. On a host too old for those, the API would stop shipping the
35523
+ // token and NOTHING would replace it. Without `since` the flip-reach modal
35524
+ // reports FULL reach and hides that.
35525
+ //
35526
+ // DELIBERATE UNREACHABLE PLACEHOLDER - NOT A REAL THRESHOLD YET.
35527
+ // The sibling entries in this registry (`slack-hot-thread-guard` 0.28.339,
35528
+ // `slack-scheduled-channel-guard` 0.28.421) are BISECTED from published npm
35529
+ // artifacts, which is only possible AFTER this merges and publishes. A
35530
+ // pre-merge guess cannot be right, and the two directions are not
35531
+ // symmetric:
35532
+ // - too HIGH -> hosts classify `stale`, the modal over-warns. Annoying.
35533
+ // - too LOW -> hosts classify `honors` while carrying NO helper writer,
35534
+ // the modal promises full reach, and a flip strips `git`/
35535
+ // `gh` credentials with nothing replacing them. Outage.
35536
+ // So this is pinned ABOVE every published release on purpose: it classifies
35537
+ // EVERY host as `stale`, so the modal reports no reach rather than reach it
35538
+ // has no basis for. That is the intended pre-bisect state.
35539
+ //
35540
+ // BUT `since` IS ADVISORY, NOT A GUARD. It is read in exactly one place -
35541
+ // `computeFlagReach` behind GET /admin/reach, which renders the flip-reach
35542
+ // modal. `evaluate.ts` never reads it and neither does the override write
35543
+ // path. The placeholder therefore changes what an operator is TOLD; it does
35544
+ // not stop a flip on an under-`since` host. What actually holds the line
35545
+ // here is `defaultValue: false` plus `sensitive: true` plus the runbook.
35546
+ //
35547
+ // BEFORE THIS FLAG IS FLIPPED ANYWHERE: bisect the published dist for the
35548
+ // first agt-cli whose claudecode adapter writes agt-bin/ and whose wrapper
35549
+ // prepends it, then replace this with that exact version. The rollout
35550
+ // runbook gates on it. Leaving the placeholder in place is safe (nothing
35551
+ // flips); shipping a guessed number is not.
35552
+ since: "0.29.0"
35505
35553
  }
35506
35554
  ];
35507
35555
  var REGISTRY_BY_KEY = new Map(FLAG_REGISTRY.map((definition) => [definition.key, definition]));
@@ -41393,6 +41393,54 @@ var FLAG_REGISTRY = [
41393
41393
  // Turning this on lets agents originate proposals that create customer
41394
41394
  // infrastructure once approved — same posture as augmented-support-writes.
41395
41395
  sensitive: true
41396
+ },
41397
+ {
41398
+ key: "github-broker-credentials",
41399
+ description: "Deliver GitHub App installation tokens to `git` and the `gh` CLI through the broker credential endpoint at USE time, instead of materializing them into the agent process environment at spawn (ENG-8344). A GitHub App installation token has a ~1h TTL, so the spawn-frozen GITHUB_ACCESS_TOKEN / GITHUB_TOKEN pair rotates hourly; the wrapper sources `.env.integrations` exactly once, so the only way a running agent sees the new value is a full session respawn (measured: 6 agents, ~144 kills/day). ENG-8343 stopped those kills landing mid-turn; this removes them. ON: `POST /host/agent-integrations` stops minting the installation token into the payload for auth_type=github_app rows (so computeIntegrationsHash stops seeing a rotating value) and marks the row credential_delivery=broker; the claudecode adapter then writes a git credential helper + a `gh` shim that fetch a fresh token per use from POST /host/agent-integrations/github/credential (ENG-8264 name addressing). OFF (default): byte-for-byte today's behaviour - the token is minted into the payload and materialized as GITHUB_ACCESS_TOKEN / GITHUB_TOKEN, no helper, no shim. NOTE the scope of the security claim: this removes the token from the agent's ENVIRONMENT, which is what stops the respawns. It does NOT make the token unreachable by a determined agent - the agent can invoke the helper itself. Strictly better than today, not a sandbox. Evaluated API-side only, per agent, in POST /host/agent-integrations; no host-side envVar. The host does not read this flag - it keys off the resulting credential_delivery marker on the row - so there is deliberately no host override that could put the token back on its own. Roll back from the flag.",
41400
+ flagType: "boolean",
41401
+ // Declared safe value is `false` = today's env delivery. Fail-safe direction:
41402
+ // a flag-DB read error must never strip `git`/`gh` credentials off a live
41403
+ // agent, which is what the ON path does when its host has no helper writer.
41404
+ defaultValue: false,
41405
+ // Flipping ON changes how every GitHub App agent on the scope authenticates
41406
+ // `git push` / `gh`. A bad flip takes those away, so it is a deliberate,
41407
+ // confirmed action (ADR-0022 §4).
41408
+ sensitive: true,
41409
+ // Set even though the flag is evaluated centrally, because `since` is a
41410
+ // REACH threshold ("a host this old has no consumer code for the flag") and
41411
+ // that is exactly the hazard here: the host does not read the flag, but it
41412
+ // does need the claudecode adapter's helper/shim writer and the wrapper PATH
41413
+ // prepend. On a host too old for those, the API would stop shipping the
41414
+ // token and NOTHING would replace it. Without `since` the flip-reach modal
41415
+ // reports FULL reach and hides that.
41416
+ //
41417
+ // DELIBERATE UNREACHABLE PLACEHOLDER - NOT A REAL THRESHOLD YET.
41418
+ // The sibling entries in this registry (`slack-hot-thread-guard` 0.28.339,
41419
+ // `slack-scheduled-channel-guard` 0.28.421) are BISECTED from published npm
41420
+ // artifacts, which is only possible AFTER this merges and publishes. A
41421
+ // pre-merge guess cannot be right, and the two directions are not
41422
+ // symmetric:
41423
+ // - too HIGH -> hosts classify `stale`, the modal over-warns. Annoying.
41424
+ // - too LOW -> hosts classify `honors` while carrying NO helper writer,
41425
+ // the modal promises full reach, and a flip strips `git`/
41426
+ // `gh` credentials with nothing replacing them. Outage.
41427
+ // So this is pinned ABOVE every published release on purpose: it classifies
41428
+ // EVERY host as `stale`, so the modal reports no reach rather than reach it
41429
+ // has no basis for. That is the intended pre-bisect state.
41430
+ //
41431
+ // BUT `since` IS ADVISORY, NOT A GUARD. It is read in exactly one place -
41432
+ // `computeFlagReach` behind GET /admin/reach, which renders the flip-reach
41433
+ // modal. `evaluate.ts` never reads it and neither does the override write
41434
+ // path. The placeholder therefore changes what an operator is TOLD; it does
41435
+ // not stop a flip on an under-`since` host. What actually holds the line
41436
+ // here is `defaultValue: false` plus `sensitive: true` plus the runbook.
41437
+ //
41438
+ // BEFORE THIS FLAG IS FLIPPED ANYWHERE: bisect the published dist for the
41439
+ // first agt-cli whose claudecode adapter writes agt-bin/ and whose wrapper
41440
+ // prepends it, then replace this with that exact version. The rollout
41441
+ // runbook gates on it. Leaving the placeholder in place is safe (nothing
41442
+ // flips); shipping a guessed number is not.
41443
+ since: "0.29.0"
41396
41444
  }
41397
41445
  ];
41398
41446
  var REGISTRY_BY_KEY = new Map(FLAG_REGISTRY.map((definition) => [definition.key, definition]));
@@ -35671,6 +35671,54 @@ var FLAG_REGISTRY = [
35671
35671
  // Turning this on lets agents originate proposals that create customer
35672
35672
  // infrastructure once approved — same posture as augmented-support-writes.
35673
35673
  sensitive: true
35674
+ },
35675
+ {
35676
+ key: "github-broker-credentials",
35677
+ description: "Deliver GitHub App installation tokens to `git` and the `gh` CLI through the broker credential endpoint at USE time, instead of materializing them into the agent process environment at spawn (ENG-8344). A GitHub App installation token has a ~1h TTL, so the spawn-frozen GITHUB_ACCESS_TOKEN / GITHUB_TOKEN pair rotates hourly; the wrapper sources `.env.integrations` exactly once, so the only way a running agent sees the new value is a full session respawn (measured: 6 agents, ~144 kills/day). ENG-8343 stopped those kills landing mid-turn; this removes them. ON: `POST /host/agent-integrations` stops minting the installation token into the payload for auth_type=github_app rows (so computeIntegrationsHash stops seeing a rotating value) and marks the row credential_delivery=broker; the claudecode adapter then writes a git credential helper + a `gh` shim that fetch a fresh token per use from POST /host/agent-integrations/github/credential (ENG-8264 name addressing). OFF (default): byte-for-byte today's behaviour - the token is minted into the payload and materialized as GITHUB_ACCESS_TOKEN / GITHUB_TOKEN, no helper, no shim. NOTE the scope of the security claim: this removes the token from the agent's ENVIRONMENT, which is what stops the respawns. It does NOT make the token unreachable by a determined agent - the agent can invoke the helper itself. Strictly better than today, not a sandbox. Evaluated API-side only, per agent, in POST /host/agent-integrations; no host-side envVar. The host does not read this flag - it keys off the resulting credential_delivery marker on the row - so there is deliberately no host override that could put the token back on its own. Roll back from the flag.",
35678
+ flagType: "boolean",
35679
+ // Declared safe value is `false` = today's env delivery. Fail-safe direction:
35680
+ // a flag-DB read error must never strip `git`/`gh` credentials off a live
35681
+ // agent, which is what the ON path does when its host has no helper writer.
35682
+ defaultValue: false,
35683
+ // Flipping ON changes how every GitHub App agent on the scope authenticates
35684
+ // `git push` / `gh`. A bad flip takes those away, so it is a deliberate,
35685
+ // confirmed action (ADR-0022 §4).
35686
+ sensitive: true,
35687
+ // Set even though the flag is evaluated centrally, because `since` is a
35688
+ // REACH threshold ("a host this old has no consumer code for the flag") and
35689
+ // that is exactly the hazard here: the host does not read the flag, but it
35690
+ // does need the claudecode adapter's helper/shim writer and the wrapper PATH
35691
+ // prepend. On a host too old for those, the API would stop shipping the
35692
+ // token and NOTHING would replace it. Without `since` the flip-reach modal
35693
+ // reports FULL reach and hides that.
35694
+ //
35695
+ // DELIBERATE UNREACHABLE PLACEHOLDER - NOT A REAL THRESHOLD YET.
35696
+ // The sibling entries in this registry (`slack-hot-thread-guard` 0.28.339,
35697
+ // `slack-scheduled-channel-guard` 0.28.421) are BISECTED from published npm
35698
+ // artifacts, which is only possible AFTER this merges and publishes. A
35699
+ // pre-merge guess cannot be right, and the two directions are not
35700
+ // symmetric:
35701
+ // - too HIGH -> hosts classify `stale`, the modal over-warns. Annoying.
35702
+ // - too LOW -> hosts classify `honors` while carrying NO helper writer,
35703
+ // the modal promises full reach, and a flip strips `git`/
35704
+ // `gh` credentials with nothing replacing them. Outage.
35705
+ // So this is pinned ABOVE every published release on purpose: it classifies
35706
+ // EVERY host as `stale`, so the modal reports no reach rather than reach it
35707
+ // has no basis for. That is the intended pre-bisect state.
35708
+ //
35709
+ // BUT `since` IS ADVISORY, NOT A GUARD. It is read in exactly one place -
35710
+ // `computeFlagReach` behind GET /admin/reach, which renders the flip-reach
35711
+ // modal. `evaluate.ts` never reads it and neither does the override write
35712
+ // path. The placeholder therefore changes what an operator is TOLD; it does
35713
+ // not stop a flip on an under-`since` host. What actually holds the line
35714
+ // here is `defaultValue: false` plus `sensitive: true` plus the runbook.
35715
+ //
35716
+ // BEFORE THIS FLAG IS FLIPPED ANYWHERE: bisect the published dist for the
35717
+ // first agt-cli whose claudecode adapter writes agt-bin/ and whose wrapper
35718
+ // prepends it, then replace this with that exact version. The rollout
35719
+ // runbook gates on it. Leaving the placeholder in place is safe (nothing
35720
+ // flips); shipping a guessed number is not.
35721
+ since: "0.29.0"
35674
35722
  }
35675
35723
  ];
35676
35724
  var REGISTRY_BY_KEY = new Map(FLAG_REGISTRY.map((definition) => [definition.key, definition]));
@@ -35997,6 +35997,54 @@ var FLAG_REGISTRY = [
35997
35997
  // Turning this on lets agents originate proposals that create customer
35998
35998
  // infrastructure once approved — same posture as augmented-support-writes.
35999
35999
  sensitive: true
36000
+ },
36001
+ {
36002
+ key: "github-broker-credentials",
36003
+ description: "Deliver GitHub App installation tokens to `git` and the `gh` CLI through the broker credential endpoint at USE time, instead of materializing them into the agent process environment at spawn (ENG-8344). A GitHub App installation token has a ~1h TTL, so the spawn-frozen GITHUB_ACCESS_TOKEN / GITHUB_TOKEN pair rotates hourly; the wrapper sources `.env.integrations` exactly once, so the only way a running agent sees the new value is a full session respawn (measured: 6 agents, ~144 kills/day). ENG-8343 stopped those kills landing mid-turn; this removes them. ON: `POST /host/agent-integrations` stops minting the installation token into the payload for auth_type=github_app rows (so computeIntegrationsHash stops seeing a rotating value) and marks the row credential_delivery=broker; the claudecode adapter then writes a git credential helper + a `gh` shim that fetch a fresh token per use from POST /host/agent-integrations/github/credential (ENG-8264 name addressing). OFF (default): byte-for-byte today's behaviour - the token is minted into the payload and materialized as GITHUB_ACCESS_TOKEN / GITHUB_TOKEN, no helper, no shim. NOTE the scope of the security claim: this removes the token from the agent's ENVIRONMENT, which is what stops the respawns. It does NOT make the token unreachable by a determined agent - the agent can invoke the helper itself. Strictly better than today, not a sandbox. Evaluated API-side only, per agent, in POST /host/agent-integrations; no host-side envVar. The host does not read this flag - it keys off the resulting credential_delivery marker on the row - so there is deliberately no host override that could put the token back on its own. Roll back from the flag.",
36004
+ flagType: "boolean",
36005
+ // Declared safe value is `false` = today's env delivery. Fail-safe direction:
36006
+ // a flag-DB read error must never strip `git`/`gh` credentials off a live
36007
+ // agent, which is what the ON path does when its host has no helper writer.
36008
+ defaultValue: false,
36009
+ // Flipping ON changes how every GitHub App agent on the scope authenticates
36010
+ // `git push` / `gh`. A bad flip takes those away, so it is a deliberate,
36011
+ // confirmed action (ADR-0022 §4).
36012
+ sensitive: true,
36013
+ // Set even though the flag is evaluated centrally, because `since` is a
36014
+ // REACH threshold ("a host this old has no consumer code for the flag") and
36015
+ // that is exactly the hazard here: the host does not read the flag, but it
36016
+ // does need the claudecode adapter's helper/shim writer and the wrapper PATH
36017
+ // prepend. On a host too old for those, the API would stop shipping the
36018
+ // token and NOTHING would replace it. Without `since` the flip-reach modal
36019
+ // reports FULL reach and hides that.
36020
+ //
36021
+ // DELIBERATE UNREACHABLE PLACEHOLDER - NOT A REAL THRESHOLD YET.
36022
+ // The sibling entries in this registry (`slack-hot-thread-guard` 0.28.339,
36023
+ // `slack-scheduled-channel-guard` 0.28.421) are BISECTED from published npm
36024
+ // artifacts, which is only possible AFTER this merges and publishes. A
36025
+ // pre-merge guess cannot be right, and the two directions are not
36026
+ // symmetric:
36027
+ // - too HIGH -> hosts classify `stale`, the modal over-warns. Annoying.
36028
+ // - too LOW -> hosts classify `honors` while carrying NO helper writer,
36029
+ // the modal promises full reach, and a flip strips `git`/
36030
+ // `gh` credentials with nothing replacing them. Outage.
36031
+ // So this is pinned ABOVE every published release on purpose: it classifies
36032
+ // EVERY host as `stale`, so the modal reports no reach rather than reach it
36033
+ // has no basis for. That is the intended pre-bisect state.
36034
+ //
36035
+ // BUT `since` IS ADVISORY, NOT A GUARD. It is read in exactly one place -
36036
+ // `computeFlagReach` behind GET /admin/reach, which renders the flip-reach
36037
+ // modal. `evaluate.ts` never reads it and neither does the override write
36038
+ // path. The placeholder therefore changes what an operator is TOLD; it does
36039
+ // not stop a flip on an under-`since` host. What actually holds the line
36040
+ // here is `defaultValue: false` plus `sensitive: true` plus the runbook.
36041
+ //
36042
+ // BEFORE THIS FLAG IS FLIPPED ANYWHERE: bisect the published dist for the
36043
+ // first agt-cli whose claudecode adapter writes agt-bin/ and whose wrapper
36044
+ // prepends it, then replace this with that exact version. The rollout
36045
+ // runbook gates on it. Leaving the placeholder in place is safe (nothing
36046
+ // flips); shipping a guessed number is not.
36047
+ since: "0.29.0"
36000
36048
  }
36001
36049
  ];
36002
36050
  var REGISTRY_BY_KEY = new Map(FLAG_REGISTRY.map((definition) => [definition.key, definition]));
@@ -37,7 +37,7 @@ import {
37
37
  writeDirectChatSessionState,
38
38
  writeEgressAllowlist,
39
39
  writePersistentClaudeWrapper
40
- } from "./chunk-4PRR22KH.js";
40
+ } from "./chunk-LNPJI2AE.js";
41
41
  import "./chunk-XWVM4KPK.js";
42
42
  export {
43
43
  EGRESS_BASELINE_DOMAINS,
@@ -79,4 +79,4 @@ export {
79
79
  writeEgressAllowlist,
80
80
  writePersistentClaudeWrapper
81
81
  };
82
- //# sourceMappingURL=persistent-session-OMAAP4OU.js.map
82
+ //# sourceMappingURL=persistent-session-VX37ESOS.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  paneLogPath
3
- } from "./chunk-4PRR22KH.js";
3
+ } from "./chunk-LNPJI2AE.js";
4
4
  import "./chunk-XWVM4KPK.js";
5
5
 
6
6
  // src/lib/responsiveness-probe.ts
@@ -662,4 +662,4 @@ export {
662
662
  readAndResetSlackReplyBindingClassifications,
663
663
  readAndResetSlackReplyTargetClassifications
664
664
  };
665
- //# sourceMappingURL=responsiveness-probe-NRH2AQW6.js.map
665
+ //# sourceMappingURL=responsiveness-probe-5MEW5XNI.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@integrity-labs/agt-cli",
3
- "version": "0.28.507",
3
+ "version": "0.28.508",
4
4
  "description": "Augmented Team CLI — agent provisioning and management",
5
5
  "type": "module",
6
6
  "engines": {