@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.
- package/README.md +39 -27
- package/dist/_utils/agent-adapter.d.ts +0 -15
- package/dist/_utils/agent-adapter.js +0 -20
- package/dist/_utils/agent-adapter.js.map +1 -1
- package/dist/_utils/agents-table.js +1 -9
- package/dist/_utils/agents-table.js.map +1 -1
- package/dist/_utils/cli-error.js +0 -3
- package/dist/_utils/cli-error.js.map +1 -1
- package/dist/_utils/codex-app-server.js +0 -2
- package/dist/_utils/codex-app-server.js.map +1 -1
- package/dist/_utils/codex-hooks-merge.js +0 -11
- package/dist/_utils/codex-hooks-merge.js.map +1 -1
- package/dist/_utils/codex-hooks-setup.js +0 -18
- package/dist/_utils/codex-hooks-setup.js.map +1 -1
- package/dist/_utils/codex-paths.js +0 -3
- package/dist/_utils/codex-paths.js.map +1 -1
- package/dist/_utils/codex-repair-trace.js +0 -3
- package/dist/_utils/codex-repair-trace.js.map +1 -1
- package/dist/_utils/codex-trust-toml.js +1 -9
- package/dist/_utils/codex-trust-toml.js.map +1 -1
- package/dist/_utils/collect-import-files.js +0 -7
- package/dist/_utils/collect-import-files.js.map +1 -1
- package/dist/_utils/config.js +0 -4
- package/dist/_utils/config.js.map +1 -1
- package/dist/_utils/confirm.js +2 -10
- package/dist/_utils/confirm.js.map +1 -1
- package/dist/_utils/credentials.js +0 -3
- package/dist/_utils/credentials.js.map +1 -1
- package/dist/_utils/detect-transcript-format.js +0 -7
- package/dist/_utils/detect-transcript-format.js.map +1 -1
- package/dist/_utils/ensure-global-cli.d.ts +0 -12
- package/dist/_utils/ensure-global-cli.js +1 -28
- package/dist/_utils/ensure-global-cli.js.map +1 -1
- package/dist/_utils/ephemeral-session.js +3 -24
- package/dist/_utils/ephemeral-session.js.map +1 -1
- package/dist/_utils/extract-claude-segments.js +1 -5
- package/dist/_utils/extract-claude-segments.js.map +1 -1
- package/dist/_utils/extract-codex-segments.js +0 -9
- package/dist/_utils/extract-codex-segments.js.map +1 -1
- package/dist/_utils/extract-pi-segments.js +1 -5
- package/dist/_utils/extract-pi-segments.js.map +1 -1
- package/dist/_utils/find-bin.js +0 -8
- package/dist/_utils/find-bin.js.map +1 -1
- package/dist/_utils/format-search-result.js +3 -19
- package/dist/_utils/format-search-result.js.map +1 -1
- package/dist/_utils/format-turn-nudges.js +2 -20
- package/dist/_utils/format-turn-nudges.js.map +1 -1
- package/dist/_utils/git-context.d.ts +0 -2
- package/dist/_utils/git-context.js +1 -33
- package/dist/_utils/git-context.js.map +1 -1
- package/dist/_utils/git-hook-setup.js +0 -1
- package/dist/_utils/git-hook-setup.js.map +1 -1
- package/dist/_utils/glen-headers.js +1 -4
- package/dist/_utils/glen-headers.js.map +1 -1
- package/dist/_utils/http.js +1 -8
- package/dist/_utils/http.js.map +1 -1
- package/dist/_utils/idempotency-key.js +1 -4
- package/dist/_utils/idempotency-key.js.map +1 -1
- package/dist/_utils/indicator-app.js +4 -26
- package/dist/_utils/indicator-app.js.map +1 -1
- package/dist/_utils/indicator-health.js +0 -6
- package/dist/_utils/indicator-health.js.map +1 -1
- package/dist/_utils/ingest-diagnosis.js +0 -5
- package/dist/_utils/ingest-diagnosis.js.map +1 -1
- package/dist/_utils/ingest-heartbeat.js +1 -6
- package/dist/_utils/ingest-heartbeat.js.map +1 -1
- package/dist/_utils/install-receipt.js +0 -3
- package/dist/_utils/install-receipt.js.map +1 -1
- package/dist/_utils/jcode-bundle.js +0 -7
- package/dist/_utils/jcode-bundle.js.map +1 -1
- package/dist/_utils/jcode-event.js +2 -18
- package/dist/_utils/jcode-event.js.map +1 -1
- package/dist/_utils/jcode-hook-lines.js +1 -5
- package/dist/_utils/jcode-hook-lines.js.map +1 -1
- package/dist/_utils/jcode-hooks-toml.js +1 -9
- package/dist/_utils/jcode-hooks-toml.js.map +1 -1
- package/dist/_utils/jcode-paths.js +0 -3
- package/dist/_utils/jcode-paths.js.map +1 -1
- package/dist/_utils/jcode-setup.js +0 -7
- package/dist/_utils/jcode-setup.js.map +1 -1
- package/dist/_utils/jcode-skills-sync.js +1 -6
- package/dist/_utils/jcode-skills-sync.js.map +1 -1
- package/dist/_utils/login-check.js +1 -4
- package/dist/_utils/login-check.js.map +1 -1
- package/dist/_utils/managed-block.js +0 -4
- package/dist/_utils/managed-block.js.map +1 -1
- package/dist/_utils/normalize-boolean-flags.js +2 -7
- package/dist/_utils/normalize-boolean-flags.js.map +1 -1
- package/dist/_utils/open-browser.js +1 -3
- package/dist/_utils/open-browser.js.map +1 -1
- package/dist/_utils/parse-claude-transcript.js +4 -24
- package/dist/_utils/parse-claude-transcript.js.map +1 -1
- package/dist/_utils/parse-codex-transcript.js +1 -22
- package/dist/_utils/parse-codex-transcript.js.map +1 -1
- package/dist/_utils/parse-cursor-db.js +2 -21
- package/dist/_utils/parse-cursor-db.js.map +1 -1
- package/dist/_utils/parse-jcode-session.js +0 -15
- package/dist/_utils/parse-jcode-session.js.map +1 -1
- package/dist/_utils/parse-pi-transcript.js +1 -35
- package/dist/_utils/parse-pi-transcript.js.map +1 -1
- package/dist/_utils/parse-transcript.js +1 -9
- package/dist/_utils/parse-transcript.js.map +1 -1
- package/dist/_utils/plugin-status.js +0 -19
- package/dist/_utils/plugin-status.js.map +1 -1
- package/dist/_utils/post-route.js +0 -7
- package/dist/_utils/post-route.js.map +1 -1
- package/dist/_utils/pr-review-link.js +0 -2
- package/dist/_utils/pr-review-link.js.map +1 -1
- package/dist/_utils/proactive-ticket-log.js +1 -11
- package/dist/_utils/proactive-ticket-log.js.map +1 -1
- package/dist/_utils/record-commit-anchor.js +1 -8
- package/dist/_utils/record-commit-anchor.js.map +1 -1
- package/dist/_utils/refresh-control-state.js +1 -7
- package/dist/_utils/refresh-control-state.js.map +1 -1
- package/dist/_utils/render-callback-page.js +0 -7
- package/dist/_utils/render-callback-page.js.map +1 -1
- package/dist/_utils/resolve-import-workspace.d.ts +0 -7
- package/dist/_utils/resolve-import-workspace.js +1 -13
- package/dist/_utils/resolve-import-workspace.js.map +1 -1
- package/dist/_utils/run-bin.js +0 -2
- package/dist/_utils/run-bin.js.map +1 -1
- package/dist/_utils/session-map.js +0 -5
- package/dist/_utils/session-map.js.map +1 -1
- package/dist/_utils/shell-profile.js +1 -28
- package/dist/_utils/shell-profile.js.map +1 -1
- package/dist/_utils/state-line-memo.d.ts +0 -6
- package/dist/_utils/state-line-memo.js +3 -18
- package/dist/_utils/state-line-memo.js.map +1 -1
- package/dist/_utils/state-line.js +0 -4
- package/dist/_utils/state-line.js.map +1 -1
- package/dist/_utils/state.js +0 -5
- package/dist/_utils/state.js.map +1 -1
- package/dist/_utils/sync-mode-from-server.d.ts +0 -18
- package/dist/_utils/sync-mode-from-server.js +2 -21
- package/dist/_utils/sync-mode-from-server.js.map +1 -1
- package/dist/_utils/transcript-turns.js +1 -51
- package/dist/_utils/transcript-turns.js.map +1 -1
- package/dist/_utils/turn-cache.js +1 -8
- package/dist/_utils/turn-cache.js.map +1 -1
- package/dist/_utils/update.d.ts +0 -10
- package/dist/_utils/update.js +8 -30
- package/dist/_utils/update.js.map +1 -1
- package/dist/_utils/version.js +3 -6
- package/dist/_utils/version.js.map +1 -1
- package/dist/_utils/which.d.ts +0 -5
- package/dist/_utils/which.js +0 -5
- package/dist/_utils/which.js.map +1 -1
- package/dist/_utils/write-commit-trailer.js +1 -5
- package/dist/_utils/write-commit-trailer.js.map +1 -1
- package/dist/bin.js +6 -25
- package/dist/bin.js.map +1 -1
- package/dist/commands/_utils/materialize-skill.js +4 -34
- package/dist/commands/_utils/materialize-skill.js.map +1 -1
- package/dist/commands/_utils/pack-skill-dir.js +6 -27
- package/dist/commands/_utils/pack-skill-dir.js.map +1 -1
- package/dist/commands/artifact.js +2 -5
- package/dist/commands/artifact.js.map +1 -1
- package/dist/commands/code-search.js +0 -6
- package/dist/commands/code-search.js.map +1 -1
- package/dist/commands/doctor.d.ts +0 -17
- package/dist/commands/doctor.js +15 -79
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/feedback.js +2 -10
- package/dist/commands/feedback.js.map +1 -1
- package/dist/commands/git-hooks.js +0 -3
- package/dist/commands/git-hooks.js.map +1 -1
- package/dist/commands/import.js +5 -27
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/incognito.d.ts +0 -5
- package/dist/commands/incognito.js +0 -5
- package/dist/commands/incognito.js.map +1 -1
- package/dist/commands/indicator.d.ts +0 -1
- package/dist/commands/indicator.js +0 -1
- package/dist/commands/indicator.js.map +1 -1
- package/dist/commands/ingest.js +37 -111
- package/dist/commands/ingest.js.map +1 -1
- package/dist/commands/install.js +7 -93
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/invite.d.ts +0 -6
- package/dist/commands/invite.js +0 -16
- package/dist/commands/invite.js.map +1 -1
- package/dist/commands/login.js +0 -15
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/onboard.js +0 -6
- package/dist/commands/onboard.js.map +1 -1
- package/dist/commands/org.js +0 -2
- package/dist/commands/org.js.map +1 -1
- package/dist/commands/pr-link.js +2 -15
- package/dist/commands/pr-link.js.map +1 -1
- package/dist/commands/search.js +0 -5
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/session-start.d.ts +0 -21
- package/dist/commands/session-start.js +6 -65
- package/dist/commands/session-start.js.map +1 -1
- package/dist/commands/set-mode.d.ts +0 -6
- package/dist/commands/set-mode.js +2 -12
- package/dist/commands/set-mode.js.map +1 -1
- package/dist/commands/skill.js +5 -35
- package/dist/commands/skill.js.map +1 -1
- package/dist/commands/statusline.d.ts +0 -13
- package/dist/commands/statusline.js +0 -15
- package/dist/commands/statusline.js.map +1 -1
- package/dist/commands/suggestions.d.ts +0 -6
- package/dist/commands/suggestions.js +0 -7
- package/dist/commands/suggestions.js.map +1 -1
- package/dist/commands/takeover/_utils/agent-paths.js +2 -3
- package/dist/commands/takeover/_utils/agent-paths.js.map +1 -1
- package/dist/commands/takeover/_utils/cursor-store.js +1 -3
- package/dist/commands/takeover/_utils/cursor-store.js.map +1 -1
- package/dist/commands/takeover/_utils/write-codex-desktop-session.js +1 -4
- package/dist/commands/takeover/_utils/write-codex-desktop-session.js.map +1 -1
- package/dist/commands/takeover/_utils/write-codex-session.js +1 -2
- package/dist/commands/takeover/_utils/write-codex-session.js.map +1 -1
- package/dist/commands/uninstall.d.ts +0 -1
- package/dist/commands/uninstall.js +3 -7
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/commands/update.d.ts +0 -10
- package/dist/commands/update.js +4 -32
- package/dist/commands/update.js.map +1 -1
- package/dist/jcode/plugin.json +1 -1
- 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
|
|
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":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAiB,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,mBAAmB,EACnB,eAAe,GAChB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAe,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AAExE,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAC;AAErD,MAAM,cAAc,GAAG,KAAK,IAAqC,EAAE;IACjE,MAAM,UAAU,GAAG,mBAAmB,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,OAAO,CAAC,EAAE;QACb,OAAO,GAAG,CACR,MAAM,CAAC;YACL,IAAI,EAAE,qDAAqD;YAC3D,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,wDAAwD;SACjE,CAAC,CACH,CAAC;IAEJ,MAAM,UAAU,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAC7C,IAAI,CAAC,UAAU,CAAC,EAAE;QAChB,OAAO,GAAG,CACR,MAAM,CAAC;YACL,IAAI,EAAE,uDAAuD;YAC7D,GAAG,EAAE,UAAU,CAAC,KAAK;YACrB,MAAM,EACJ,gEAAgE;SACnE,CAAC,CACH,CAAC;IAEJ,MAAM,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gFAAgF,CACjF,CAAC;IACF,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,KAAK,IAAqC,EAAE;IAChE,MAAM,OAAO,GAAG,MAAM,mBAAmB,EAAE,CAAC;IAC5C,IAAI,CAAC,OAAO,CAAC,EAAE;QACb,OAAO,GAAG,CACR,MAAM,CAAC;YACL,IAAI,EAAE,gDAAgD;YACtD,GAAG,EAAE,OAAO,CAAC,KAAK;YAClB,MAAM,EACJ,mEAAmE;SACtE,CAAC,CACH,CAAC;IACJ,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,yEAAyE,CAC1E,CAAC;IACF,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,KAAK,IAAqC,EAAE;IAClE,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IACnC,MAAM,MAAM,GAAG,MAAM,mBAAmB,EAAE,CAAC;IAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gBAAgB,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,IAAI;QAC3D,iBAAiB,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CACxD,CAAC;IACF,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;AACvB,CAAC,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"indicator.js","sourceRoot":"","sources":["../../src/commands/indicator.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/ingest.js
CHANGED
|
@@ -31,9 +31,7 @@ const readStdin = async () => {
|
|
|
31
31
|
chunks.push(chunk);
|
|
32
32
|
return Buffer.concat(chunks).toString("utf8");
|
|
33
33
|
};
|
|
34
|
-
//
|
|
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:
|
|
50
|
-
//
|
|
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
|
-
//
|
|
95
|
-
//
|
|
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
|
-
//
|
|
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
|
-
//
|
|
106
|
-
//
|
|
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;
|
|
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
|
|
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;
|
|
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
|
-
//
|
|
205
|
-
//
|
|
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
|
-
?
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
event.
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
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
|
-
//
|
|
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
|
-
//
|
|
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
|
-
//
|
|
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
|
-
//
|
|
421
|
-
//
|
|
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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"}
|