jeopi-cli 16.2.13 → 16.2.15
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/CHANGELOG.md +21 -3
- package/README.md +1 -1
- package/dist/cli.js +3087 -3060
- package/dist/types/advisor/watchdog.d.ts +2 -2
- package/dist/types/autolearn/managed-skills.d.ts +2 -2
- package/dist/types/capability/types.d.ts +2 -2
- package/dist/types/cli/commands/migrate-legacy.d.ts +1 -0
- package/dist/types/cli/config-cli.d.ts +1 -1
- package/dist/types/cli/flag-tables.d.ts +1 -1
- package/dist/types/cli/grievances-cli.d.ts +1 -1
- package/dist/types/cli/models-cli.d.ts +1 -1
- package/dist/types/cli/update-cli.d.ts +2 -2
- package/dist/types/cli/worktree-cli.d.ts +1 -1
- package/dist/types/commit/index.d.ts +1 -1
- package/dist/types/commit/pipeline.d.ts +1 -1
- package/dist/types/commit/types.d.ts +1 -1
- package/dist/types/config/prompt-templates.d.ts +1 -1
- package/dist/types/config/settings-schema.d.ts +16 -6
- package/dist/types/config.d.ts +7 -7
- package/dist/types/discovery/helpers.d.ts +8 -8
- package/dist/types/discovery/omp-extension-roots.d.ts +2 -2
- package/dist/types/eval/py/runtime.d.ts +1 -1
- package/dist/types/extensibility/custom-tools/loader.d.ts +2 -2
- package/dist/types/extensibility/extensions/loader.d.ts +1 -1
- package/dist/types/extensibility/hooks/loader.d.ts +1 -1
- package/dist/types/extensibility/plugins/loader.d.ts +2 -2
- package/dist/types/extensibility/plugins/types.d.ts +13 -3
- package/dist/types/lsp/config.d.ts +2 -2
- package/dist/types/mcp/client.d.ts +1 -1
- package/dist/types/mcp/config-writer.d.ts +1 -1
- package/dist/types/mcp/oauth-flow.d.ts +1 -1
- package/dist/types/mcp/transports/http.d.ts +1 -1
- package/dist/types/memories/okf.d.ts +36 -0
- package/dist/types/modes/components/__tests__/assistant-agent-label.test.d.ts +1 -0
- package/dist/types/modes/components/assistant-message.d.ts +4 -0
- package/dist/types/modes/interactive-mode.d.ts +1 -1
- package/dist/types/sdk.d.ts +5 -5
- package/dist/types/session/agent-session.d.ts +3 -0
- package/dist/types/session/auth-broker-config.d.ts +4 -4
- package/dist/types/session/snapcompact-savings-journal.d.ts +1 -1
- package/dist/types/task/commands.d.ts +1 -1
- package/dist/types/task/critic-gate.d.ts +76 -0
- package/dist/types/task/critic-gate.test.d.ts +1 -0
- package/dist/types/task/discovery.d.ts +1 -1
- package/dist/types/task/executor.d.ts +1 -1
- package/dist/types/tools/acp-bridge.d.ts +2 -2
- package/dist/types/tools/browser/tab-protocol.d.ts +1 -1
- package/dist/types/tools/index.d.ts +6 -1
- package/dist/types/tools/plan-mode-guard.d.ts +8 -0
- package/dist/types/tools/report-tool-issue.d.ts +1 -1
- package/dist/types/utils/changelog.d.ts +2 -2
- package/dist/types/utils/image-loading.d.ts +4 -4
- package/dist/types/utils/image-resize.d.ts +1 -1
- package/dist/types/web/search/index.d.ts +1 -1
- package/examples/custom-tools/README.md +1 -1
- package/examples/extensions/README.md +1 -1
- package/examples/extensions/pirate.ts +1 -1
- package/examples/extensions/plan-mode.ts +1 -1
- package/examples/extensions/tools.ts +1 -1
- package/examples/hooks/README.md +1 -1
- package/examples/sdk/01-minimal.ts +1 -1
- package/examples/sdk/04-skills.ts +1 -1
- package/examples/sdk/06-extensions.ts +3 -3
- package/examples/sdk/09-api-keys-and-oauth.ts +2 -2
- package/examples/sdk/12-redis-sessions.ts +1 -1
- package/examples/sdk/13-sql-sessions.ts +1 -1
- package/examples/sdk/README.md +1 -1
- package/package.json +12 -12
- package/scripts/jeopi +1 -1
- package/src/advisor/__tests__/config.test.ts +4 -4
- package/src/advisor/watchdog.ts +8 -8
- package/src/autolearn/managed-skills.ts +4 -4
- package/src/autoresearch/storage.ts +2 -2
- package/src/capability/types.ts +2 -2
- package/src/cli/agents-cli.ts +2 -2
- package/src/cli/args.ts +3 -3
- package/src/cli/auth-broker-cli.ts +5 -5
- package/src/cli/auth-gateway-cli.ts +4 -4
- package/src/cli/claude-trace-cli.ts +1 -1
- package/src/cli/commands/migrate-legacy.ts +24 -0
- package/src/cli/config-cli.ts +20 -5
- package/src/cli/flag-tables.ts +1 -1
- package/src/cli/gallery-fixtures/misc.ts +7 -7
- package/src/cli/gallery-screenshot.ts +2 -2
- package/src/cli/grievances-cli.ts +1 -1
- package/src/cli/models-cli.ts +1 -1
- package/src/cli/plugin-cli.ts +2 -2
- package/src/cli/profile-alias.ts +8 -8
- package/src/cli/read-cli.ts +1 -1
- package/src/cli/ssh-cli.ts +2 -2
- package/src/cli/update-cli.ts +27 -27
- package/src/cli/worktree-cli.ts +3 -3
- package/src/cli.ts +5 -5
- package/src/commands/agents.ts +2 -2
- package/src/commands/auth-broker.ts +1 -1
- package/src/commands/config.ts +1 -1
- package/src/commands/dry-balance.ts +6 -6
- package/src/commands/launch.ts +2 -2
- package/src/commands/models.ts +1 -1
- package/src/commands/say.ts +1 -1
- package/src/commands/token.ts +5 -5
- package/src/commands/ttsr.ts +2 -2
- package/src/commands/worktree.ts +3 -3
- package/src/commit/agentic/prompts/system.md +1 -1
- package/src/commit/cli.ts +1 -1
- package/src/commit/index.ts +1 -1
- package/src/commit/pipeline.ts +1 -1
- package/src/commit/types.ts +1 -1
- package/src/config/mcp-schema.json +5 -5
- package/src/config/models-config-schema.ts +1 -1
- package/src/config/prompt-templates.ts +2 -2
- package/src/config/settings-schema.ts +20 -8
- package/src/config/settings.ts +1 -1
- package/src/config.ts +10 -10
- package/src/dap/session.ts +2 -2
- package/src/debug/protocol-probe.ts +1 -1
- package/src/debug/raw-sse-buffer.ts +3 -3
- package/src/debug/raw-sse.ts +2 -2
- package/src/discovery/builtin.ts +9 -9
- package/src/discovery/helpers.ts +13 -13
- package/src/discovery/omp-extension-roots.ts +4 -4
- package/src/discovery/omp-plugins.ts +2 -2
- package/src/discovery/substitute-plugin-root.ts +3 -3
- package/src/eval/py/runtime.ts +1 -1
- package/src/eval/rb/runner.rb +6 -6
- package/src/export/custom-share.ts +1 -1
- package/src/extensibility/custom-tools/loader.ts +3 -3
- package/src/extensibility/extensions/loader.ts +4 -4
- package/src/extensibility/hooks/loader.ts +1 -1
- package/src/extensibility/plugins/loader.ts +16 -10
- package/src/extensibility/plugins/manager.ts +10 -9
- package/src/extensibility/plugins/types.ts +15 -4
- package/src/internal-urls/docs-index.generated.txt +1 -1
- package/src/lsp/config.ts +4 -4
- package/src/lsp/index.ts +1 -1
- package/src/main.ts +1 -1
- package/src/mcp/client.ts +1 -1
- package/src/mcp/config-writer.ts +2 -2
- package/src/mcp/manager.ts +1 -1
- package/src/mcp/oauth-flow.ts +1 -1
- package/src/mcp/timeout.ts +2 -2
- package/src/mcp/transports/http.ts +1 -1
- package/src/memories/index.ts +82 -11
- package/src/memories/okf.ts +129 -0
- package/src/modes/components/__tests__/assistant-agent-label.test.ts +87 -0
- package/src/modes/components/assistant-message.ts +27 -0
- package/src/modes/components/extensions/extension-dashboard.ts +1 -1
- package/src/modes/controllers/mcp-command-controller.ts +2 -2
- package/src/modes/controllers/omfg-controller.ts +2 -2
- package/src/modes/controllers/ssh-command-controller.ts +2 -2
- package/src/modes/interactive-mode.ts +3 -1
- package/src/modes/setup-wizard/index.ts +1 -1
- package/src/prompts/agents/jeo.md +20 -10
- package/src/prompts/system/autolearn-guidance.md +2 -2
- package/src/prompts/system/system-prompt.md +10 -1
- package/src/prompts/tools/learn.md +1 -1
- package/src/prompts/tools/manage-skill.md +1 -1
- package/src/sdk.ts +8 -6
- package/src/secrets/index.ts +2 -2
- package/src/session/agent-session.ts +86 -6
- package/src/session/auth-broker-config.ts +6 -6
- package/src/session/snapcompact-savings-journal.ts +1 -1
- package/src/slash-commands/helpers/mcp.ts +1 -1
- package/src/system-prompt.test.ts +14 -14
- package/src/task/commands.ts +1 -1
- package/src/task/critic-gate.test.ts +181 -0
- package/src/task/critic-gate.ts +148 -0
- package/src/task/discovery.ts +5 -5
- package/src/task/executor.ts +1 -1
- package/src/task/index.ts +35 -2
- package/src/tools/acp-bridge.ts +2 -2
- package/src/tools/browser/launch.ts +1 -1
- package/src/tools/browser/tab-protocol.ts +1 -1
- package/src/tools/grep.ts +2 -2
- package/src/tools/index.ts +6 -1
- package/src/tools/plan-mode-guard.ts +16 -0
- package/src/tools/read.ts +1 -1
- package/src/tools/report-tool-issue.ts +2 -2
- package/src/utils/changelog.ts +2 -2
- package/src/utils/image-loading.ts +4 -4
- package/src/utils/image-resize.ts +5 -5
- package/src/web/search/index.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,20 +2,37 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [16.2.15] - 2026-07-02
|
|
6
|
+
### Changed
|
|
7
|
+
|
|
8
|
+
- Removed remaining `omp`-branded release surfaces from jeopi: CI runner labels and artifact names, Homebrew formula generation, issue templates, profile alias markers, plugin manifest discovery, local helper scripts, auth-broker/autoresearch/MCP/cache environment variables, and user-facing command examples now use `jeopi`/`JEOPI_*` names while keeping explicit `~/.omp` legacy migration references intact.
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
|
|
13
|
+
- Fixed the release workflow to refresh the root README changelog digest from `packages/coding-agent/CHANGELOG.md` during version bumps, so each release tag carries the same latest-five digest published on the branch.
|
|
14
|
+
|
|
15
|
+
## [16.2.14] - 2026-07-02
|
|
16
|
+
|
|
5
17
|
### Added
|
|
6
18
|
|
|
7
19
|
- Added `providers.anthropic.serverSideFallback` configuration option to opt into Anthropic's server-side-fallback beta chain, allowing Claude Fable 5 / Mythos 5 requests to automatically retry on Opus 4.8 when blocked by classifiers.
|
|
8
20
|
- Added `task.softRequestBudgetNotice` configuration option to enable subagent soft-budget wrap-up steering notices while keeping the graceful abort guard active.
|
|
9
21
|
- Added bundled `critic` (read-only plan-actionability gate with an `okay`/`iterate`/`reject` verdict schema) and `architect` (read-only architecture/spec reviewer with severity-rated findings and an inspected-files evidence contract) subagents, adapted from jeo-code's role prompts.
|
|
10
22
|
- Added the `/jeo` bundled workflow command: a spec-first pipeline (interview → frozen seed → plan → blocking critic gate → bounded execution → artifact-gated verification) adapted from jeo-code's deep-interview/ralplan/team/ultragoal flow.
|
|
23
|
+
- Added a runtime-enforced **critic gate**: when a `critic` subagent returns a non-`okay` verdict, the session hard-blocks execution in code — `task` refuses to spawn non-read-only agents and `write`/`edit`/patch reject working-tree mutations (the `local://` sandbox stays writable for seeds/plans) — until a fresh critic returns `okay` or the user sends a new message. A three-strike counter closes the iterate loop: after three consecutive non-okay verdicts even critic re-submission is refused, forcing a stop-and-report instead of an unbounded re-planning loop.
|
|
24
|
+
- Made the local memory backend's documents OKF (Open Knowledge Format v0.1) atoms: `MEMORY.md`, `memory_summary.md`, `raw_memories.md`, `rollout_summaries/*.md`, and `learned.md` now carry YAML frontmatter with the required `type`/`title`/`description` fields (plus `tags`, `timestamp`, and `thread_id`/`updated_at` extensions where relevant), so a jeopi memory root is consumable as a knowledge bundle by any OKF tool (e.g. jeo-skills' `okf` skill). Prompt-injection and consolidation read paths strip the frontmatter, keeping model-facing text unchanged; legacy fenceless files keep working. New `memories/okf.ts` exposes `renderOkfDocument`/`parseOkfDocument`/`stripOkfFrontmatter`/`validateOkfDocument` (the validator mirrors the jeo okf linter rules), with contract tests in `test/memories/okf-format.test.ts`.
|
|
25
|
+
- Added the **jeo identity** to jeopi's voice and TUI, ported from jeo-code: the system prompt now speaks as jeo (spec-first persona — lead with the answer, tight prose, real gates no theater), and the transcript leads every assistant segment with visible prose or a live thinking pulse with a bold accent `jeo` name label on its own line (jeo-code's `agentLabel()` look). Configurable via the new `ui.agentLabel` setting (appearance → Display; empty string disables, default `jeo`).
|
|
11
26
|
|
|
12
27
|
### Changed
|
|
13
28
|
|
|
14
|
-
-
|
|
29
|
+
- Classifier refusals (Anthropic `refusal`/`sensitive` stops) that exhaust the pinned retry fallback ladder — or hit a refusal with model fallback disabled / no chain configured — no longer surface a terminal error that ends the turn. Ported from jeo-code's rung-4 refusal recovery: the session now keeps resending the turn with capped exponential backoff (2s base doubling to a 30s cap, `PI_REFUSAL_BACKOFF_BASE_MS` override) after pruning the refusal from active context. Esc (`abortRetry`) breaks the wait immediately, and a 30-minute wall-clock budget (`PI_REFUSAL_BACKOFF_BUDGET_MS`) bounds the streak before falling back to the surfaced-error path. Refusal resends are exempt from `retry.maxRetries` and do not consume the transient-error retry budget, so a later 5xx in the same turn still gets its full attempt budget.
|
|
30
|
+
- Rebranded the CLI from `omp` to `jeopi`: the `bin` entry, dev launcher (`scripts/jeopi`), compiled binary output (`dist/jeopi`), release asset names (`jeopi-<os>-<arch>`), and all user-facing help/error/tip text now use the `jeopi` name. The config directory is renamed `~/.omp` → `~/.jeopi` (`jeopi-utils`' `CONFIG_DIR_NAME`); run `jeopi config migrate-legacy` once to move existing auth, sessions, and settings over (refuses to overwrite `~/.jeopi` if it already exists). Also fixed five call sites that had hardcoded `.omp` instead of reading `CONFIG_DIR_NAME` — most notably native task-agent discovery (`task/discovery.ts`), which was silently returning zero agents because its source filter no longer matched the renamed directory.
|
|
31
|
+
- Reworked the `/jeo` pipeline prompt around deep-research-style loop engineering: seeds and plans are passed by `local://` reference (never re-inlined), critic re-submissions carry delta-only notes with an explicit convergence contract (every `required_fixes` item addressed or rejected with evidence; unchanged re-submissions prohibited), and every loop is hard-bounded (interview ≤2 ask rounds, critic ≤2 iterations backed by the runtime's 3-strike stop, per-task retries ≤2, verification suite runs once) with mandatory reporting of anything a bound dropped.
|
|
15
32
|
- Infused jeo-code's working philosophy into the core system prompt and the `task` worker prompt: spec-first crystallization of vague asks, a running task-state picture, failure-lesson feedback (change the next attempt, split stuck subgoals), and an artifact gate (an acceptance criterion with no supporting command+result is reported unresolved, never implied met).
|
|
33
|
+
- Closed remaining jeo-code system-prompt gaps: third-party content (files, web, tool/MCP output) is now explicitly framed as untrusted data whose embedded directives carry no authority; unfamiliar APIs must be verified against source/types/docs before use, never called from memory; a passing test is never grounds to weaken, skip, or narrow it; status reports must describe only completed/in-progress work, never announce future work as a substitute for doing it, and must lead with a substantive answer rather than a bare disclaimer; and single-idea replies must stay prose, with reply length matched to the size of the change.
|
|
16
34
|
- Replaced the welcome-screen and setup-wizard π block mark with a "jeopi" block-glyph wordmark (typography only on ASCII surfaces), added the persona tagline "Encode intention. Decode software." to the welcome box, retuned the logo gradient to the brand's electric-blue→violet→hot-pink sweep, and updated the setup splash/outro to render the new mark (compact splash text is now `j e o p i`).
|
|
17
|
-
- Made the fork fully independent of the `@oh-my-pi` npm scope: all workspace packages
|
|
18
|
-
|
|
35
|
+
- Made the fork fully independent of the `@oh-my-pi` npm scope: all workspace packages published under unscoped names — CLI: `jeopi-cli` (binary command stays `jeopi`; the exact `jeopi` npm name is blocked by npm's typosquat filter as too similar to `joi`), libraries: `jeopi-utils`, `jeopi-ai`, `jeopi-catalog`, `jeopi-tui`, `jeopi-natives` (+ per-platform `jeopi-natives-<os>-<arch>` leaves), `jeopi-agent-core`, `jeopi-wire`, `jeopi-hashline`, `jeopi-mnemopi`, `jeopi-snapcompact`, `jeopi-stats`. Repository/homepage metadata repointed to `akillness/jeopi`, and `jeopi update` now targets this fork's GitHub releases, npm package, and Homebrew tap. Legacy `@oh-my-pi/pi-*` (plus `@mariozechner/pi-*` and `@earendil-works/pi-*`) plugin imports continue to resolve onto the renamed in-process packages through the legacy-pi compat shim.
|
|
19
36
|
- Significantly optimized session loading and rendering performance, including a 10x speedup for streaming reveals on large messages, 35% faster session resumes for large files using native streaming JSONL parsing, and reduced overhead for edit-patch fallbacks.
|
|
20
37
|
- Improved TUI responsiveness and reduced CPU usage during long-running tool sessions by throttling status-line redraws and optimizing subagent persistence checks.
|
|
21
38
|
- Updated the tester subagent prompt to allow skipping tests for trivial changes.
|
|
@@ -32,6 +49,7 @@
|
|
|
32
49
|
- Fixed RPC mode deferred shutdown (`pi.shutdown()`) and `abort_bash` commands from being blocked by active background bash processes.
|
|
33
50
|
- Fixed model discovery ignoring `NODE_EXTRA_CA_CERTS` and resolved a rare Bun garbage collection segfault during discovery.
|
|
34
51
|
- Fixed `task.maxConcurrency` and `task.maxRecursionDepth` limits being bypassed by sub-spawn paths or when queued spawns were cancelled.
|
|
52
|
+
- Fixed a `SYSTEM.md` dedup test that hardcoded the legacy `.omp` config-dir path, which broke once the config directory resolved through `getConfigDirName()`/`getConfigAgentDirName()` — now resolves both paths dynamically.
|
|
35
53
|
- Fixed various TUI and rendering issues, including macOS Ghostty `Command+V` image pasting, CJK history rendering across compactions, status-line redraw crashes with BigInt values, and overlapping rows in the subagent progress tree.
|
|
36
54
|
- Fixed `/copy code` and `/copy cmd` commands being treated as normal prompts instead of copying the requested blocks.
|
|
37
55
|
- Fixed legacy tool compatibility issues for `createReadTool`, `createGrepTool`, and extension validation failures for `omp install pi-lean-ctx`.
|
package/README.md
CHANGED
|
@@ -15,7 +15,7 @@ Package-specific references:
|
|
|
15
15
|
|
|
16
16
|
## Memory backends
|
|
17
17
|
|
|
18
|
-
The agent supports three mutually-exclusive memory backends, selected via the `memory.backend` setting (Settings → Memory tab, or `~/.
|
|
18
|
+
The agent supports three mutually-exclusive memory backends, selected via the `memory.backend` setting (Settings → Memory tab, or `~/.jeopi/config.yml`):
|
|
19
19
|
|
|
20
20
|
- `off` (default) — no memory subsystem runs.
|
|
21
21
|
- `local` — existing rollout-summarisation pipeline; writes `memory_summary.md` and consolidated artifacts under the agent dir.
|