@tryglen/cli 0.37.1 → 0.38.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 +21 -4
- package/dist/_generated/contract/index.js +3 -0
- package/dist/_generated/contract/index.js.map +1 -0
- package/dist/_generated/contract/procedures.gen.js +34 -0
- package/dist/_generated/contract/procedures.gen.js.map +1 -0
- package/dist/_generated/contract/types.gen.js +3 -0
- package/dist/_generated/contract/types.gen.js.map +1 -0
- package/dist/_generated/contract/zod.gen.js +799 -0
- package/dist/_generated/contract/zod.gen.js.map +1 -0
- package/dist/bin.js +137 -560
- package/dist/bin.js.map +1 -1
- package/dist/clients/agents/agent-bin.js +67 -0
- package/dist/clients/agents/agent-bin.js.map +1 -0
- package/dist/clients/agents/agent-path-overrides.js +23 -0
- package/dist/clients/agents/agent-path-overrides.js.map +1 -0
- package/dist/clients/agents/agents-table.js +91 -0
- package/dist/clients/agents/agents-table.js.map +1 -0
- package/dist/{_utils → clients/agents}/managed-block.js +8 -4
- package/dist/clients/agents/managed-block.js.map +1 -0
- package/dist/clients/agents/normalize-transcript-timestamp.js.map +1 -0
- package/dist/clients/agents/plugin-status.js +74 -0
- package/dist/clients/agents/plugin-status.js.map +1 -0
- package/dist/clients/agents/run-agent-steps.js +21 -0
- package/dist/clients/agents/run-agent-steps.js.map +1 -0
- package/dist/{_utils → clients/claude}/extract-claude-segments.js +9 -5
- package/dist/clients/claude/extract-claude-segments.js.map +1 -0
- package/dist/clients/claude/parse-claude-transcript.js +114 -0
- package/dist/clients/claude/parse-claude-transcript.js.map +1 -0
- package/dist/clients/codex/codex-app-server.js +102 -0
- package/dist/clients/codex/codex-app-server.js.map +1 -0
- package/dist/clients/codex/codex-hooks-file.js +65 -0
- package/dist/clients/codex/codex-hooks-file.js.map +1 -0
- package/dist/clients/codex/codex-hooks-merge.js +9 -0
- package/dist/clients/codex/codex-hooks-merge.js.map +1 -0
- package/dist/clients/codex/codex-hooks-setup.js +167 -0
- package/dist/clients/codex/codex-hooks-setup.js.map +1 -0
- package/dist/clients/codex/codex-paths.js +13 -0
- package/dist/clients/codex/codex-paths.js.map +1 -0
- package/dist/clients/codex/codex-repair-trace.js +36 -0
- package/dist/clients/codex/codex-repair-trace.js.map +1 -0
- package/dist/clients/codex/codex-rules-setup.js +27 -0
- package/dist/clients/codex/codex-rules-setup.js.map +1 -0
- package/dist/{_utils → clients/codex}/codex-trust-toml.js +6 -5
- package/dist/clients/codex/codex-trust-toml.js.map +1 -0
- package/dist/clients/codex/extract-codex-segments.js +64 -0
- package/dist/clients/codex/extract-codex-segments.js.map +1 -0
- package/dist/clients/codex/parse-codex-transcript.js +123 -0
- package/dist/clients/codex/parse-codex-transcript.js.map +1 -0
- package/dist/clients/cursor/parse-cursor-db.js +185 -0
- package/dist/clients/cursor/parse-cursor-db.js.map +1 -0
- package/dist/clients/git/canonical-remote-url.js +13 -0
- package/dist/clients/git/canonical-remote-url.js.map +1 -0
- package/dist/clients/git/git-context.js +60 -0
- package/dist/clients/git/git-context.js.map +1 -0
- package/dist/clients/git/git-hook-setup.js +128 -0
- package/dist/clients/git/git-hook-setup.js.map +1 -0
- package/dist/{_utils → clients/git}/pr-review-link.js +5 -4
- package/dist/clients/git/pr-review-link.js.map +1 -0
- package/dist/clients/glen-api/config.js +11 -0
- package/dist/clients/glen-api/config.js.map +1 -0
- package/dist/clients/glen-api/glen-api.js +199 -0
- package/dist/clients/glen-api/glen-api.js.map +1 -0
- package/dist/{_utils → clients/glen-api}/glen-headers.js +1 -1
- package/dist/clients/glen-api/glen-headers.js.map +1 -0
- package/dist/clients/glen-api/refresh-control-state.js +18 -0
- package/dist/clients/glen-api/refresh-control-state.js.map +1 -0
- package/dist/clients/glen-api/report-cli-install.js +20 -0
- package/dist/clients/glen-api/report-cli-install.js.map +1 -0
- package/dist/clients/glen-api/sync-mode-from-server.js +45 -0
- package/dist/clients/glen-api/sync-mode-from-server.js.map +1 -0
- package/dist/clients/indicator/indicator-app.js +127 -0
- package/dist/clients/indicator/indicator-app.js.map +1 -0
- package/dist/clients/indicator/indicator-health.js +40 -0
- package/dist/clients/indicator/indicator-health.js.map +1 -0
- package/dist/clients/jcode/jcode-bundle.js +19 -0
- package/dist/clients/jcode/jcode-bundle.js.map +1 -0
- package/dist/clients/jcode/jcode-event.js +74 -0
- package/dist/clients/jcode/jcode-event.js.map +1 -0
- package/dist/{_utils → clients/jcode}/jcode-hook-lines.js +1 -1
- package/dist/clients/jcode/jcode-hook-lines.js.map +1 -0
- package/dist/{_utils → clients/jcode}/jcode-hooks-toml.js +21 -29
- package/dist/clients/jcode/jcode-hooks-toml.js.map +1 -0
- package/dist/clients/jcode/jcode-paths.js +14 -0
- package/dist/clients/jcode/jcode-paths.js.map +1 -0
- package/dist/clients/jcode/jcode-setup.js +148 -0
- package/dist/clients/jcode/jcode-setup.js.map +1 -0
- package/dist/clients/jcode/jcode-skills-sync.js +84 -0
- package/dist/clients/jcode/jcode-skills-sync.js.map +1 -0
- package/dist/{_utils → clients/jcode}/parse-jcode-session.js +38 -35
- package/dist/clients/jcode/parse-jcode-session.js.map +1 -0
- package/dist/clients/npm/semver-newer.js +8 -0
- package/dist/clients/npm/semver-newer.js.map +1 -0
- package/dist/clients/npm/update.js +147 -0
- package/dist/clients/npm/update.js.map +1 -0
- package/dist/{_utils → clients/pi}/extract-pi-segments.js +7 -3
- package/dist/clients/pi/extract-pi-segments.js.map +1 -0
- package/dist/clients/pi/parse-pi-transcript.js +149 -0
- package/dist/clients/pi/parse-pi-transcript.js.map +1 -0
- package/dist/clients/telemetry/send-events.js +32 -0
- package/dist/clients/telemetry/send-events.js.map +1 -0
- package/dist/commands/_utils/forget-or-restore-observation-or-message.js +41 -0
- package/dist/commands/_utils/forget-or-restore-observation-or-message.js.map +1 -0
- package/dist/commands/artifact/_utils/explain-artifact-error.js +31 -0
- package/dist/commands/artifact/_utils/explain-artifact-error.js.map +1 -0
- package/dist/commands/artifact/_utils/require-slug.js +14 -0
- package/dist/commands/artifact/_utils/require-slug.js.map +1 -0
- package/dist/commands/artifact/artifact.options.js +43 -0
- package/dist/commands/artifact/artifact.options.js.map +1 -0
- package/dist/commands/artifact/create.js +87 -0
- package/dist/commands/artifact/create.js.map +1 -0
- package/dist/commands/artifact/delete.js +18 -0
- package/dist/commands/artifact/delete.js.map +1 -0
- package/dist/commands/artifact/get.js +21 -0
- package/dist/commands/artifact/get.js.map +1 -0
- package/dist/commands/artifact/list.js +4 -0
- package/dist/commands/artifact/list.js.map +1 -0
- package/dist/commands/artifact/search.js +25 -0
- package/dist/commands/artifact/search.js.map +1 -0
- package/dist/commands/artifact/share.js +42 -0
- package/dist/commands/artifact/share.js.map +1 -0
- package/dist/commands/code-search/code-search.options.js +10 -0
- package/dist/commands/code-search/code-search.options.js.map +1 -0
- package/dist/commands/code-search/index.js +106 -0
- package/dist/commands/code-search/index.js.map +1 -0
- package/dist/commands/dependency/dependency.options.js +10 -0
- package/dist/commands/dependency/dependency.options.js.map +1 -0
- package/dist/commands/dependency/index.js +25 -0
- package/dist/commands/dependency/index.js.map +1 -0
- package/dist/{_utils → commands/doctor/_utils}/ingest-diagnosis.js +16 -17
- package/dist/commands/doctor/_utils/ingest-diagnosis.js.map +1 -0
- package/dist/commands/doctor/_utils/login-check.js +48 -0
- package/dist/commands/doctor/_utils/login-check.js.map +1 -0
- package/dist/commands/doctor/doctor.options.js +17 -0
- package/dist/commands/doctor/doctor.options.js.map +1 -0
- package/dist/commands/doctor/index.js +366 -0
- package/dist/commands/doctor/index.js.map +1 -0
- package/dist/commands/feedback/feedback.options.js +82 -0
- package/dist/commands/feedback/feedback.options.js.map +1 -0
- package/dist/commands/feedback/index.js +64 -0
- package/dist/commands/feedback/index.js.map +1 -0
- package/dist/commands/forget/forget.options.js +12 -0
- package/dist/commands/forget/forget.options.js.map +1 -0
- package/dist/commands/forget/index.js +30 -0
- package/dist/commands/forget/index.js.map +1 -0
- package/dist/commands/git-hooks/git-hooks.options.js +17 -0
- package/dist/commands/git-hooks/git-hooks.options.js.map +1 -0
- package/dist/commands/git-hooks/index.js +21 -0
- package/dist/commands/git-hooks/index.js.map +1 -0
- package/dist/commands/git-hooks/write-commit-trailer.js +38 -0
- package/dist/commands/git-hooks/write-commit-trailer.js.map +1 -0
- package/dist/commands/import/_utils/collect-import-files.js +54 -0
- package/dist/commands/import/_utils/collect-import-files.js.map +1 -0
- package/dist/commands/import/_utils/detect-transcript-format.js +46 -0
- package/dist/commands/import/_utils/detect-transcript-format.js.map +1 -0
- package/dist/{_utils → commands/import/_utils}/parse-harbor-atif.js +28 -51
- package/dist/commands/import/_utils/parse-harbor-atif.js.map +1 -0
- package/dist/{_utils → commands/import/_utils}/resolve-import-workspace.js +12 -17
- package/dist/commands/import/_utils/resolve-import-workspace.js.map +1 -0
- package/dist/{_utils → commands/import/_utils}/transcript-turns.js +47 -52
- package/dist/commands/import/_utils/transcript-turns.js.map +1 -0
- package/dist/commands/import/import.options.js +18 -0
- package/dist/commands/import/import.options.js.map +1 -0
- package/dist/commands/import/import.schema.js +28 -0
- package/dist/commands/import/import.schema.js.map +1 -0
- package/dist/commands/import/index.js +284 -0
- package/dist/commands/import/index.js.map +1 -0
- package/dist/commands/incognito/incognito.options.js +7 -0
- package/dist/commands/incognito/incognito.options.js.map +1 -0
- package/dist/commands/incognito/index.js +5 -0
- package/dist/commands/incognito/index.js.map +1 -0
- package/dist/commands/indicator/index.js +59 -0
- package/dist/commands/indicator/index.js.map +1 -0
- package/dist/commands/indicator/indicator.options.js +7 -0
- package/dist/commands/indicator/indicator.options.js.map +1 -0
- package/dist/commands/ingest/_utils/agent-adapter.js +37 -0
- package/dist/commands/ingest/_utils/agent-adapter.js.map +1 -0
- package/dist/{_utils → commands/ingest/_utils}/build-turn-body.js +8 -6
- package/dist/commands/ingest/_utils/build-turn-body.js.map +1 -0
- package/dist/{_utils → commands/ingest/_utils}/format-turn-nudges.js +14 -31
- package/dist/commands/ingest/_utils/format-turn-nudges.js.map +1 -0
- package/dist/commands/ingest/_utils/idempotency-key.js +4 -0
- package/dist/commands/ingest/_utils/idempotency-key.js.map +1 -0
- package/dist/commands/ingest/_utils/ingest-failure-memo.js +58 -0
- package/dist/commands/ingest/_utils/ingest-failure-memo.js.map +1 -0
- package/dist/commands/ingest/_utils/parse-transcript.js +76 -0
- package/dist/commands/ingest/_utils/parse-transcript.js.map +1 -0
- package/dist/commands/ingest/_utils/turn-cache.js +73 -0
- package/dist/commands/ingest/_utils/turn-cache.js.map +1 -0
- package/dist/commands/ingest/index.js +379 -0
- package/dist/commands/ingest/index.js.map +1 -0
- package/dist/commands/ingest/ingest.options.js +13 -0
- package/dist/commands/ingest/ingest.options.js.map +1 -0
- package/dist/commands/install/_utils/claude-statusline.js +58 -0
- package/dist/commands/install/_utils/claude-statusline.js.map +1 -0
- package/dist/commands/install/_utils/codex-post-install.js +56 -0
- package/dist/commands/install/_utils/codex-post-install.js.map +1 -0
- package/dist/{_utils → commands/install/_utils}/ensure-global-cli.js +49 -52
- package/dist/commands/install/_utils/ensure-global-cli.js.map +1 -0
- package/dist/commands/install/_utils/finish-install.js +67 -0
- package/dist/commands/install/_utils/finish-install.js.map +1 -0
- package/dist/commands/install/_utils/jcode-install.js +29 -0
- package/dist/commands/install/_utils/jcode-install.js.map +1 -0
- package/dist/{_utils → commands/install/_utils}/npm-error-cause.js +1 -2
- package/dist/commands/install/_utils/npm-error-cause.js.map +1 -0
- package/dist/commands/install/_utils/prepare-machine.js +85 -0
- package/dist/commands/install/_utils/prepare-machine.js.map +1 -0
- package/dist/commands/install/codex-hooks-repair.js +17 -0
- package/dist/commands/install/codex-hooks-repair.js.map +1 -0
- package/dist/commands/install/index.js +186 -0
- package/dist/commands/install/index.js.map +1 -0
- package/dist/commands/install/install.options.js +41 -0
- package/dist/commands/install/install.options.js.map +1 -0
- package/dist/commands/invite/index.js +47 -0
- package/dist/commands/invite/index.js.map +1 -0
- package/dist/commands/invite/invite.options.js +24 -0
- package/dist/commands/invite/invite.options.js.map +1 -0
- package/dist/commands/login/_utils/open-browser.js +9 -0
- package/dist/commands/login/_utils/open-browser.js.map +1 -0
- package/dist/commands/login/_utils/parse-start.js +25 -0
- package/dist/commands/login/_utils/parse-start.js.map +1 -0
- package/dist/commands/login/_utils/poll-for-approval.js +55 -0
- package/dist/commands/login/_utils/poll-for-approval.js.map +1 -0
- package/dist/commands/login/index.js +101 -0
- package/dist/commands/login/index.js.map +1 -0
- package/dist/commands/login/login.options.js +12 -0
- package/dist/commands/login/login.options.js.map +1 -0
- package/dist/commands/logout/index.js +16 -0
- package/dist/commands/logout/index.js.map +1 -0
- package/dist/commands/logout/logout.options.js +4 -0
- package/dist/commands/logout/logout.options.js.map +1 -0
- package/dist/commands/onboard/index.js +20 -0
- package/dist/commands/onboard/index.js.map +1 -0
- package/dist/commands/org/_utils/apply-switch.js +37 -0
- package/dist/commands/org/_utils/apply-switch.js.map +1 -0
- package/dist/commands/org/_utils/fetch-orgs.js +19 -0
- package/dist/commands/org/_utils/fetch-orgs.js.map +1 -0
- package/dist/commands/org/list.js +14 -0
- package/dist/commands/org/list.js.map +1 -0
- package/dist/commands/org/org.options.js +10 -0
- package/dist/commands/org/org.options.js.map +1 -0
- package/dist/commands/org/switch.js +37 -0
- package/dist/commands/org/switch.js.map +1 -0
- package/dist/commands/pr-link/_utils/is-commit-command.js +14 -0
- package/dist/commands/pr-link/_utils/is-commit-command.js.map +1 -0
- package/dist/commands/pr-link/_utils/record-commit-anchor.js +46 -0
- package/dist/commands/pr-link/_utils/record-commit-anchor.js.map +1 -0
- package/dist/commands/pr-link/index.js +74 -0
- package/dist/commands/pr-link/index.js.map +1 -0
- package/dist/commands/pr-link/pr-link.options.js +13 -0
- package/dist/commands/pr-link/pr-link.options.js.map +1 -0
- package/dist/commands/restore/index.js +27 -0
- package/dist/commands/restore/index.js.map +1 -0
- package/dist/commands/restore/restore.options.js +12 -0
- package/dist/commands/restore/restore.options.js.map +1 -0
- package/dist/{_utils → commands/search/_utils}/format-search-result.js +5 -4
- package/dist/commands/search/_utils/format-search-result.js.map +1 -0
- package/dist/commands/search/_utils/runtime-timezone.js +12 -0
- package/dist/commands/search/_utils/runtime-timezone.js.map +1 -0
- package/dist/commands/search/index.js +36 -0
- package/dist/commands/search/index.js.map +1 -0
- package/dist/commands/search/search.options.js +7 -0
- package/dist/commands/search/search.options.js.map +1 -0
- package/dist/commands/session-start/index.js +119 -0
- package/dist/commands/session-start/index.js.map +1 -0
- package/dist/commands/session-start/session-start.options.js +13 -0
- package/dist/commands/session-start/session-start.options.js.map +1 -0
- package/dist/commands/set-mode/index.js +38 -0
- package/dist/commands/set-mode/index.js.map +1 -0
- package/dist/commands/set-mode/set-mode.options.js +8 -0
- package/dist/commands/set-mode/set-mode.options.js.map +1 -0
- package/dist/commands/skill/_utils/download-file.js +28 -0
- package/dist/commands/skill/_utils/download-file.js.map +1 -0
- package/dist/commands/skill/_utils/explain-skill-error.js +31 -0
- package/dist/commands/skill/_utils/explain-skill-error.js.map +1 -0
- package/dist/commands/skill/_utils/skill-cache.js +136 -0
- package/dist/commands/skill/_utils/skill-cache.js.map +1 -0
- package/dist/commands/skill/create/_utils/pack-skill-dir.js +160 -0
- package/dist/commands/skill/create/_utils/pack-skill-dir.js.map +1 -0
- package/dist/commands/skill/create/index.js +108 -0
- package/dist/commands/skill/create/index.js.map +1 -0
- package/dist/commands/skill/search.js +38 -0
- package/dist/commands/skill/search.js.map +1 -0
- package/dist/commands/skill/share.js +52 -0
- package/dist/commands/skill/share.js.map +1 -0
- package/dist/commands/skill/skill.options.js +58 -0
- package/dist/commands/skill/skill.options.js.map +1 -0
- package/dist/commands/skill/use.js +72 -0
- package/dist/commands/skill/use.js.map +1 -0
- package/dist/commands/status/index.js +33 -0
- package/dist/commands/status/index.js.map +1 -0
- package/dist/commands/status/status.options.js +4 -0
- package/dist/commands/status/status.options.js.map +1 -0
- package/dist/commands/statusline/index.js +33 -0
- package/dist/commands/statusline/index.js.map +1 -0
- package/dist/commands/statusline/statusline.options.js +4 -0
- package/dist/commands/statusline/statusline.options.js.map +1 -0
- package/dist/commands/suggestions/index.js +36 -0
- package/dist/commands/suggestions/index.js.map +1 -0
- package/dist/commands/suggestions/suggestions.options.js +12 -0
- package/dist/commands/suggestions/suggestions.options.js.map +1 -0
- package/dist/commands/takeover/_utils/agent-paths.js +13 -7
- package/dist/commands/takeover/_utils/agent-paths.js.map +1 -1
- package/dist/commands/takeover/_utils/agent-process.js +111 -0
- package/dist/commands/takeover/_utils/agent-process.js.map +1 -0
- package/dist/commands/takeover/_utils/archive-codex-desktop-thread.js +17 -58
- package/dist/commands/takeover/_utils/archive-codex-desktop-thread.js.map +1 -1
- package/dist/commands/takeover/_utils/canonical-digest.js +2 -2
- package/dist/commands/takeover/_utils/canonical-digest.js.map +1 -1
- package/dist/commands/takeover/_utils/codex-desktop-recovery.js +77 -95
- package/dist/commands/takeover/_utils/codex-desktop-recovery.js.map +1 -1
- package/dist/commands/takeover/_utils/context-fit.js +7 -4
- package/dist/commands/takeover/_utils/context-fit.js.map +1 -1
- package/dist/commands/takeover/_utils/cursor-store.js +333 -281
- package/dist/commands/takeover/_utils/cursor-store.js.map +1 -1
- package/dist/commands/takeover/_utils/import-codex-desktop-thread.js +138 -282
- package/dist/commands/takeover/_utils/import-codex-desktop-thread.js.map +1 -1
- package/dist/commands/takeover/_utils/launch-desktop-url.js +19 -24
- package/dist/commands/takeover/_utils/launch-desktop-url.js.map +1 -1
- package/dist/commands/takeover/_utils/native-file.js +86 -73
- package/dist/commands/takeover/_utils/native-file.js.map +1 -1
- package/dist/commands/takeover/_utils/probe-agent.js +12 -9
- package/dist/commands/takeover/_utils/probe-agent.js.map +1 -1
- package/dist/commands/takeover/_utils/staged-session.js +18 -17
- package/dist/commands/takeover/_utils/staged-session.js.map +1 -1
- package/dist/commands/takeover/_utils/write-claude-session.js +10 -13
- package/dist/commands/takeover/_utils/write-claude-session.js.map +1 -1
- package/dist/commands/takeover/_utils/write-codex-desktop-session.js +39 -37
- package/dist/commands/takeover/_utils/write-codex-desktop-session.js.map +1 -1
- package/dist/commands/takeover/_utils/write-codex-session.js +34 -25
- package/dist/commands/takeover/_utils/write-codex-session.js.map +1 -1
- package/dist/commands/takeover/_utils/write-cursor-session.js +8 -19
- package/dist/commands/takeover/_utils/write-cursor-session.js.map +1 -1
- package/dist/commands/takeover/_utils/write-pi-session.js +34 -22
- package/dist/commands/takeover/_utils/write-pi-session.js.map +1 -1
- package/dist/commands/takeover/index.js +129 -164
- package/dist/commands/takeover/index.js.map +1 -1
- package/dist/commands/takeover/takeover.options.js +6 -0
- package/dist/commands/takeover/takeover.options.js.map +1 -0
- package/dist/commands/takeover/takeover.schema.js +17 -55
- package/dist/commands/takeover/takeover.schema.js.map +1 -1
- package/dist/commands/telemetry/index.js +33 -0
- package/dist/commands/telemetry/index.js.map +1 -0
- package/dist/commands/telemetry/send.js +7 -0
- package/dist/commands/telemetry/send.js.map +1 -0
- package/dist/commands/telemetry/telemetry.options.js +12 -0
- package/dist/commands/telemetry/telemetry.options.js.map +1 -0
- package/dist/commands/uninstall/_utils/purge-agent-plugins.js +58 -0
- package/dist/commands/uninstall/_utils/purge-agent-plugins.js.map +1 -0
- package/dist/commands/uninstall/_utils/purge-claude-statusline.js +51 -0
- package/dist/commands/uninstall/_utils/purge-claude-statusline.js.map +1 -0
- package/dist/commands/uninstall/_utils/purge-local-state.js +52 -0
- package/dist/commands/uninstall/_utils/purge-local-state.js.map +1 -0
- package/dist/commands/uninstall/index.js +138 -0
- package/dist/commands/uninstall/index.js.map +1 -0
- package/dist/commands/uninstall/uninstall.options.js +4 -0
- package/dist/commands/uninstall/uninstall.options.js.map +1 -0
- package/dist/commands/update/index.js +117 -0
- package/dist/commands/update/index.js.map +1 -0
- package/dist/commands/update/self-update.js +7 -0
- package/dist/commands/update/self-update.js.map +1 -0
- package/dist/commands/update/update.options.js +7 -0
- package/dist/commands/update/update.options.js.map +1 -0
- package/dist/core/errors/cli-error.js +28 -0
- package/dist/core/errors/cli-error.js.map +1 -0
- package/dist/core/errors/result.js +21 -0
- package/dist/core/errors/result.js.map +1 -0
- package/dist/core/errors/settle.js +18 -0
- package/dist/core/errors/settle.js.map +1 -0
- package/dist/core/json/is-record.js +3 -0
- package/dist/core/json/is-record.js.map +1 -0
- package/dist/core/json/json-field.js +5 -0
- package/dist/core/json/json-field.js.map +1 -0
- package/dist/core/json/jsonl-records.js +15 -0
- package/dist/core/json/jsonl-records.js.map +1 -0
- package/dist/core/json/parse-json.js +4 -0
- package/dist/core/json/parse-json.js.map +1 -0
- package/dist/core/run/cli-input.js +116 -0
- package/dist/core/run/cli-input.js.map +1 -0
- package/dist/core/run/hook-agents.js +4 -0
- package/dist/core/run/hook-agents.js.map +1 -0
- package/dist/{_utils → core/run}/normalize-boolean-flags.js +0 -1
- package/dist/core/run/normalize-boolean-flags.js.map +1 -0
- package/dist/core/run/run-hook.js +18 -0
- package/dist/core/run/run-hook.js.map +1 -0
- package/dist/core/run/run.js +16 -0
- package/dist/core/run/run.js.map +1 -0
- package/dist/core/state/credentials.js +34 -0
- package/dist/core/state/credentials.js.map +1 -0
- package/dist/core/state/ephemeral-session.js +11 -0
- package/dist/core/state/ephemeral-session.js.map +1 -0
- package/dist/core/state/glen-home.js +9 -0
- package/dist/core/state/glen-home.js.map +1 -0
- package/dist/core/state/ingest-heartbeat.js +56 -0
- package/dist/core/state/ingest-heartbeat.js.map +1 -0
- package/dist/core/state/install-receipt.js +174 -0
- package/dist/core/state/install-receipt.js.map +1 -0
- package/dist/core/state/session-map.js +22 -0
- package/dist/core/state/session-map.js.map +1 -0
- package/dist/core/state/state-line-memo.js +52 -0
- package/dist/core/state/state-line-memo.js.map +1 -0
- package/dist/{_utils → core/state}/state-line.js +1 -1
- package/dist/core/state/state-line.js.map +1 -0
- package/dist/core/state/state.js +51 -0
- package/dist/core/state/state.js.map +1 -0
- package/dist/core/system/env.js +74 -0
- package/dist/core/system/env.js.map +1 -0
- package/dist/core/system/files.js +102 -0
- package/dist/core/system/files.js.map +1 -0
- package/dist/core/system/glen-base-url.js +4 -0
- package/dist/core/system/glen-base-url.js.map +1 -0
- package/dist/core/system/http.js +146 -0
- package/dist/core/system/http.js.map +1 -0
- package/dist/core/system/run-program.js +55 -0
- package/dist/core/system/run-program.js.map +1 -0
- package/dist/core/system/sha256-hex.js +4 -0
- package/dist/core/system/sha256-hex.js.map +1 -0
- package/dist/{_utils → core/system}/shell-profile.js +43 -56
- package/dist/core/system/shell-profile.js.map +1 -0
- package/dist/core/system/spawn-detached.js +10 -0
- package/dist/core/system/spawn-detached.js.map +1 -0
- package/dist/core/system/spawn-self.js +5 -0
- package/dist/core/system/spawn-self.js.map +1 -0
- package/dist/core/system/sqlite.js +55 -0
- package/dist/core/system/sqlite.js.map +1 -0
- package/dist/core/system/version.js +16 -0
- package/dist/core/system/version.js.map +1 -0
- package/dist/core/telemetry/build-event.js +27 -0
- package/dist/core/telemetry/build-event.js.map +1 -0
- package/dist/core/telemetry/events-store.js +62 -0
- package/dist/core/telemetry/events-store.js.map +1 -0
- package/dist/core/telemetry/finish-telemetry.js +32 -0
- package/dist/core/telemetry/finish-telemetry.js.map +1 -0
- package/dist/core/telemetry/install-id.js +18 -0
- package/dist/core/telemetry/install-id.js.map +1 -0
- package/dist/core/telemetry/note-if-err.js +8 -0
- package/dist/core/telemetry/note-if-err.js.map +1 -0
- package/dist/core/telemetry/record-event.js +7 -0
- package/dist/core/telemetry/record-event.js.map +1 -0
- package/dist/core/telemetry/telemetry-context.js +10 -0
- package/dist/core/telemetry/telemetry-context.js.map +1 -0
- package/dist/core/telemetry/telemetry-settings.js +32 -0
- package/dist/core/telemetry/telemetry-settings.js.map +1 -0
- package/dist/core/terminal/attention-summary.js +14 -0
- package/dist/core/terminal/attention-summary.js.map +1 -0
- package/dist/core/terminal/out.js +86 -0
- package/dist/core/terminal/out.js.map +1 -0
- package/dist/core/terminal/prompt.js +34 -0
- package/dist/core/terminal/prompt.js.map +1 -0
- package/dist/core/terminal/read-hook-event.js +17 -0
- package/dist/core/terminal/read-hook-event.js.map +1 -0
- package/dist/core/terminal/read-stdin.js +23 -0
- package/dist/core/terminal/read-stdin.js.map +1 -0
- package/dist/jcode/plugin.json +1 -1
- package/dist/jcode/skills/feedback/SKILL.md +8 -8
- package/dist/jcode/skills/invite/SKILL.md +4 -4
- package/dist/jcode/skills/setup/SKILL.md +6 -4
- package/dist/macos/glen.app/Contents/MacOS/glen +0 -0
- package/package.json +16 -7
- package/dist/_utils/agent-adapter.d.ts +0 -9
- package/dist/_utils/agent-adapter.js +0 -49
- package/dist/_utils/agent-adapter.js.map +0 -1
- package/dist/_utils/agents-table.d.ts +0 -11
- package/dist/_utils/agents-table.js +0 -35
- package/dist/_utils/agents-table.js.map +0 -1
- package/dist/_utils/build-turn-body.d.ts +0 -17
- package/dist/_utils/build-turn-body.js.map +0 -1
- package/dist/_utils/cli-error.d.ts +0 -12
- package/dist/_utils/cli-error.js +0 -21
- package/dist/_utils/cli-error.js.map +0 -1
- package/dist/_utils/codex-app-server.d.ts +0 -11
- package/dist/_utils/codex-app-server.js +0 -94
- package/dist/_utils/codex-app-server.js.map +0 -1
- package/dist/_utils/codex-hooks-merge.d.ts +0 -22
- package/dist/_utils/codex-hooks-merge.js +0 -60
- package/dist/_utils/codex-hooks-merge.js.map +0 -1
- package/dist/_utils/codex-hooks-setup.d.ts +0 -14
- package/dist/_utils/codex-hooks-setup.js +0 -162
- package/dist/_utils/codex-hooks-setup.js.map +0 -1
- package/dist/_utils/codex-paths.d.ts +0 -5
- package/dist/_utils/codex-paths.js +0 -10
- package/dist/_utils/codex-paths.js.map +0 -1
- package/dist/_utils/codex-repair-trace.d.ts +0 -11
- package/dist/_utils/codex-repair-trace.js +0 -39
- package/dist/_utils/codex-repair-trace.js.map +0 -1
- package/dist/_utils/codex-rules-setup.d.ts +0 -4
- package/dist/_utils/codex-rules-setup.js +0 -34
- package/dist/_utils/codex-rules-setup.js.map +0 -1
- package/dist/_utils/codex-trust-toml.d.ts +0 -7
- package/dist/_utils/codex-trust-toml.js.map +0 -1
- package/dist/_utils/collect-import-files.d.ts +0 -4
- package/dist/_utils/collect-import-files.js +0 -50
- package/dist/_utils/collect-import-files.js.map +0 -1
- package/dist/_utils/config.d.ts +0 -45
- package/dist/_utils/config.js +0 -47
- package/dist/_utils/config.js.map +0 -1
- package/dist/_utils/confirm.d.ts +0 -7
- package/dist/_utils/confirm.js +0 -35
- package/dist/_utils/confirm.js.map +0 -1
- package/dist/_utils/credentials.d.ts +0 -15
- package/dist/_utils/credentials.js +0 -62
- package/dist/_utils/credentials.js.map +0 -1
- package/dist/_utils/detect-transcript-format.d.ts +0 -2
- package/dist/_utils/detect-transcript-format.js +0 -57
- package/dist/_utils/detect-transcript-format.js.map +0 -1
- package/dist/_utils/ensure-global-cli.d.ts +0 -4
- package/dist/_utils/ensure-global-cli.js.map +0 -1
- package/dist/_utils/ephemeral-session.d.ts +0 -2
- package/dist/_utils/ephemeral-session.js +0 -12
- package/dist/_utils/ephemeral-session.js.map +0 -1
- package/dist/_utils/extract-claude-segments.d.ts +0 -2
- package/dist/_utils/extract-claude-segments.js.map +0 -1
- package/dist/_utils/extract-codex-segments.d.ts +0 -2
- package/dist/_utils/extract-codex-segments.js +0 -65
- package/dist/_utils/extract-codex-segments.js.map +0 -1
- package/dist/_utils/extract-pi-segments.d.ts +0 -2
- package/dist/_utils/extract-pi-segments.js.map +0 -1
- package/dist/_utils/find-bin.d.ts +0 -7
- package/dist/_utils/find-bin.js +0 -89
- package/dist/_utils/find-bin.js.map +0 -1
- package/dist/_utils/format-search-result.d.ts +0 -2
- package/dist/_utils/format-search-result.js.map +0 -1
- package/dist/_utils/format-turn-nudges.d.ts +0 -2
- package/dist/_utils/format-turn-nudges.js.map +0 -1
- package/dist/_utils/git-context.d.ts +0 -13
- package/dist/_utils/git-context.js +0 -82
- package/dist/_utils/git-context.js.map +0 -1
- package/dist/_utils/git-hook-setup.d.ts +0 -18
- package/dist/_utils/git-hook-setup.js +0 -115
- package/dist/_utils/git-hook-setup.js.map +0 -1
- package/dist/_utils/glen-headers.d.ts +0 -8
- package/dist/_utils/glen-headers.js.map +0 -1
- package/dist/_utils/http.d.ts +0 -23
- package/dist/_utils/http.js +0 -97
- package/dist/_utils/http.js.map +0 -1
- package/dist/_utils/idempotency-key.d.ts +0 -2
- package/dist/_utils/idempotency-key.js +0 -7
- package/dist/_utils/idempotency-key.js.map +0 -1
- package/dist/_utils/indicator-app.d.ts +0 -9
- package/dist/_utils/indicator-app.js +0 -91
- package/dist/_utils/indicator-app.js.map +0 -1
- package/dist/_utils/indicator-health.d.ts +0 -8
- package/dist/_utils/indicator-health.js +0 -37
- package/dist/_utils/indicator-health.js.map +0 -1
- package/dist/_utils/ingest-diagnosis.d.ts +0 -24
- package/dist/_utils/ingest-diagnosis.js.map +0 -1
- package/dist/_utils/ingest-failure-memo.d.ts +0 -2
- package/dist/_utils/ingest-failure-memo.js +0 -58
- package/dist/_utils/ingest-failure-memo.js.map +0 -1
- package/dist/_utils/ingest-heartbeat.d.ts +0 -9
- package/dist/_utils/ingest-heartbeat.js +0 -48
- package/dist/_utils/ingest-heartbeat.js.map +0 -1
- package/dist/_utils/install-receipt.d.ts +0 -51
- package/dist/_utils/install-receipt.js +0 -202
- package/dist/_utils/install-receipt.js.map +0 -1
- package/dist/_utils/jcode-bundle.d.ts +0 -3
- package/dist/_utils/jcode-bundle.js +0 -16
- package/dist/_utils/jcode-bundle.js.map +0 -1
- package/dist/_utils/jcode-event.d.ts +0 -3
- package/dist/_utils/jcode-event.js +0 -66
- package/dist/_utils/jcode-event.js.map +0 -1
- package/dist/_utils/jcode-hook-lines.d.ts +0 -5
- package/dist/_utils/jcode-hook-lines.js.map +0 -1
- package/dist/_utils/jcode-hooks-toml.d.ts +0 -8
- package/dist/_utils/jcode-hooks-toml.js.map +0 -1
- package/dist/_utils/jcode-paths.d.ts +0 -7
- package/dist/_utils/jcode-paths.js +0 -10
- package/dist/_utils/jcode-paths.js.map +0 -1
- package/dist/_utils/jcode-setup.d.ts +0 -27
- package/dist/_utils/jcode-setup.js +0 -151
- package/dist/_utils/jcode-setup.js.map +0 -1
- package/dist/_utils/jcode-skills-sync.d.ts +0 -8
- package/dist/_utils/jcode-skills-sync.js +0 -74
- package/dist/_utils/jcode-skills-sync.js.map +0 -1
- package/dist/_utils/login-check.d.ts +0 -2
- package/dist/_utils/login-check.js +0 -57
- package/dist/_utils/login-check.js.map +0 -1
- package/dist/_utils/managed-block.d.ts +0 -4
- package/dist/_utils/managed-block.js.map +0 -1
- package/dist/_utils/normalize-boolean-flags.d.ts +0 -2
- package/dist/_utils/normalize-boolean-flags.js.map +0 -1
- package/dist/_utils/normalize-transcript-timestamp.d.ts +0 -2
- package/dist/_utils/normalize-transcript-timestamp.js.map +0 -1
- package/dist/_utils/npm-error-cause.d.ts +0 -5
- package/dist/_utils/npm-error-cause.js.map +0 -1
- package/dist/_utils/open-browser.d.ts +0 -2
- package/dist/_utils/open-browser.js +0 -18
- package/dist/_utils/open-browser.js.map +0 -1
- package/dist/_utils/parse-claude-transcript.d.ts +0 -3
- package/dist/_utils/parse-claude-transcript.js +0 -145
- package/dist/_utils/parse-claude-transcript.js.map +0 -1
- package/dist/_utils/parse-codex-transcript.d.ts +0 -3
- package/dist/_utils/parse-codex-transcript.js +0 -132
- package/dist/_utils/parse-codex-transcript.js.map +0 -1
- package/dist/_utils/parse-cursor-db.d.ts +0 -5
- package/dist/_utils/parse-cursor-db.js +0 -212
- package/dist/_utils/parse-cursor-db.js.map +0 -1
- package/dist/_utils/parse-harbor-atif.d.ts +0 -3
- package/dist/_utils/parse-harbor-atif.js.map +0 -1
- package/dist/_utils/parse-jcode-session.d.ts +0 -14
- package/dist/_utils/parse-jcode-session.js.map +0 -1
- package/dist/_utils/parse-pi-transcript.d.ts +0 -3
- package/dist/_utils/parse-pi-transcript.js +0 -164
- package/dist/_utils/parse-pi-transcript.js.map +0 -1
- package/dist/_utils/parse-transcript.d.ts +0 -14
- package/dist/_utils/parse-transcript.js +0 -94
- package/dist/_utils/parse-transcript.js.map +0 -1
- package/dist/_utils/plugin-status.d.ts +0 -4
- package/dist/_utils/plugin-status.js +0 -76
- package/dist/_utils/plugin-status.js.map +0 -1
- package/dist/_utils/post-route.d.ts +0 -6
- package/dist/_utils/post-route.js +0 -66
- package/dist/_utils/post-route.js.map +0 -1
- package/dist/_utils/pr-review-link.d.ts +0 -11
- package/dist/_utils/pr-review-link.js.map +0 -1
- package/dist/_utils/proactive-ticket-log.d.ts +0 -3
- package/dist/_utils/proactive-ticket-log.js +0 -21
- package/dist/_utils/proactive-ticket-log.js.map +0 -1
- package/dist/_utils/purge-agent-plugins.d.ts +0 -8
- package/dist/_utils/purge-agent-plugins.js +0 -62
- package/dist/_utils/purge-agent-plugins.js.map +0 -1
- package/dist/_utils/purge-claude-statusline.d.ts +0 -12
- package/dist/_utils/purge-claude-statusline.js +0 -57
- package/dist/_utils/purge-claude-statusline.js.map +0 -1
- package/dist/_utils/purge-local-state.d.ts +0 -7
- package/dist/_utils/purge-local-state.js +0 -40
- package/dist/_utils/purge-local-state.js.map +0 -1
- package/dist/_utils/record-commit-anchor.d.ts +0 -8
- package/dist/_utils/record-commit-anchor.js +0 -73
- package/dist/_utils/record-commit-anchor.js.map +0 -1
- package/dist/_utils/refresh-control-state.d.ts +0 -6
- package/dist/_utils/refresh-control-state.js +0 -30
- package/dist/_utils/refresh-control-state.js.map +0 -1
- package/dist/_utils/render-callback-page.d.ts +0 -2
- package/dist/_utils/render-callback-page.js +0 -90
- package/dist/_utils/render-callback-page.js.map +0 -1
- package/dist/_utils/report-cli-install.d.ts +0 -2
- package/dist/_utils/report-cli-install.js +0 -17
- package/dist/_utils/report-cli-install.js.map +0 -1
- package/dist/_utils/resolve-import-workspace.d.ts +0 -4
- package/dist/_utils/resolve-import-workspace.js.map +0 -1
- package/dist/_utils/result.d.ts +0 -14
- package/dist/_utils/result.js +0 -12
- package/dist/_utils/result.js.map +0 -1
- package/dist/_utils/run-bin.d.ts +0 -14
- package/dist/_utils/run-bin.js +0 -60
- package/dist/_utils/run-bin.js.map +0 -1
- package/dist/_utils/runtime-timezone.d.ts +0 -1
- package/dist/_utils/runtime-timezone.js +0 -13
- package/dist/_utils/runtime-timezone.js.map +0 -1
- package/dist/_utils/session-map.d.ts +0 -4
- package/dist/_utils/session-map.js +0 -38
- package/dist/_utils/session-map.js.map +0 -1
- package/dist/_utils/shell-profile.d.ts +0 -13
- package/dist/_utils/shell-profile.js.map +0 -1
- package/dist/_utils/state-line-memo.d.ts +0 -2
- package/dist/_utils/state-line-memo.js +0 -47
- package/dist/_utils/state-line-memo.js.map +0 -1
- package/dist/_utils/state-line.d.ts +0 -3
- package/dist/_utils/state-line.js.map +0 -1
- package/dist/_utils/state.d.ts +0 -15
- package/dist/_utils/state.js +0 -53
- package/dist/_utils/state.js.map +0 -1
- package/dist/_utils/sync-mode-from-server.d.ts +0 -3
- package/dist/_utils/sync-mode-from-server.js +0 -44
- package/dist/_utils/sync-mode-from-server.js.map +0 -1
- package/dist/_utils/transcript-turns.d.ts +0 -51
- package/dist/_utils/transcript-turns.js.map +0 -1
- package/dist/_utils/turn-cache.d.ts +0 -7
- package/dist/_utils/turn-cache.js +0 -56
- package/dist/_utils/turn-cache.js.map +0 -1
- package/dist/_utils/update.d.ts +0 -19
- package/dist/_utils/update.js +0 -196
- package/dist/_utils/update.js.map +0 -1
- package/dist/_utils/version.d.ts +0 -2
- package/dist/_utils/version.js +0 -18
- package/dist/_utils/version.js.map +0 -1
- package/dist/_utils/which.d.ts +0 -2
- package/dist/_utils/which.js +0 -4
- package/dist/_utils/which.js.map +0 -1
- package/dist/_utils/write-commit-trailer.d.ts +0 -2
- package/dist/_utils/write-commit-trailer.js +0 -25
- package/dist/_utils/write-commit-trailer.js.map +0 -1
- package/dist/bin.d.ts +0 -2
- package/dist/commands/_utils/materialize-skill.d.ts +0 -30
- package/dist/commands/_utils/materialize-skill.js +0 -207
- package/dist/commands/_utils/materialize-skill.js.map +0 -1
- package/dist/commands/_utils/mutate-evidence.d.ts +0 -17
- package/dist/commands/_utils/mutate-evidence.js +0 -80
- package/dist/commands/_utils/mutate-evidence.js.map +0 -1
- package/dist/commands/_utils/pack-skill-dir.d.ts +0 -15
- package/dist/commands/_utils/pack-skill-dir.js +0 -169
- package/dist/commands/_utils/pack-skill-dir.js.map +0 -1
- package/dist/commands/artifact.d.ts +0 -18
- package/dist/commands/artifact.js +0 -139
- package/dist/commands/artifact.js.map +0 -1
- package/dist/commands/code-search.d.ts +0 -4
- package/dist/commands/code-search.js +0 -164
- package/dist/commands/code-search.js.map +0 -1
- package/dist/commands/dependency.d.ts +0 -4
- package/dist/commands/dependency.js +0 -23
- package/dist/commands/dependency.js.map +0 -1
- package/dist/commands/doctor.d.ts +0 -7
- package/dist/commands/doctor.js +0 -243
- package/dist/commands/doctor.js.map +0 -1
- package/dist/commands/feedback.d.ts +0 -15
- package/dist/commands/feedback.js +0 -112
- package/dist/commands/feedback.js.map +0 -1
- package/dist/commands/forget.d.ts +0 -4
- package/dist/commands/forget.js +0 -29
- package/dist/commands/forget.js.map +0 -1
- package/dist/commands/git-hooks.d.ts +0 -9
- package/dist/commands/git-hooks.js +0 -18
- package/dist/commands/git-hooks.js.map +0 -1
- package/dist/commands/import.d.ts +0 -8
- package/dist/commands/import.js +0 -414
- package/dist/commands/import.js.map +0 -1
- package/dist/commands/incognito.d.ts +0 -4
- package/dist/commands/incognito.js +0 -13
- package/dist/commands/incognito.js.map +0 -1
- package/dist/commands/indicator.d.ts +0 -4
- package/dist/commands/indicator.js +0 -65
- package/dist/commands/indicator.js.map +0 -1
- package/dist/commands/ingest.d.ts +0 -3
- package/dist/commands/ingest.js +0 -367
- package/dist/commands/ingest.js.map +0 -1
- package/dist/commands/install.d.ts +0 -9
- package/dist/commands/install.js +0 -431
- package/dist/commands/install.js.map +0 -1
- package/dist/commands/invite.d.ts +0 -4
- package/dist/commands/invite.js +0 -61
- package/dist/commands/invite.js.map +0 -1
- package/dist/commands/login.d.ts +0 -4
- package/dist/commands/login.js +0 -145
- package/dist/commands/login.js.map +0 -1
- package/dist/commands/logout.d.ts +0 -4
- package/dist/commands/logout.js +0 -26
- package/dist/commands/logout.js.map +0 -1
- package/dist/commands/onboard.d.ts +0 -4
- package/dist/commands/onboard.js +0 -18
- package/dist/commands/onboard.js.map +0 -1
- package/dist/commands/org.d.ts +0 -5
- package/dist/commands/org.js +0 -157
- package/dist/commands/org.js.map +0 -1
- package/dist/commands/pr-link.d.ts +0 -2
- package/dist/commands/pr-link.js +0 -69
- package/dist/commands/pr-link.js.map +0 -1
- package/dist/commands/restore.d.ts +0 -4
- package/dist/commands/restore.js +0 -23
- package/dist/commands/restore.js.map +0 -1
- package/dist/commands/search.d.ts +0 -4
- package/dist/commands/search.js +0 -85
- package/dist/commands/search.js.map +0 -1
- package/dist/commands/session-start.d.ts +0 -2
- package/dist/commands/session-start.js +0 -114
- package/dist/commands/session-start.js.map +0 -1
- package/dist/commands/set-mode.d.ts +0 -5
- package/dist/commands/set-mode.js +0 -96
- package/dist/commands/set-mode.js.map +0 -1
- package/dist/commands/skill.d.ts +0 -18
- package/dist/commands/skill.js +0 -309
- package/dist/commands/skill.js.map +0 -1
- package/dist/commands/status.d.ts +0 -4
- package/dist/commands/status.js +0 -33
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/statusline.d.ts +0 -2
- package/dist/commands/statusline.js +0 -37
- package/dist/commands/statusline.js.map +0 -1
- package/dist/commands/suggestions.d.ts +0 -4
- package/dist/commands/suggestions.js +0 -84
- package/dist/commands/suggestions.js.map +0 -1
- package/dist/commands/takeover/_utils/agent-paths.d.ts +0 -6
- package/dist/commands/takeover/_utils/archive-codex-desktop-thread.d.ts +0 -5
- package/dist/commands/takeover/_utils/canonical-digest.d.ts +0 -5
- package/dist/commands/takeover/_utils/codex-desktop-recovery.d.ts +0 -16
- package/dist/commands/takeover/_utils/context-fit.d.ts +0 -18
- package/dist/commands/takeover/_utils/cursor-store.d.ts +0 -49
- package/dist/commands/takeover/_utils/import-codex-desktop-thread.d.ts +0 -14
- package/dist/commands/takeover/_utils/launch-desktop-url.d.ts +0 -4
- package/dist/commands/takeover/_utils/native-file.d.ts +0 -14
- package/dist/commands/takeover/_utils/probe-agent.d.ts +0 -20
- package/dist/commands/takeover/_utils/provenance-context.d.ts +0 -7
- package/dist/commands/takeover/_utils/staged-session.d.ts +0 -64
- package/dist/commands/takeover/_utils/write-claude-desktop-session.d.ts +0 -47
- package/dist/commands/takeover/_utils/write-claude-session.d.ts +0 -53
- package/dist/commands/takeover/_utils/write-codex-desktop-session.d.ts +0 -96
- package/dist/commands/takeover/_utils/write-codex-session.d.ts +0 -52
- package/dist/commands/takeover/_utils/write-cursor-session.d.ts +0 -57
- package/dist/commands/takeover/_utils/write-pi-session.d.ts +0 -52
- package/dist/commands/takeover/index.d.ts +0 -21
- package/dist/commands/takeover/takeover.schema.d.ts +0 -24
- package/dist/commands/uninstall.d.ts +0 -8
- package/dist/commands/uninstall.js +0 -130
- package/dist/commands/uninstall.js.map +0 -1
- package/dist/commands/update.d.ts +0 -4
- package/dist/commands/update.js +0 -127
- package/dist/commands/update.js.map +0 -1
- package/dist/jcode/skills/session-takeover/SKILL.md +0 -67
- /package/dist/{_utils → clients/agents}/normalize-transcript-timestamp.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"purge-agent-plugins.js","sourceRoot":"","sources":["../../../../src/commands/uninstall/_utils/purge-agent-plugins.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { cliErr } from "../../../core/errors/cli-error.js";
|
|
2
|
+
import { files } from "../../../core/system/files.js";
|
|
3
|
+
import { isRecord } from "../../../core/json/is-record.js";
|
|
4
|
+
import { sha256Hex } from "../../../core/system/sha256-hex.js";
|
|
5
|
+
import { field } from "../../../core/json/json-field.js";
|
|
6
|
+
import { parseJson } from "../../../core/json/parse-json.js";
|
|
7
|
+
import { err, ok } from "../../../core/errors/result.js";
|
|
8
|
+
const GLEN_STATUSLINE = { type: "command", command: "glen statusline" };
|
|
9
|
+
const byHand = (path) => `remove the "statusLine": { "command": "glen statusline" } entry from ${path} by hand`;
|
|
10
|
+
const failed = (r, path) => r.ok
|
|
11
|
+
? ok(undefined)
|
|
12
|
+
: err([
|
|
13
|
+
files.toError(r.error, {
|
|
14
|
+
code: "uninstall.claude_settings_restore_failed",
|
|
15
|
+
what: "could not restore your Claude Code settings",
|
|
16
|
+
remedy: byHand(path),
|
|
17
|
+
}),
|
|
18
|
+
]);
|
|
19
|
+
const purgeClaudeStatusline = async (input) => {
|
|
20
|
+
const current = await files.readTextIfExists(input.path);
|
|
21
|
+
if (!current.ok)
|
|
22
|
+
return failed(current, input.path);
|
|
23
|
+
if (current.value === null)
|
|
24
|
+
return ok(undefined);
|
|
25
|
+
const hash = sha256Hex(current.value);
|
|
26
|
+
if (input.receipt?.installedHash === hash) {
|
|
27
|
+
if (!input.receipt.existed)
|
|
28
|
+
return failed(await files.remove(input.path), input.path);
|
|
29
|
+
if (input.receipt.before !== null)
|
|
30
|
+
return failed(await files.writeAtomic(input.path, input.receipt.before), input.path);
|
|
31
|
+
}
|
|
32
|
+
const parsed = parseJson(current.value);
|
|
33
|
+
if (!parsed.ok || !isRecord(parsed.value))
|
|
34
|
+
return current.value.includes("glen statusline")
|
|
35
|
+
? err([
|
|
36
|
+
cliErr("Parse", {
|
|
37
|
+
code: "uninstall.claude_settings_unreadable",
|
|
38
|
+
what: "your Claude Code settings aren't valid JSON, so glen left its statusLine there",
|
|
39
|
+
path: input.path,
|
|
40
|
+
remedy: byHand(input.path),
|
|
41
|
+
}),
|
|
42
|
+
])
|
|
43
|
+
: ok(undefined);
|
|
44
|
+
if (JSON.stringify(field(parsed.value, "statusLine")) !==
|
|
45
|
+
JSON.stringify(GLEN_STATUSLINE))
|
|
46
|
+
return ok(undefined);
|
|
47
|
+
const { statusLine: _removed, ...preserved } = parsed.value;
|
|
48
|
+
return failed(await files.writeAtomic(input.path, `${JSON.stringify(preserved, null, 2)}\n`), input.path);
|
|
49
|
+
};
|
|
50
|
+
export { purgeClaudeStatusline };
|
|
51
|
+
//# sourceMappingURL=purge-claude-statusline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"purge-claude-statusline.js","sourceRoot":"","sources":["../../../../src/commands/uninstall/_utils/purge-claude-statusline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAe,GAAG,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAItE,MAAM,eAAe,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAExE,MAAM,MAAM,GAAG,CAAC,IAAY,EAAU,EAAE,CACtC,wEAAwE,IAAI,UAAU,CAAC;AAEzF,MAAM,MAAM,GAAG,CACb,CAAoD,EACpD,IAAY,EACc,EAAE,CAC5B,CAAC,CAAC,EAAE;IACF,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC;IACf,CAAC,CAAC,GAAG,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE;YACrB,IAAI,EAAE,0CAA0C;YAChD,IAAI,EAAE,6CAA6C;YACnD,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC;SACrB,CAAC;KACH,CAAC,CAAC;AAET,MAAM,qBAAqB,GAAG,KAAK,EAAE,KAGpC,EAAqC,EAAE;IACtC,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzD,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;IAEjD,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACtC,IAAI,KAAK,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO;YACxB,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI;YAC/B,OAAO,MAAM,CACX,MAAM,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EACzD,KAAK,CAAC,IAAI,CACX,CAAC;IACN,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;QACvC,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YAC9C,CAAC,CAAC,GAAG,CAAC;gBACF,MAAM,CAAC,OAAO,EAAE;oBACd,IAAI,EAAE,sCAAsC;oBAC5C,IAAI,EAAE,gFAAgF;oBACtF,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;iBAC3B,CAAC;aACH,CAAC;YACJ,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACpB,IACE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;QAE/B,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;IACvB,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IAC5D,OAAO,MAAM,CACX,MAAM,KAAK,CAAC,WAAW,CACrB,KAAK,CAAC,IAAI,EACV,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAC1C,EACD,KAAK,CAAC,IAAI,CACX,CAAC;AACJ,CAAC,CAAC;AAEF,OAAO,EAAE,qBAAqB,EAAE,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { join } from "node:path";
|
|
2
|
+
import { files } from "../../../core/system/files.js";
|
|
3
|
+
import { err, ok } from "../../../core/errors/result.js";
|
|
4
|
+
const removePath = async (path) => {
|
|
5
|
+
const result = await files.remove(path, { recursive: true });
|
|
6
|
+
return result.ok
|
|
7
|
+
? []
|
|
8
|
+
: [
|
|
9
|
+
files.toError(result.error, {
|
|
10
|
+
code: "uninstall.local_state_remove_failed",
|
|
11
|
+
what: "could not remove glen's local files",
|
|
12
|
+
remedy: `delete ${path} by hand`,
|
|
13
|
+
}),
|
|
14
|
+
];
|
|
15
|
+
};
|
|
16
|
+
const isGlenRun = async (runPath) => files.exists(join(runPath, "node_modules", "@tryglen", "cli", "package.json"));
|
|
17
|
+
// npx keeps a cached copy of glen under ~/.npm/_npx/<hash>; only folders holding glen go.
|
|
18
|
+
const purgeNpx = async (root) => {
|
|
19
|
+
if (!root)
|
|
20
|
+
return [];
|
|
21
|
+
const entries = await files.readDirEntries(root);
|
|
22
|
+
if (!entries.ok)
|
|
23
|
+
return entries.error.errno === "ENOENT"
|
|
24
|
+
? []
|
|
25
|
+
: [
|
|
26
|
+
files.toError(entries.error, {
|
|
27
|
+
code: "uninstall.npx_cache_read_failed",
|
|
28
|
+
what: "could not look through npx's cache for glen",
|
|
29
|
+
remedy: `delete the glen folders under ${root} by hand`,
|
|
30
|
+
}),
|
|
31
|
+
];
|
|
32
|
+
const runs = entries.value
|
|
33
|
+
.filter((entry) => entry.isDirectory())
|
|
34
|
+
.map((entry) => join(root, entry.name));
|
|
35
|
+
const glenRuns = (await Promise.all(runs.map(async (p) => ((await isGlenRun(p)) ? [p] : [])))).flat();
|
|
36
|
+
return (await Promise.all(glenRuns.map(removePath))).flat();
|
|
37
|
+
};
|
|
38
|
+
const purgeLocalState = async (input) => {
|
|
39
|
+
const explicit = [
|
|
40
|
+
...new Set(input.overrideFiles.filter((path) => !path.startsWith(`${input.canonicalDir}/`))),
|
|
41
|
+
];
|
|
42
|
+
const failures = [
|
|
43
|
+
...(await purgeNpx(input.npxRoot)),
|
|
44
|
+
...(await Promise.all([
|
|
45
|
+
...explicit.map(removePath),
|
|
46
|
+
removePath(input.canonicalDir),
|
|
47
|
+
])).flat(),
|
|
48
|
+
];
|
|
49
|
+
return failures.length === 0 ? ok(undefined) : err(failures);
|
|
50
|
+
};
|
|
51
|
+
export { purgeLocalState };
|
|
52
|
+
//# sourceMappingURL=purge-local-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"purge-local-state.js","sourceRoot":"","sources":["../../../../src/commands/uninstall/_utils/purge-local-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { homedir } from "node:os";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { cliErr } from "../../core/errors/cli-error.js";
|
|
4
|
+
import { codexHooks } from "../../clients/codex/codex-hooks-setup.js";
|
|
5
|
+
import { codexRules } from "../../clients/codex/codex-rules-setup.js";
|
|
6
|
+
import { env } from "../../core/system/env.js";
|
|
7
|
+
import { agentBin } from "../../clients/agents/agent-bin.js";
|
|
8
|
+
import { gitHookSetup } from "../../clients/git/git-hook-setup.js";
|
|
9
|
+
import { indicatorApp } from "../../clients/indicator/indicator-app.js";
|
|
10
|
+
import { installReceipt } from "../../core/state/install-receipt.js";
|
|
11
|
+
import { jcodeSetup } from "../../clients/jcode/jcode-setup.js";
|
|
12
|
+
import { out } from "../../core/terminal/out.js";
|
|
13
|
+
import { err, ok } from "../../core/errors/result.js";
|
|
14
|
+
import { runProgram } from "../../core/system/run-program.js";
|
|
15
|
+
import { shellProfile } from "../../core/system/shell-profile.js";
|
|
16
|
+
import { purgeAgentPlugins } from "./_utils/purge-agent-plugins.js";
|
|
17
|
+
import { purgeClaudeStatusline } from "./_utils/purge-claude-statusline.js";
|
|
18
|
+
import { purgeLocalState } from "./_utils/purge-local-state.js";
|
|
19
|
+
import { telemetryContext } from "../../core/telemetry/telemetry-context.js";
|
|
20
|
+
const residue = (r) => r.ok ? [] : Array.isArray(r.error) ? r.error : [r.error];
|
|
21
|
+
const absentGlobalPackage = (value) => /not installed|not found|does not exist|up to date/i.test(value);
|
|
22
|
+
// Self-removal must stay last: earlier steps still rely on this running CLI.
|
|
23
|
+
const removeGlobalCli = (npm) => {
|
|
24
|
+
if (!npm)
|
|
25
|
+
return [];
|
|
26
|
+
const removed = runProgram(npm, ["uninstall", "-g", "@tryglen/cli"], {
|
|
27
|
+
timeoutMs: 300_000,
|
|
28
|
+
});
|
|
29
|
+
if (removed.ok)
|
|
30
|
+
return [];
|
|
31
|
+
const failure = removed.error.stderrTail ||
|
|
32
|
+
removed.error.spawnError ||
|
|
33
|
+
"npm uninstall failed";
|
|
34
|
+
return absentGlobalPackage(failure)
|
|
35
|
+
? []
|
|
36
|
+
: [
|
|
37
|
+
cliErr("Exec", {
|
|
38
|
+
code: "uninstall.npm_uninstall_failed",
|
|
39
|
+
what: "could not uninstall the glen command",
|
|
40
|
+
why: failure,
|
|
41
|
+
remedy: `run \`${npm} uninstall -g @tryglen/cli\` yourself`,
|
|
42
|
+
}),
|
|
43
|
+
];
|
|
44
|
+
};
|
|
45
|
+
const removeProfileBlocks = async (profiles) => {
|
|
46
|
+
const failures = [];
|
|
47
|
+
for (const profile of profiles) {
|
|
48
|
+
failures.push(...residue(await shellProfile.removePathBlock(profile)), ...residue(await shellProfile.removeLoginCheckBlock(profile)));
|
|
49
|
+
}
|
|
50
|
+
return failures;
|
|
51
|
+
};
|
|
52
|
+
const removeGitHooks = async (cwd, snapshots) => {
|
|
53
|
+
const failures = [];
|
|
54
|
+
for (const snapshot of snapshots)
|
|
55
|
+
failures.push(...residue(await gitHookSetup.uninstallPrepareCommitMsg({ cwd, snapshot })));
|
|
56
|
+
failures.push(...residue(await gitHookSetup.uninstallPrepareCommitMsg({ cwd })));
|
|
57
|
+
return failures;
|
|
58
|
+
};
|
|
59
|
+
const uninstall = async (context = {}) => {
|
|
60
|
+
// Everything under ~/.glen is about to go, telemetry included: don't write any of it back.
|
|
61
|
+
telemetryContext.stopped = true;
|
|
62
|
+
out.heading("🏔️ glen: complete uninstall");
|
|
63
|
+
const e = env();
|
|
64
|
+
const home = context.home ?? homedir();
|
|
65
|
+
const cwd = context.cwd ?? process.cwd();
|
|
66
|
+
const receipt = await installReceipt.read();
|
|
67
|
+
const bins = {
|
|
68
|
+
claude: agentBin.resolve("claude"),
|
|
69
|
+
codex: agentBin.resolve("codex"),
|
|
70
|
+
pi: agentBin.resolve("pi"),
|
|
71
|
+
npm: agentBin.resolve("npm"),
|
|
72
|
+
};
|
|
73
|
+
const cursorDetected = agentBin.isInstalled("cursor");
|
|
74
|
+
const claudeSettingsPath = receipt?.claudeSettings?.path ??
|
|
75
|
+
e.GLEN_CLAUDE_SETTINGS_PATH ??
|
|
76
|
+
join(home, ".claude", "settings.json");
|
|
77
|
+
const profiles = [
|
|
78
|
+
...new Set([
|
|
79
|
+
...(receipt?.shellProfiles ?? []),
|
|
80
|
+
join(home, ".zprofile"),
|
|
81
|
+
join(home, ".bash_profile"),
|
|
82
|
+
]),
|
|
83
|
+
];
|
|
84
|
+
const overrideFiles = [
|
|
85
|
+
...(receipt?.statePaths ?? []),
|
|
86
|
+
e.GLEN_CREDENTIALS_PATH,
|
|
87
|
+
e.GLEN_STATE_PATH,
|
|
88
|
+
e.GLEN_AGENTS_PATH,
|
|
89
|
+
e.GLEN_INSTALL_RECEIPT_PATH,
|
|
90
|
+
].filter((path) => typeof path === "string");
|
|
91
|
+
const residuals = [
|
|
92
|
+
...residue(await purgeAgentPlugins({
|
|
93
|
+
home,
|
|
94
|
+
claude: bins.claude,
|
|
95
|
+
codex: bins.codex,
|
|
96
|
+
pi: bins.pi,
|
|
97
|
+
})),
|
|
98
|
+
...residue(await codexHooks.uninstall(receipt?.codexFiles ?? undefined)),
|
|
99
|
+
...residue(await codexRules.uninstall()),
|
|
100
|
+
...residue(await jcodeSetup.uninstall(receipt?.jcodeFiles)),
|
|
101
|
+
...residue(await purgeClaudeStatusline({
|
|
102
|
+
path: claudeSettingsPath,
|
|
103
|
+
receipt: receipt?.claudeSettings ?? null,
|
|
104
|
+
})),
|
|
105
|
+
// The login item lives outside ~/.glen; left registered, it would relaunch a deleted binary every login.
|
|
106
|
+
...residue(await indicatorApp.unregister()),
|
|
107
|
+
...(await removeGitHooks(cwd, receipt?.gitHooks ?? [])),
|
|
108
|
+
...(await removeProfileBlocks(profiles)),
|
|
109
|
+
...residue(await purgeLocalState({
|
|
110
|
+
canonicalDir: join(home, ".glen"),
|
|
111
|
+
overrideFiles,
|
|
112
|
+
npxRoot: join(home, ".npm", "_npx"),
|
|
113
|
+
})),
|
|
114
|
+
...(cursorDetected
|
|
115
|
+
? [
|
|
116
|
+
cliErr("Usage", {
|
|
117
|
+
code: "uninstall.cursor_manual",
|
|
118
|
+
what: "Cursor may still contain the glen plugin",
|
|
119
|
+
remedy: "open Cursor plugin settings (or /add-plugin) and remove glen by hand",
|
|
120
|
+
}),
|
|
121
|
+
]
|
|
122
|
+
: []),
|
|
123
|
+
...removeGlobalCli(bins.npm),
|
|
124
|
+
];
|
|
125
|
+
if (residuals.length > 0) {
|
|
126
|
+
for (const r of residuals)
|
|
127
|
+
out.warn(r);
|
|
128
|
+
return err(cliErr("Fs", {
|
|
129
|
+
code: "uninstall.residue",
|
|
130
|
+
what: `glen uninstall left ${residuals.length} thing${residuals.length === 1 ? "" : "s"} behind`,
|
|
131
|
+
remedy: "do the steps listed above, then re-run `glen uninstall` if the command is still available",
|
|
132
|
+
}));
|
|
133
|
+
}
|
|
134
|
+
out.success("glen has been completely removed from this machine.");
|
|
135
|
+
return ok(undefined);
|
|
136
|
+
};
|
|
137
|
+
export { uninstall };
|
|
138
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/uninstall/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uninstall.options.js","sourceRoot":"","sources":["../../../src/commands/uninstall/uninstall.options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEvD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { agentsTable } from "../../clients/agents/agents-table.js";
|
|
2
|
+
import { attentionSummary } from "../../core/terminal/attention-summary.js";
|
|
3
|
+
import { cliErr } from "../../core/errors/cli-error.js";
|
|
4
|
+
import { codexHooks } from "../../clients/codex/codex-hooks-setup.js";
|
|
5
|
+
import { agentBin } from "../../clients/agents/agent-bin.js";
|
|
6
|
+
import { jcodeSetup } from "../../clients/jcode/jcode-setup.js";
|
|
7
|
+
import { out } from "../../core/terminal/out.js";
|
|
8
|
+
import { glenPluginStatus } from "../../clients/agents/plugin-status.js";
|
|
9
|
+
import { err, ok } from "../../core/errors/result.js";
|
|
10
|
+
import { runAgentSteps } from "../../clients/agents/run-agent-steps.js";
|
|
11
|
+
import { semverNewer } from "../../clients/npm/semver-newer.js";
|
|
12
|
+
import { selfUpdate } from "../../clients/npm/update.js";
|
|
13
|
+
import { cliVersion } from "../../core/system/version.js";
|
|
14
|
+
const updateCli = async () => {
|
|
15
|
+
out.info(`Current version: ${cliVersion}`);
|
|
16
|
+
const latest = await selfUpdate.fetchLatest();
|
|
17
|
+
if (!latest) {
|
|
18
|
+
const unreachable = cliErr("Network", {
|
|
19
|
+
code: "update.registry_unreachable",
|
|
20
|
+
what: "could not reach the npm registry to check for a newer glen",
|
|
21
|
+
remedy: "check your connection and run `glen update` again",
|
|
22
|
+
});
|
|
23
|
+
out.warn(unreachable);
|
|
24
|
+
return ok([unreachable]);
|
|
25
|
+
}
|
|
26
|
+
out.info(`Latest version: ${latest}`);
|
|
27
|
+
// semverNewer, not `===`: a newer local dev build must not downgrade to the registry version.
|
|
28
|
+
if (!semverNewer(latest, cliVersion)) {
|
|
29
|
+
out.success("Already up to date.");
|
|
30
|
+
return ok([]);
|
|
31
|
+
}
|
|
32
|
+
if (!selfUpdate.isNpmGlobalInstall()) {
|
|
33
|
+
out.hint(`Update available: v${latest}. Install with your package manager (e.g. npm i -g @tryglen/cli@latest).`);
|
|
34
|
+
return ok([]);
|
|
35
|
+
}
|
|
36
|
+
out.step(`Updating to v${latest}...`);
|
|
37
|
+
const updated = selfUpdate.run();
|
|
38
|
+
if (updated.ok) {
|
|
39
|
+
out.success(`Updated to v${latest}.`);
|
|
40
|
+
return ok([]);
|
|
41
|
+
}
|
|
42
|
+
if (updated.reason === "locked")
|
|
43
|
+
return err(cliErr("Fs", {
|
|
44
|
+
code: "update.locked",
|
|
45
|
+
what: "another update appears to be in progress",
|
|
46
|
+
path: selfUpdate.lockPath(),
|
|
47
|
+
remedy: `if no update is running, delete the lock dir and retry: rm -rf ${selfUpdate.lockPath()}`,
|
|
48
|
+
}));
|
|
49
|
+
return err(cliErr("Exec", {
|
|
50
|
+
code: "update.npm_failed",
|
|
51
|
+
what: "npm install failed",
|
|
52
|
+
...(updated.stderrTail ? { why: updated.stderrTail } : {}),
|
|
53
|
+
remedy: "run `npm i -g @tryglen/cli@latest` manually",
|
|
54
|
+
}));
|
|
55
|
+
};
|
|
56
|
+
const reverifyCodexHooks = async () => {
|
|
57
|
+
if (!(await codexHooks.isInstalled()))
|
|
58
|
+
return [];
|
|
59
|
+
const r = await codexHooks.install();
|
|
60
|
+
if (!r.ok) {
|
|
61
|
+
out.warn(r.error);
|
|
62
|
+
return [r.error];
|
|
63
|
+
}
|
|
64
|
+
const rules = r.value.rulesError ? [r.value.rulesError] : [];
|
|
65
|
+
for (const e of rules)
|
|
66
|
+
out.warn(e);
|
|
67
|
+
if (!r.value.trusted) {
|
|
68
|
+
// Codex silently skips untrusted hooks, so this must be a warning.
|
|
69
|
+
const untrusted = cliErr("Exec", {
|
|
70
|
+
code: "update.codex_hooks_untrusted",
|
|
71
|
+
what: "codex hooks: registered but not trusted",
|
|
72
|
+
remedy: "open Codex, run /hooks, and trust the glen hooks",
|
|
73
|
+
});
|
|
74
|
+
out.warn(untrusted);
|
|
75
|
+
return [...rules, untrusted];
|
|
76
|
+
}
|
|
77
|
+
out.success("codex hooks: re-verified");
|
|
78
|
+
return rules;
|
|
79
|
+
};
|
|
80
|
+
const resyncJcode = async () => {
|
|
81
|
+
if (agentBin.resolve("jcode") === null)
|
|
82
|
+
return [];
|
|
83
|
+
if (glenPluginStatus("jcode") !== "installed") {
|
|
84
|
+
out.step("jcode: skipped (plugin not installed)");
|
|
85
|
+
return [];
|
|
86
|
+
}
|
|
87
|
+
const r = await jcodeSetup.install();
|
|
88
|
+
if (!r.ok) {
|
|
89
|
+
out.warn(r.error);
|
|
90
|
+
return [r.error];
|
|
91
|
+
}
|
|
92
|
+
out.success("jcode plugin: re-synced");
|
|
93
|
+
return [];
|
|
94
|
+
};
|
|
95
|
+
const updatePlugins = async () => {
|
|
96
|
+
const steps = agentsTable.cliPluginAgents.flatMap((agent) => {
|
|
97
|
+
const resolvedBin = agentBin.resolve(agent.bin);
|
|
98
|
+
if (resolvedBin === null || glenPluginStatus(agent.bin) !== "installed") {
|
|
99
|
+
out.step(`${agent.bin}: skipped (plugin not installed)`);
|
|
100
|
+
return [];
|
|
101
|
+
}
|
|
102
|
+
out.info(`Updating ${agent.name} plugin:`);
|
|
103
|
+
return runAgentSteps(agent.bin, resolvedBin, agent.plugin.updateSteps);
|
|
104
|
+
});
|
|
105
|
+
return [...steps, ...(await reverifyCodexHooks()), ...(await resyncJcode())];
|
|
106
|
+
};
|
|
107
|
+
// Runs in the OLD-version process after a self-update: re-exec'ing mid-command would lose the printed context.
|
|
108
|
+
const update = async () => {
|
|
109
|
+
const self = await updateCli();
|
|
110
|
+
if (!self.ok)
|
|
111
|
+
return self;
|
|
112
|
+
out.blank();
|
|
113
|
+
attentionSummary([...self.value, ...(await updatePlugins())], "Everything up to date.");
|
|
114
|
+
return ok(undefined);
|
|
115
|
+
};
|
|
116
|
+
export { update };
|
|
117
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/update/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"self-update.js","sourceRoot":"","sources":["../../../src/commands/update/self-update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,IAAI,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AAEjD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;IACnC,aAAa,CAAC,GAAG,EAAE,CAAC;IACpB,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;AACvB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.options.js","sourceRoot":"","sources":["../../../src/commands/update/update.options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEvD,MAAM,aAAa,GAAG;IACpB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;IAC3B,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;CAChC,CAAC;AAEF,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { field } from "../json/json-field.js";
|
|
2
|
+
const cliErr = (tag, fields) => ({ _tag: tag, ...fields });
|
|
3
|
+
const errnoOf = (e) => {
|
|
4
|
+
const code = field(e, "code");
|
|
5
|
+
return typeof code === "string" ? code : undefined;
|
|
6
|
+
};
|
|
7
|
+
const causeOf = (e) => {
|
|
8
|
+
if (typeof e === "string" && e.length > 0)
|
|
9
|
+
return e;
|
|
10
|
+
if (e instanceof Error) {
|
|
11
|
+
const code = errnoOf(e);
|
|
12
|
+
return code ? `${code}: ${e.message}` : e.message;
|
|
13
|
+
}
|
|
14
|
+
return "unknown error";
|
|
15
|
+
};
|
|
16
|
+
// A wrapped CliError explains itself through its own why, not as an opaque cause.
|
|
17
|
+
const whyOf = (e) => e.why ??
|
|
18
|
+
(e.cause === undefined
|
|
19
|
+
? undefined
|
|
20
|
+
: isCliError(e.cause)
|
|
21
|
+
? whyOf(e.cause)
|
|
22
|
+
: causeOf(e.cause));
|
|
23
|
+
const exitCodeFor = (e) => (e._tag === "Usage" ? 2 : 1);
|
|
24
|
+
const isCliError = (e) => typeof field(e, "_tag") === "string" &&
|
|
25
|
+
typeof field(e, "code") === "string" &&
|
|
26
|
+
typeof field(e, "remedy") === "string";
|
|
27
|
+
export { cliErr, causeOf, errnoOf, whyOf, exitCodeFor, isCliError };
|
|
28
|
+
//# sourceMappingURL=cli-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-error.js","sourceRoot":"","sources":["../../../src/core/errors/cli-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AA2B9C,MAAM,MAAM,GAAG,CACb,GAAgB,EAChB,MAA8B,EACpB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;AAE1C,MAAM,OAAO,GAAG,CAAC,CAAU,EAAsB,EAAE;IACjD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9B,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AACrD,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,CAAU,EAAU,EAAE;IACrC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IACpD,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC,CAAC;AAEF,kFAAkF;AAClF,MAAM,KAAK,GAAG,CAAC,CAAW,EAAsB,EAAE,CAChD,CAAC,CAAC,GAAG;IACL,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS;QACpB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;YACnB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;YAChB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAE1B,MAAM,WAAW,GAAG,CAAC,CAAW,EAAU,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE1E,MAAM,UAAU,GAAG,CAAC,CAAU,EAAiB,EAAE,CAC/C,OAAO,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,QAAQ;IACpC,OAAO,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,QAAQ;IACpC,OAAO,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,QAAQ,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const ok = (value) => ({ _resultBrand: true, ok: true, value });
|
|
2
|
+
const err = (error) => ({ _resultBrand: true, ok: false, error });
|
|
3
|
+
const fromPromise = async (promise) => {
|
|
4
|
+
try {
|
|
5
|
+
return ok(await promise);
|
|
6
|
+
}
|
|
7
|
+
catch (e) {
|
|
8
|
+
return err(e);
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
const fromSync = (fn) => {
|
|
12
|
+
try {
|
|
13
|
+
return ok(fn());
|
|
14
|
+
}
|
|
15
|
+
catch (e) {
|
|
16
|
+
return err(e);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
const mapErr = (r, f) => r.ok ? r : err(f(r.error));
|
|
20
|
+
export { ok, err, fromPromise, fromSync, mapErr };
|
|
21
|
+
//# sourceMappingURL=result.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result.js","sourceRoot":"","sources":["../../../src/core/errors/result.ts"],"names":[],"mappings":"AAaA,MAAM,EAAE,GAAG,CAAI,KAAQ,EAAS,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7E,MAAM,GAAG,GAAG,CAAI,KAAQ,EAAU,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;AAEhF,MAAM,WAAW,GAAG,KAAK,EACvB,OAAmB,EACU,EAAE;IAC/B,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,MAAM,OAAO,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;IAChB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAI,EAAW,EAAsB,EAAE;IACtD,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;IAChB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,CAAU,CAAe,EAAE,CAAc,EAAgB,EAAE,CACxE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAE7B,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { cliErr } from "./cli-error.js";
|
|
2
|
+
import { err } from "./result.js";
|
|
3
|
+
const crashed = (cause) => cliErr("Internal", {
|
|
4
|
+
code: "cli.crash",
|
|
5
|
+
what: "glen hit an unexpected error",
|
|
6
|
+
cause,
|
|
7
|
+
remedy: "If the user wants to help us fix it, they can choose to send details with `glen bug`. Rerun with GLEN_DEBUG=1 to see the full error.",
|
|
8
|
+
});
|
|
9
|
+
const settle = async (fn) => {
|
|
10
|
+
try {
|
|
11
|
+
return await fn();
|
|
12
|
+
}
|
|
13
|
+
catch (e) {
|
|
14
|
+
return err(crashed(e));
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
export { settle };
|
|
18
|
+
//# sourceMappingURL=settle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settle.js","sourceRoot":"","sources":["../../../src/core/errors/settle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAe,GAAG,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,OAAO,GAAG,CAAC,KAAc,EAAY,EAAE,CAC3C,MAAM,CAAC,UAAU,EAAE;IACjB,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,8BAA8B;IACpC,KAAK;IACL,MAAM,EACJ,sIAAsI;CACzI,CAAC,CAAC;AAEL,MAAM,MAAM,GAAG,KAAK,EAClB,EAA4C,EACR,EAAE;IACtC,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,EAAE,CAAC;IACpB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;AACH,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-record.js","sourceRoot":"","sources":["../../../src/core/json/is-record.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAoC,EAAE,CACpE,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAEvE,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-field.js","sourceRoot":"","sources":["../../../src/core/json/json-field.ts"],"names":[],"mappings":"AAAA,MAAM,KAAK,GAAG,CAAC,KAAc,EAAE,GAAW,EAAW,EAAE,CACrD,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;IACzC,CAAC,CAAE,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAa;IACtC,CAAC,CAAC,SAAS,CAAC;AAEhB,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { isRecord } from "./is-record.js";
|
|
2
|
+
import { parseJson } from "./parse-json.js";
|
|
3
|
+
// An agent can leave a half-written last line while its session is still running.
|
|
4
|
+
const jsonlRecords = (lines) => {
|
|
5
|
+
const parsed = lines
|
|
6
|
+
.filter((line) => line.trim() !== "")
|
|
7
|
+
.map((line) => {
|
|
8
|
+
const value = parseJson(line);
|
|
9
|
+
return value.ok && isRecord(value.value) ? value.value : null;
|
|
10
|
+
});
|
|
11
|
+
const records = parsed.filter(isRecord);
|
|
12
|
+
return { records, unreadable: parsed.length - records.length };
|
|
13
|
+
};
|
|
14
|
+
export { jsonlRecords };
|
|
15
|
+
//# sourceMappingURL=jsonl-records.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonl-records.js","sourceRoot":"","sources":["../../../src/core/json/jsonl-records.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,kFAAkF;AAClF,MAAM,YAAY,GAAG,CACnB,KAAwB,EACoC,EAAE;IAC9D,MAAM,MAAM,GAAG,KAAK;SACjB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;SACpC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC,EAAE,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,CAAC,CAAC,CAAC;IACL,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;AACjE,CAAC,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-json.js","sourceRoot":"","sources":["../../../src/core/json/parse-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE5D,MAAM,SAAS,GAAG,CAAC,IAAY,EAA4B,EAAE,CAC3D,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC,CAAC;AAE9C,OAAO,EAAE,SAAS,EAAE,CAAC"}
|