@integrity-labs/agt-cli 0.28.517 → 0.28.519

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 CHANGED
@@ -40,7 +40,7 @@ import {
40
40
  success,
41
41
  table,
42
42
  warn
43
- } from "../chunk-P2WZKAPY.js";
43
+ } from "../chunk-FRIAJDCT.js";
44
44
  import {
45
45
  AnchorSessionClient,
46
46
  CHANNEL_REGISTRY,
@@ -71,7 +71,7 @@ import {
71
71
  requiredMcpWildcard,
72
72
  resolveChannels,
73
73
  serializeManifestForSlackCli
74
- } from "../chunk-UQ3TQ7M4.js";
74
+ } from "../chunk-XH3O62OZ.js";
75
75
  import "../chunk-XWVM4KPK.js";
76
76
 
77
77
  // src/bin/agt.ts
@@ -4834,7 +4834,7 @@ import { execFileSync, execSync } from "child_process";
4834
4834
  import { existsSync as existsSync10, realpathSync as realpathSync2 } from "fs";
4835
4835
  import chalk18 from "chalk";
4836
4836
  import ora16 from "ora";
4837
- var cliVersion = true ? "0.28.517" : "dev";
4837
+ var cliVersion = true ? "0.28.519" : "dev";
4838
4838
  async function fetchLatestVersion() {
4839
4839
  const host2 = getHost();
4840
4840
  if (!host2) return null;
@@ -6006,7 +6006,7 @@ function handleError(err) {
6006
6006
  }
6007
6007
 
6008
6008
  // src/bin/agt.ts
6009
- var cliVersion2 = true ? "0.28.517" : "dev";
6009
+ var cliVersion2 = true ? "0.28.519" : "dev";
6010
6010
  var program = new Command();
6011
6011
  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");
6012
6012
  program.hook("preAction", async (thisCommand, actionCommand) => {
@@ -42,7 +42,7 @@ import {
42
42
  resolveConnectivityProbe,
43
43
  worseConnectivityOutcome,
44
44
  wrapScheduledTaskPrompt
45
- } from "./chunk-UQ3TQ7M4.js";
45
+ } from "./chunk-XH3O62OZ.js";
46
46
  import {
47
47
  parsePsRows
48
48
  } from "./chunk-XWVM4KPK.js";
@@ -5317,7 +5317,7 @@ function exchangeFailureKind(err) {
5317
5317
  }
5318
5318
 
5319
5319
  // src/lib/api-client.ts
5320
- var agtCliVersion = true ? "0.28.517" : "dev";
5320
+ var agtCliVersion = true ? "0.28.519" : "dev";
5321
5321
  var lastConfigHash = null;
5322
5322
  function setConfigHash(hash) {
5323
5323
  lastConfigHash = hash && hash.length > 0 ? hash : null;
@@ -8629,4 +8629,4 @@ export {
8629
8629
  managerInstallSystemUnitCommand,
8630
8630
  managerUninstallSystemUnitCommand
8631
8631
  };
8632
- //# sourceMappingURL=chunk-P2WZKAPY.js.map
8632
+ //# sourceMappingURL=chunk-FRIAJDCT.js.map
@@ -4563,11 +4563,60 @@ var MARKUP_BRIDGE_SCRIPT = `<script>(function(){
4563
4563
  e.preventDefault(); e.stopPropagation(); startEditTextNode(tn, el);
4564
4564
  }
4565
4565
  }, true);
4566
- document.addEventListener('keydown', function(e){
4566
+ // ENG-8500: while the inline editor is focused, the artefact's OWN keyboard
4567
+ // handlers must not see the keystroke.
4568
+ //
4569
+ // Decks ship as a single self-contained file with their own slide navigation
4570
+ // bound to space and the arrow keys, and that script is agent-authored content
4571
+ // we neither control nor can retro-patch - the published object is immutable,
4572
+ // so every deck already out there has its handler baked in. It also runs FIRST:
4573
+ // the bridge is appended after the artefact HTML (frame.srcdoc = html +
4574
+ // MARKUP_BRIDGE in publisher.ts), so the deck registers its listener before we
4575
+ // register ours.
4576
+ //
4577
+ // The consequence was not a keyboard annoyance, it was silent data corruption.
4578
+ // The deck's handler called preventDefault() on space, so the spaces a viewer
4579
+ // typed never reached the editor and words concatenated -
4580
+ // "albreakevenreached in June 2026" - with Save sitting right there. In English
4581
+ // prose a reader might catch it; in a number, a product name or a URL they
4582
+ // would not.
4583
+ //
4584
+ // Registration order cannot be won, so win on PHASE instead. The capture path
4585
+ // is window -> document -> ... -> target, so a capture listener on the window object
4586
+ // fires before any document-level or bubble-phase listener no matter when it
4587
+ // was registered. stopImmediatePropagation() then keeps the event from ever
4588
+ // reaching the deck.
4589
+ //
4590
+ // The one case this does not beat is an artefact that itself registers on
4591
+ // the window object with capture BEFORE the bridge loads. Deck templates use
4592
+ // document.addEventListener for keydown, so that is theoretical rather
4593
+ // than observed - but it is a real limit and worth knowing before someone
4594
+ // assumes this is airtight.
4595
+ //
4596
+ // Note what is deliberately NOT called for ordinary keys: preventDefault(). The
4597
+ // whole point is that space, arrows, Home/End and PageUp/PageDown do their
4598
+ // normal text-editing work. We suppress the artefact, not the browser.
4599
+ window.addEventListener('keydown', function(e){
4600
+ // Not editing: the artefact keeps its keyboard entirely. Slide navigation
4601
+ // must behave exactly as it does today (ENG-8500 AC2).
4567
4602
  if(!editing) return;
4568
- if(e.key==='Escape'){ e.preventDefault(); endEdit(false); }
4569
- else if(e.key==='Enter' && !e.shiftKey){ e.preventDefault(); endEdit(true); }
4570
- });
4603
+ // Editing, but the keystroke is going somewhere else (the viewer clicked
4604
+ // away, or is in the shell's own UI). Not ours to swallow.
4605
+ var t=e.target;
4606
+ var inEditor = t===editing || (editing.contains && t && t.nodeType && editing.contains(t));
4607
+ if(!inEditor) return;
4608
+
4609
+ // Escape cancels the edit; Enter commits. Both are deliberate terminal
4610
+ // actions rather than text input, so they DO preventDefault - Enter must not
4611
+ // also insert a newline into the field it is closing. Shift+Enter is left
4612
+ // alone as a genuine newline.
4613
+ if(e.key==='Escape'){ e.preventDefault(); e.stopImmediatePropagation(); endEdit(false); return; }
4614
+ if(e.key==='Enter' && !e.shiftKey){ e.preventDefault(); e.stopImmediatePropagation(); endEdit(true); return; }
4615
+
4616
+ // Everything else: let the browser handle it as text input, and stop the
4617
+ // artefact's own handlers from seeing it at all.
4618
+ e.stopImmediatePropagation();
4619
+ }, true);
4571
4620
 
4572
4621
  document.addEventListener('mouseup', function(){
4573
4622
  if(editing) return; // a selection inside the editor is for the cursor, not a comment
@@ -10460,6 +10509,30 @@ var FLAG_REGISTRY = [
10460
10509
  // must never be serialized into the browser map.
10461
10510
  defaultValue: false
10462
10511
  },
10512
+ {
10513
+ key: "agent-unified-screen",
10514
+ description: 'Unified agent screen redesign (ENG-8478 epic / ENG-8480). When ON, the webapp renders the new single-screen "viewing is editing" agent surface (stripped-back hero, working agent switcher, inline-editable profile, embedded operational panels + a live direct-chat drawer) in place of the separate agent view/edit pages; when OFF, the current view/edit pages are unchanged. Additive UI gate \u2014 no data-model change: each panel reads the same existing endpoints the current pages use. Composes independently with app-top-nav-shell (the two flags are reconciled in ENG-8488). Ships dark.',
10515
+ flagType: "boolean",
10516
+ // Declared safe value is `false` = the current view/edit pages. A flag-DB read
10517
+ // error must fall back to what ships today, never a half-built redesign.
10518
+ defaultValue: false,
10519
+ // Read CLIENT-SIDE by the agent screen ("use client") via usePublicBooleanFlag,
10520
+ // so the key must be in the browser-exposed public map. Additive viewer gate,
10521
+ // resolved within the active-org cookie's scope — not sensitive.
10522
+ public: true
10523
+ },
10524
+ {
10525
+ key: "app-top-nav-shell",
10526
+ description: "Global top-navigation shell redesign (ENG-8478 epic / ENG-8486). When ON, the dashboard chrome replaces the left sidebar with a top navigation bar (team switcher \xB7 destinations \xB7 command palette + account) so the left side is free for an agent-scoped rail; when OFF, the existing left sidebar is unchanged. Additive layout gate \u2014 no data-model change. Composes independently with agent-unified-screen (the two flags are reconciled in ENG-8488). Ships dark.",
10527
+ flagType: "boolean",
10528
+ // Declared safe value is `false` = the current left sidebar. Fail-closed to the
10529
+ // shell that ships today if the flag DB is unreachable.
10530
+ defaultValue: false,
10531
+ // Read CLIENT-SIDE by the dashboard layout + sidebar ("use client") via
10532
+ // usePublicBooleanFlag, so the key must be in the browser-exposed public map.
10533
+ // Additive layout gate — not sensitive.
10534
+ public: true
10535
+ },
10463
10536
  {
10464
10537
  key: "ninjafy-brand",
10465
10538
  description: 'Present the product under the Ninjafy brand instead of Augmented Team (ENG-8250). This is the UMBRELLA brand gate, not a one-off nav toggle: every subsequent rebrand surface (page titles, email templates, marketing-facing copy) reads THIS key rather than adding its own flag, so the whole rebrand keeps a single kill switch. First surface is the left-hand nav wordmark \u2014 ON replaces the human+robot mark and the "augmented.team" text with italic lowercase "ninjafy"; OFF renders exactly what shipped before. Scope is USER-FACING BRAND TEXT ONLY: it must never gate a code identifier, package name, env var or CLI name, which stay `Augmented`/`agt` per the CLAUDE.md naming contract (the deep code rename is workstream C of docs/runbooks/rebrand-ninjafy-migration.md and is out of scope here). Set the stage-wide default to flip a whole environment, or add a feature_flag_overrides row to pilot one organization while every other org still sees Augmented. Ships dark.',
@@ -15039,4 +15112,4 @@ export {
15039
15112
  stopAllSessionsAndWait,
15040
15113
  getProjectDir
15041
15114
  };
15042
- //# sourceMappingURL=chunk-UQ3TQ7M4.js.map
15115
+ //# sourceMappingURL=chunk-XH3O62OZ.js.map