@tryglen/cli 0.36.0 → 0.36.1

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.
Files changed (221) hide show
  1. package/README.md +39 -27
  2. package/dist/_utils/agent-adapter.d.ts +0 -15
  3. package/dist/_utils/agent-adapter.js +0 -20
  4. package/dist/_utils/agent-adapter.js.map +1 -1
  5. package/dist/_utils/agents-table.js +1 -9
  6. package/dist/_utils/agents-table.js.map +1 -1
  7. package/dist/_utils/cli-error.js +0 -3
  8. package/dist/_utils/cli-error.js.map +1 -1
  9. package/dist/_utils/codex-app-server.js +0 -2
  10. package/dist/_utils/codex-app-server.js.map +1 -1
  11. package/dist/_utils/codex-hooks-merge.js +0 -11
  12. package/dist/_utils/codex-hooks-merge.js.map +1 -1
  13. package/dist/_utils/codex-hooks-setup.js +0 -18
  14. package/dist/_utils/codex-hooks-setup.js.map +1 -1
  15. package/dist/_utils/codex-paths.js +0 -3
  16. package/dist/_utils/codex-paths.js.map +1 -1
  17. package/dist/_utils/codex-repair-trace.js +0 -3
  18. package/dist/_utils/codex-repair-trace.js.map +1 -1
  19. package/dist/_utils/codex-trust-toml.js +1 -9
  20. package/dist/_utils/codex-trust-toml.js.map +1 -1
  21. package/dist/_utils/collect-import-files.js +0 -7
  22. package/dist/_utils/collect-import-files.js.map +1 -1
  23. package/dist/_utils/config.js +0 -4
  24. package/dist/_utils/config.js.map +1 -1
  25. package/dist/_utils/confirm.js +2 -10
  26. package/dist/_utils/confirm.js.map +1 -1
  27. package/dist/_utils/credentials.js +0 -3
  28. package/dist/_utils/credentials.js.map +1 -1
  29. package/dist/_utils/detect-transcript-format.js +0 -7
  30. package/dist/_utils/detect-transcript-format.js.map +1 -1
  31. package/dist/_utils/ensure-global-cli.d.ts +0 -12
  32. package/dist/_utils/ensure-global-cli.js +1 -28
  33. package/dist/_utils/ensure-global-cli.js.map +1 -1
  34. package/dist/_utils/ephemeral-session.js +3 -24
  35. package/dist/_utils/ephemeral-session.js.map +1 -1
  36. package/dist/_utils/extract-claude-segments.js +1 -5
  37. package/dist/_utils/extract-claude-segments.js.map +1 -1
  38. package/dist/_utils/extract-codex-segments.js +0 -9
  39. package/dist/_utils/extract-codex-segments.js.map +1 -1
  40. package/dist/_utils/extract-pi-segments.js +1 -5
  41. package/dist/_utils/extract-pi-segments.js.map +1 -1
  42. package/dist/_utils/find-bin.js +0 -8
  43. package/dist/_utils/find-bin.js.map +1 -1
  44. package/dist/_utils/format-search-result.js +3 -19
  45. package/dist/_utils/format-search-result.js.map +1 -1
  46. package/dist/_utils/format-turn-nudges.js +2 -20
  47. package/dist/_utils/format-turn-nudges.js.map +1 -1
  48. package/dist/_utils/git-context.d.ts +0 -2
  49. package/dist/_utils/git-context.js +1 -33
  50. package/dist/_utils/git-context.js.map +1 -1
  51. package/dist/_utils/git-hook-setup.js +0 -1
  52. package/dist/_utils/git-hook-setup.js.map +1 -1
  53. package/dist/_utils/glen-headers.js +1 -4
  54. package/dist/_utils/glen-headers.js.map +1 -1
  55. package/dist/_utils/http.js +1 -8
  56. package/dist/_utils/http.js.map +1 -1
  57. package/dist/_utils/idempotency-key.js +1 -4
  58. package/dist/_utils/idempotency-key.js.map +1 -1
  59. package/dist/_utils/indicator-app.js +4 -26
  60. package/dist/_utils/indicator-app.js.map +1 -1
  61. package/dist/_utils/indicator-health.js +0 -6
  62. package/dist/_utils/indicator-health.js.map +1 -1
  63. package/dist/_utils/ingest-diagnosis.js +0 -5
  64. package/dist/_utils/ingest-diagnosis.js.map +1 -1
  65. package/dist/_utils/ingest-heartbeat.js +1 -6
  66. package/dist/_utils/ingest-heartbeat.js.map +1 -1
  67. package/dist/_utils/install-receipt.js +0 -3
  68. package/dist/_utils/install-receipt.js.map +1 -1
  69. package/dist/_utils/jcode-bundle.js +0 -7
  70. package/dist/_utils/jcode-bundle.js.map +1 -1
  71. package/dist/_utils/jcode-event.js +2 -18
  72. package/dist/_utils/jcode-event.js.map +1 -1
  73. package/dist/_utils/jcode-hook-lines.js +1 -5
  74. package/dist/_utils/jcode-hook-lines.js.map +1 -1
  75. package/dist/_utils/jcode-hooks-toml.js +1 -9
  76. package/dist/_utils/jcode-hooks-toml.js.map +1 -1
  77. package/dist/_utils/jcode-paths.js +0 -3
  78. package/dist/_utils/jcode-paths.js.map +1 -1
  79. package/dist/_utils/jcode-setup.js +0 -7
  80. package/dist/_utils/jcode-setup.js.map +1 -1
  81. package/dist/_utils/jcode-skills-sync.js +1 -6
  82. package/dist/_utils/jcode-skills-sync.js.map +1 -1
  83. package/dist/_utils/login-check.js +1 -4
  84. package/dist/_utils/login-check.js.map +1 -1
  85. package/dist/_utils/managed-block.js +0 -4
  86. package/dist/_utils/managed-block.js.map +1 -1
  87. package/dist/_utils/normalize-boolean-flags.js +2 -7
  88. package/dist/_utils/normalize-boolean-flags.js.map +1 -1
  89. package/dist/_utils/open-browser.js +1 -3
  90. package/dist/_utils/open-browser.js.map +1 -1
  91. package/dist/_utils/parse-claude-transcript.js +4 -24
  92. package/dist/_utils/parse-claude-transcript.js.map +1 -1
  93. package/dist/_utils/parse-codex-transcript.js +1 -22
  94. package/dist/_utils/parse-codex-transcript.js.map +1 -1
  95. package/dist/_utils/parse-cursor-db.js +2 -21
  96. package/dist/_utils/parse-cursor-db.js.map +1 -1
  97. package/dist/_utils/parse-jcode-session.js +0 -15
  98. package/dist/_utils/parse-jcode-session.js.map +1 -1
  99. package/dist/_utils/parse-pi-transcript.js +1 -35
  100. package/dist/_utils/parse-pi-transcript.js.map +1 -1
  101. package/dist/_utils/parse-transcript.js +1 -9
  102. package/dist/_utils/parse-transcript.js.map +1 -1
  103. package/dist/_utils/plugin-status.js +0 -19
  104. package/dist/_utils/plugin-status.js.map +1 -1
  105. package/dist/_utils/post-route.js +0 -7
  106. package/dist/_utils/post-route.js.map +1 -1
  107. package/dist/_utils/pr-review-link.js +0 -2
  108. package/dist/_utils/pr-review-link.js.map +1 -1
  109. package/dist/_utils/proactive-ticket-log.js +1 -11
  110. package/dist/_utils/proactive-ticket-log.js.map +1 -1
  111. package/dist/_utils/record-commit-anchor.js +1 -8
  112. package/dist/_utils/record-commit-anchor.js.map +1 -1
  113. package/dist/_utils/refresh-control-state.js +1 -7
  114. package/dist/_utils/refresh-control-state.js.map +1 -1
  115. package/dist/_utils/render-callback-page.js +0 -7
  116. package/dist/_utils/render-callback-page.js.map +1 -1
  117. package/dist/_utils/resolve-import-workspace.d.ts +0 -7
  118. package/dist/_utils/resolve-import-workspace.js +1 -13
  119. package/dist/_utils/resolve-import-workspace.js.map +1 -1
  120. package/dist/_utils/run-bin.js +0 -2
  121. package/dist/_utils/run-bin.js.map +1 -1
  122. package/dist/_utils/session-map.js +0 -5
  123. package/dist/_utils/session-map.js.map +1 -1
  124. package/dist/_utils/shell-profile.js +1 -28
  125. package/dist/_utils/shell-profile.js.map +1 -1
  126. package/dist/_utils/state-line-memo.d.ts +0 -6
  127. package/dist/_utils/state-line-memo.js +3 -18
  128. package/dist/_utils/state-line-memo.js.map +1 -1
  129. package/dist/_utils/state-line.js +0 -4
  130. package/dist/_utils/state-line.js.map +1 -1
  131. package/dist/_utils/state.js +0 -5
  132. package/dist/_utils/state.js.map +1 -1
  133. package/dist/_utils/sync-mode-from-server.d.ts +0 -18
  134. package/dist/_utils/sync-mode-from-server.js +2 -21
  135. package/dist/_utils/sync-mode-from-server.js.map +1 -1
  136. package/dist/_utils/transcript-turns.js +1 -51
  137. package/dist/_utils/transcript-turns.js.map +1 -1
  138. package/dist/_utils/turn-cache.js +1 -8
  139. package/dist/_utils/turn-cache.js.map +1 -1
  140. package/dist/_utils/update.d.ts +0 -10
  141. package/dist/_utils/update.js +8 -30
  142. package/dist/_utils/update.js.map +1 -1
  143. package/dist/_utils/version.js +3 -6
  144. package/dist/_utils/version.js.map +1 -1
  145. package/dist/_utils/which.d.ts +0 -5
  146. package/dist/_utils/which.js +0 -5
  147. package/dist/_utils/which.js.map +1 -1
  148. package/dist/_utils/write-commit-trailer.js +1 -5
  149. package/dist/_utils/write-commit-trailer.js.map +1 -1
  150. package/dist/bin.js +6 -25
  151. package/dist/bin.js.map +1 -1
  152. package/dist/commands/_utils/materialize-skill.js +4 -34
  153. package/dist/commands/_utils/materialize-skill.js.map +1 -1
  154. package/dist/commands/_utils/pack-skill-dir.js +6 -27
  155. package/dist/commands/_utils/pack-skill-dir.js.map +1 -1
  156. package/dist/commands/artifact.js +2 -5
  157. package/dist/commands/artifact.js.map +1 -1
  158. package/dist/commands/code-search.js +0 -6
  159. package/dist/commands/code-search.js.map +1 -1
  160. package/dist/commands/doctor.d.ts +0 -17
  161. package/dist/commands/doctor.js +15 -79
  162. package/dist/commands/doctor.js.map +1 -1
  163. package/dist/commands/feedback.js +2 -10
  164. package/dist/commands/feedback.js.map +1 -1
  165. package/dist/commands/git-hooks.js +0 -3
  166. package/dist/commands/git-hooks.js.map +1 -1
  167. package/dist/commands/import.js +5 -27
  168. package/dist/commands/import.js.map +1 -1
  169. package/dist/commands/incognito.d.ts +0 -5
  170. package/dist/commands/incognito.js +0 -5
  171. package/dist/commands/incognito.js.map +1 -1
  172. package/dist/commands/indicator.d.ts +0 -1
  173. package/dist/commands/indicator.js +0 -1
  174. package/dist/commands/indicator.js.map +1 -1
  175. package/dist/commands/ingest.js +37 -111
  176. package/dist/commands/ingest.js.map +1 -1
  177. package/dist/commands/install.js +7 -93
  178. package/dist/commands/install.js.map +1 -1
  179. package/dist/commands/invite.d.ts +0 -6
  180. package/dist/commands/invite.js +0 -16
  181. package/dist/commands/invite.js.map +1 -1
  182. package/dist/commands/login.js +0 -15
  183. package/dist/commands/login.js.map +1 -1
  184. package/dist/commands/onboard.js +0 -6
  185. package/dist/commands/onboard.js.map +1 -1
  186. package/dist/commands/org.js +0 -2
  187. package/dist/commands/org.js.map +1 -1
  188. package/dist/commands/pr-link.js +2 -15
  189. package/dist/commands/pr-link.js.map +1 -1
  190. package/dist/commands/search.js +0 -5
  191. package/dist/commands/search.js.map +1 -1
  192. package/dist/commands/session-start.d.ts +0 -21
  193. package/dist/commands/session-start.js +6 -65
  194. package/dist/commands/session-start.js.map +1 -1
  195. package/dist/commands/set-mode.d.ts +0 -6
  196. package/dist/commands/set-mode.js +2 -12
  197. package/dist/commands/set-mode.js.map +1 -1
  198. package/dist/commands/skill.js +5 -35
  199. package/dist/commands/skill.js.map +1 -1
  200. package/dist/commands/statusline.d.ts +0 -13
  201. package/dist/commands/statusline.js +0 -15
  202. package/dist/commands/statusline.js.map +1 -1
  203. package/dist/commands/suggestions.d.ts +0 -6
  204. package/dist/commands/suggestions.js +0 -7
  205. package/dist/commands/suggestions.js.map +1 -1
  206. package/dist/commands/takeover/_utils/agent-paths.js +2 -3
  207. package/dist/commands/takeover/_utils/agent-paths.js.map +1 -1
  208. package/dist/commands/takeover/_utils/cursor-store.js +1 -3
  209. package/dist/commands/takeover/_utils/cursor-store.js.map +1 -1
  210. package/dist/commands/takeover/_utils/write-codex-desktop-session.js +1 -4
  211. package/dist/commands/takeover/_utils/write-codex-desktop-session.js.map +1 -1
  212. package/dist/commands/takeover/_utils/write-codex-session.js +1 -2
  213. package/dist/commands/takeover/_utils/write-codex-session.js.map +1 -1
  214. package/dist/commands/uninstall.d.ts +0 -1
  215. package/dist/commands/uninstall.js +3 -7
  216. package/dist/commands/uninstall.js.map +1 -1
  217. package/dist/commands/update.d.ts +0 -10
  218. package/dist/commands/update.js +4 -32
  219. package/dist/commands/update.js.map +1 -1
  220. package/dist/jcode/plugin.json +1 -1
  221. package/package.json +1 -1
@@ -1,9 +1,4 @@
1
1
  import { type CliError } from "../_utils/cli-error.js";
2
2
  import { type Result } from "../_utils/result.js";
3
- /**
4
- * Back-compat shim for the pre-tri-state CLI. `glen incognito` (no arg) and
5
- * `glen incognito on` enter incognito; `glen incognito off` resumes normal
6
- * recording (mode "on"). New code should prefer `glen on|off|incognito`.
7
- */
8
3
  declare const incognito: (stateArg?: string) => Promise<Result<void, CliError>>;
9
4
  export { incognito };
@@ -1,11 +1,6 @@
1
1
  import { cliErr } from "../_utils/cli-error.js";
2
2
  import { err } from "../_utils/result.js";
3
3
  import { setMode } from "./set-mode.js";
4
- /**
5
- * Back-compat shim for the pre-tri-state CLI. `glen incognito` (no arg) and
6
- * `glen incognito on` enter incognito; `glen incognito off` resumes normal
7
- * recording (mode "on"). New code should prefer `glen on|off|incognito`.
8
- */
9
4
  const incognito = async (stateArg) => {
10
5
  if (stateArg !== undefined && stateArg !== "on" && stateArg !== "off")
11
6
  return err(cliErr({
@@ -1 +1 @@
1
- {"version":3,"file":"incognito.js","sourceRoot":"","sources":["../../src/commands/incognito.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAe,GAAG,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;;;GAIG;AACH,MAAM,SAAS,GAAG,KAAK,EACrB,QAAiB,EACgB,EAAE;IACnC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,KAAK;QACnE,OAAO,GAAG,CACR,MAAM,CAAC;YACL,IAAI,EAAE,qBAAqB,QAAQ,GAAG;YACtC,MAAM,EAAE,yDAAyD;SAClE,CAAC,CACH,CAAC;IACJ,OAAO,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;AAC1D,CAAC,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"incognito.js","sourceRoot":"","sources":["../../src/commands/incognito.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAe,GAAG,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,MAAM,SAAS,GAAG,KAAK,EACrB,QAAiB,EACgB,EAAE;IACnC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,KAAK;QACnE,OAAO,GAAG,CACR,MAAM,CAAC;YACL,IAAI,EAAE,qBAAqB,QAAQ,GAAG;YACtC,MAAM,EAAE,yDAAyD;SAClE,CAAC,CACH,CAAC;IACJ,OAAO,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;AAC1D,CAAC,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import { type CliError } from "../_utils/cli-error.js";
2
2
  import { type Result } from "../_utils/result.js";
3
- /** `glen indicator start|stop|status` — the macOS menu bar recording indicator. */
4
3
  declare const indicator: (action: string) => Promise<Result<void, CliError>>;
5
4
  export { indicator };
@@ -43,7 +43,6 @@ const statusIndicator = async () => {
43
43
  ` visibility: ${visibilityLabel(running, health)}\n`);
44
44
  return ok(undefined);
45
45
  };
46
- /** `glen indicator start|stop|status` — the macOS menu bar recording indicator. */
47
46
  const indicator = async (action) => {
48
47
  if (process.platform !== "darwin")
49
48
  return err(cliErr({
@@ -1 +1 @@
1
- {"version":3,"file":"indicator.js","sourceRoot":"","sources":["../../src/commands/indicator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indicator.js","sourceRoot":"","sources":["../../src/commands/indicator.ts"],"names":[],"mappings":"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"}
@@ -31,9 +31,7 @@ const readStdin = async () => {
31
31
  chunks.push(chunk);
32
32
  return Buffer.concat(chunks).toString("utf8");
33
33
  };
34
- // Appended to agent-facing failure hints: when the TTL'd update-check cache
35
- // already knows about a newer version, suggest `glen update` (never hits the
36
- // network — hooks must stay fast).
34
+ // Reads the cache only, never the network: hooks must stay fast.
37
35
  const updateAddendum = () => {
38
36
  const v = cachedNewerVersion();
39
37
  return v
@@ -46,15 +44,11 @@ const readTranscriptLines = async (path) => {
46
44
  return [];
47
45
  return r.value.split("\n").filter(Boolean);
48
46
  };
49
- // Hook invariant: ingest NEVER returns an error and bin.ts NEVER exits
50
- // nonzero for it — a nonzero hook exit blocks the user's prompt (exit 2 is
51
- // Claude Code's blocking code). Every failure mode instead emits an
52
- // agent-facing hint via emit() and resolves ok.
47
+ // Hook invariant: never return an error or exit nonzero — a nonzero hook exit blocks the user's prompt.
48
+ // Every failure emits an agent-facing hint and resolves ok.
53
49
  const ingest = async (agent) => {
54
50
  void maybeSpawnBackgroundUpdate();
55
51
  const stdinRaw = await readStdin();
56
- // jcode: the event is JCODE_HOOK_* env (stdin is /dev/null under jcode's
57
- // observer hooks); everything else arrives as JSON on stdin.
58
52
  const event = agent === "jcode"
59
53
  ? await readJcodeStopEvent(process.env)
60
54
  : (() => {
@@ -65,9 +59,6 @@ const ingest = async (agent) => {
65
59
  return null;
66
60
  }
67
61
  })();
68
- // Cursor vocabulary → glen's internal vocabulary. Cursor events carry
69
- // conversation_id (not session_id); afterAgentResponse is Cursor's
70
- // "completed turn" event (stop carries no assistant text).
71
62
  if (agent === "cursor" && event) {
72
63
  if (!event.session_id && typeof event.conversation_id === "string")
73
64
  event.session_id = event.conversation_id;
@@ -81,9 +72,6 @@ const ingest = async (agent) => {
81
72
  return ok(undefined);
82
73
  if (hookEventName !== "Stop" && typeof event.prompt !== "string")
83
74
  return ok(undefined);
84
- // Normalise the agent name — only known values are forwarded. (Pi events
85
- // arrive in the claude vocabulary already: they are authored by glen's own
86
- // pi extension, so no field mapping is needed.)
87
75
  const agentName = agent === "claude-code" ||
88
76
  agent === "codex" ||
89
77
  agent === "cursor" ||
@@ -91,28 +79,18 @@ const ingest = async (agent) => {
91
79
  agent === "jcode"
92
80
  ? agent
93
81
  : undefined;
94
- // Machine-spawned ephemeral session (fleet driver / one-shot thread): no
95
- // injection and no capture. Stdout would be injected into the spawned
96
- // thread — leaking "[glen] …" lines into its parent orchestrator's view of
97
- // the thread's output — and every one-shot turn would land in team memory
98
- // as a junk conversation. See _utils/ephemeral-session.ts.
82
+ // Ephemeral machine-spawned session: no capture, no injection.
83
+ // Stdout would leak into the parent orchestrator's view of the thread.
99
84
  if (isEphemeralSession(agentName, event))
100
85
  return ok(undefined);
101
86
  const heartbeatAgent = agentName ?? "unknown";
102
- // Ahead of the credentials check on purpose — the heartbeat proves "the
103
- // hook fired here", which a logged-out machine needs answered too.
87
+ // Before the credentials check on purpose: a logged-out machine still needs to prove the hook fired.
104
88
  await recordHeartbeatRun(heartbeatAgent);
105
- // `text` is model-facing context. Channel selection:
106
- // - Codex parses stdout as JSON and REQUIRES the hookSpecificOutput envelope
107
- // (plain text → the hook is marked Failed and the context is dropped —
108
- // verified live on 0.137.0), so it always uses the envelope.
109
- // - Pi: glen's own pi extension consumes stdout and parses the same
110
- // envelope (with a plain-text fallback), so pi rides the codex channel.
111
- // - Claude Code injects raw stdout as context, so plain text is enough.
112
- // - Unknown agents stay on plain stdout — we can't assume they parse JSON.
89
+ // Codex requires the hookSpecificOutput JSON envelope (plain text drops the context); pi parses the same envelope.
90
+ // Claude Code and unknown agents get plain stdout.
113
91
  const emit = (text) => {
114
92
  if (agentName === "cursor" || agentName === "jcode")
115
- return; // no ingest output channel
93
+ return;
116
94
  if (agentName !== "codex" && agentName !== "pi") {
117
95
  process.stdout.write(text);
118
96
  return;
@@ -126,9 +104,6 @@ const ingest = async (agent) => {
126
104
  };
127
105
  const creds = await readCredentials();
128
106
  if (!creds) {
129
- // One shared path for every agent: emit the hint (codex gets the JSON
130
- // envelope, claude-code gets plain stdout) and exit clean — a non-zero
131
- // exit blocks the prompt (Claude) or drops the output (Codex).
132
107
  emit("[glen] not connected — run `glen login`");
133
108
  return ok(undefined);
134
109
  }
@@ -136,9 +111,6 @@ const ingest = async (agent) => {
136
111
  const state = localState?.mode === "off"
137
112
  ? (await refreshControlState(creds.key, localState)).state
138
113
  : localState;
139
- // Off: poll only the content-free control state above, then inject and record
140
- // nothing while the account remains off. Another machine can resume the
141
- // account, in which case this hook picks up the newer server mode and proceeds.
142
114
  if (state?.mode === "off")
143
115
  return ok(undefined);
144
116
  const transcriptPath = typeof event.transcript_path === "string"
@@ -148,21 +120,13 @@ const ingest = async (agent) => {
148
120
  ? await readTranscriptLines(transcriptPath)
149
121
  : [];
150
122
  const transcript = parseTranscript(transcriptLines);
151
- // Cursor: cache the assistant text as soon as it exists (afterAgentResponse →
152
- // normalized "Stop"), so the pairing below and the NEXT turn's priorAssistant
153
- // both see it. Then read the cached turn for this conversation.
154
123
  if (agentName === "cursor" &&
155
124
  hookEventName === "Stop" &&
156
125
  typeof event.text === "string" &&
157
126
  event.text)
158
127
  await rememberAssistant(event.session_id, event.text);
159
128
  const cursorTurn = agentName === "cursor" ? await readTurn(event.session_id) : null;
160
- // Stop backstop: surface the Glen review link if the finished assistant turn
161
- // printed a GitHub PR URL whose review link isn't already present. DEFERRED
162
- // (not written here) so a Stop turn writes AT MOST ONE JSON object — codex
163
- // rejects multiple JSON docs on stdout and drops all context. emitStop() folds
164
- // it together with any agent-facing hint at each Stop exit. Both agents need
165
- // the envelope on Stop (plain stdout is debug-only there).
129
+ // Deferred so a Stop turn writes at most one JSON object: codex drops all context when stdout has several.
166
130
  const stopReviewHint = hookEventName === "Stop"
167
131
  ? (() => {
168
132
  const assistantText = agentName === "codex"
@@ -185,12 +149,9 @@ const ingest = async (agent) => {
185
149
  return `${links}\nSurface the Glen review link alongside the GitHub PR link.`;
186
150
  })()
187
151
  : "";
188
- // Single Stop writer: ONE enveloped JSON object carrying the deferred review
189
- // hint plus any agent-facing text (writes nothing when both are empty). Used
190
- // at every Stop exit so the Stop path never writes more than one JSON object.
191
152
  const emitStop = (hint) => {
192
153
  if (agentName === "cursor" || agentName === "jcode")
193
- return; // no ingest output channel
154
+ return;
194
155
  const combined = [stopReviewHint, hint].filter(Boolean).join("\n\n");
195
156
  if (!combined)
196
157
  return;
@@ -201,14 +162,8 @@ const ingest = async (agent) => {
201
162
  },
202
163
  }));
203
164
  };
204
- // Route agent-facing hints. On Stop a persistent-condition hint (outdated
205
- // CLI / expired key / no org) must NEVER be injected: Claude Code feeds a
206
- // Stop hook's additionalContext back to the model and grants it another
207
- // turn, and while the condition persists every follow-up Stop re-injects
208
- // the same hint — the agent can never stop (the observed "Standing by."
209
- // loop on an outdated CLI). On Stop the hint goes to stderr instead and the
210
- // deferred review backstop still flushes; the next UserPromptSubmit
211
- // re-emits the hint at a point where the agent can actually act on it.
165
+ // On Stop a persistent hint (outdated CLI, expired key, no org) goes to stderr, never the model:
166
+ // Claude re-wakes the agent on Stop context, so it would loop forever.
212
167
  const emitHint = (text) => {
213
168
  if (hookEventName === "Stop") {
214
169
  process.stderr.write(`${text}\n`);
@@ -217,21 +172,14 @@ const ingest = async (agent) => {
217
172
  else
218
173
  emit(text);
219
174
  };
220
- // Resolve the cwd from the event (hook provides it) or fall back.
221
175
  const eventCwd = typeof event.cwd === "string"
222
176
  ? event.cwd
223
177
  : Array.isArray(event.workspace_roots) &&
224
178
  typeof event.workspace_roots[0] === "string"
225
179
  ? event.workspace_roots[0]
226
180
  : process.cwd();
227
- // Record cwd → session id so `glen search` (which gets no session id) can attribute
228
- // its searches to this conversation. Best-effort.
229
181
  await recordSession(eventCwd, event.session_id);
230
- // Adapt the event based on agent type.
231
182
  const adapted = adaptAgentEvent(agentName, event, transcriptLines);
232
- // For codex/pi without a transcript, derive idempotency from event.turn_id
233
- // when available; otherwise fall back to parseTranscript's
234
- // nextUserMessageIndex.
235
183
  const nextUserMessageIndex = agentName === "cursor"
236
184
  ? typeof event.generation_id === "string" && event.generation_id
237
185
  ? event.generation_id
@@ -244,15 +192,12 @@ const ingest = async (agent) => {
244
192
  ? event.turn_id
245
193
  : transcript.nextUserMessageIndex
246
194
  : transcript.nextUserMessageIndex;
247
- // Assemble additionalContext. Apply the empty-context rule: send undefined
248
- // when the object would be completely empty ({}).
249
195
  const workspaceCtx = gitContext(eventCwd);
250
196
  const hasSessionFields = Object.keys(adapted.sessionFields).length > 0;
251
197
  const additionalContext = (() => {
252
198
  const ctx = {};
253
199
  if (agentName)
254
200
  ctx.agent = { name: agentName };
255
- // workspace: always include if we have at least cwd
256
201
  if (Object.keys(workspaceCtx).length > 0)
257
202
  ctx.workspace = workspaceCtx;
258
203
  if (hasSessionFields)
@@ -292,28 +237,25 @@ const ingest = async (agent) => {
292
237
  })
293
238
  : null
294
239
  : agentName === "pi" || agentName === "jcode"
295
- ? // Pi and jcode Stop events carry the completed turn inline (pi:
296
- // the extension pairs prompt + final text; jcode:
297
- // readJcodeStopEvent pairs them from the session file).
298
- typeof event.prompt === "string" &&
299
- event.prompt &&
300
- typeof event.text === "string" &&
301
- event.text
302
- ? buildTurnBody({
303
- sessionId: event.session_id,
304
- nextUserMessageIndex: `stop:${typeof event.turn_id === "string" && event.turn_id
305
- ? event.turn_id
306
- : "0"}`,
307
- messages: [
308
- { role: "user", content: event.prompt },
309
- { role: "assistant", content: event.text },
310
- ],
311
- ...(additionalContext !== undefined
312
- ? { additionalContext }
313
- : {}),
314
- hookEvent: "Stop",
315
- })
316
- : null
240
+ ? typeof event.prompt === "string" &&
241
+ event.prompt &&
242
+ typeof event.text === "string" &&
243
+ event.text
244
+ ? buildTurnBody({
245
+ sessionId: event.session_id,
246
+ nextUserMessageIndex: `stop:${typeof event.turn_id === "string" && event.turn_id
247
+ ? event.turn_id
248
+ : "0"}`,
249
+ messages: [
250
+ { role: "user", content: event.prompt },
251
+ { role: "assistant", content: event.text },
252
+ ],
253
+ ...(additionalContext !== undefined
254
+ ? { additionalContext }
255
+ : {}),
256
+ hookEvent: "Stop",
257
+ })
258
+ : null
317
259
  : (() => {
318
260
  if (!transcript.completedTurn)
319
261
  return null;
@@ -351,9 +293,7 @@ const ingest = async (agent) => {
351
293
  nextUserMessageIndex,
352
294
  ...(additionalContext !== undefined ? { additionalContext } : {}),
353
295
  });
354
- // Cursor: remember the prompt so afterAgentResponse can pair it. AFTER the
355
- // body build (which consumed the PREVIOUS turn's cached assistant as
356
- // priorAssistant) — rememberPrompt clears the cached assistant.
296
+ // Must run after the body build: rememberPrompt clears the cached assistant used as priorAssistant.
357
297
  if (agentName === "cursor" && hookEventName !== "Stop")
358
298
  await rememberPrompt(event.session_id, event.prompt);
359
299
  if (!body) {
@@ -381,10 +321,7 @@ const ingest = async (agent) => {
381
321
  return ok(undefined);
382
322
  }
383
323
  if (res.value.status === 426) {
384
- // Server-forced minimum version: NEVER update synchronously inside a hook
385
- // (Claude's 60s timeout would kill it) — background update + hint instead.
386
- // When the spawn is gated (auto-update disabled / not npm-global) nothing
387
- // is updating, so tell the agent the user must update manually.
324
+ // Never update synchronously inside a hook: Claude's 60s timeout would kill it.
388
325
  await recordHeartbeatOutcome(heartbeatAgent, "426");
389
326
  const spawned = handle426InHook();
390
327
  emitHint(spawned
@@ -395,14 +332,11 @@ const ingest = async (agent) => {
395
332
  if (res.value.status === 401 || res.value.status === 403) {
396
333
  await recordHeartbeatOutcome(heartbeatAgent, "auth");
397
334
  if (res.value.rawText.includes("no active organization")) {
398
- // Server reports no org bound — hint the user and fail open so the hook
399
- // never blocks the turn.
400
335
  process.stderr.write("[glen] no active organization — run `glen org switch`\n");
401
336
  emitHint("[glen] no active organization — run `glen org switch`");
402
337
  return ok(undefined);
403
338
  }
404
- // Expired/revoked key. Don't clear credentials here — a concurrent
405
- // `glen login` may have just saved a fresh key. Instruct the agent.
339
+ // Don't clear credentials here: a concurrent `glen login` may have just saved a fresh key.
406
340
  emitHint(`[glen] ACTION NEEDED: this machine's glen connection expired or was revoked — memories are NOT being captured. Tell the user to run \`glen login\` to reconnect.${updateAddendum()}`);
407
341
  return ok(undefined);
408
342
  }
@@ -412,18 +346,10 @@ const ingest = async (agent) => {
412
346
  }
413
347
  await recordIngestCaptureOutcome(event.session_id, "success");
414
348
  await recordHeartbeatOutcome(heartbeatAgent, "success");
415
- // Mirror the server-side recording preference (the source of truth) into
416
- // local state BEFORE rendering the state line, so a dashboard toggle shows up
417
- // on this machine on the very next turn.
418
349
  const syncedState = await syncModeFromServer(res.value.json);
419
350
  const effectiveState = syncedState ?? state;
420
- // Per-session state-line dedup: SessionStart already injected the state
421
- // line, so re-emit it here only when it CHANGES (org switch / mode flip
422
- // mid-session) — Codex renders every injected hook context as a visible
423
- // transcript card with no way to hide it, so an unchanged line every turn
424
- // is pure noise. Incognito is exempt and stays loud on every prompt: the
425
- // user must never forget nothing is being recorded. rememberStateLine
426
- // fails toward visibility (fs trouble → "changed").
351
+ // Re-emit the state line only when it changes: Codex shows every injection as a visible card.
352
+ // Incognito stays loud on every prompt.
427
353
  const stateLine = formatStateLine(effectiveState);
428
354
  const stateLineChanged = stateLine !== null && hookEventName !== "Stop"
429
355
  ? await rememberStateLine(event.session_id, stateLine)
@@ -1 +1 @@
1
- {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../src/commands/ingest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../src/commands/ingest.ts"],"names":[],"mappings":"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"}