@oh-my-pi/pi-coding-agent 16.2.7 → 16.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/dist/cli.js +3661 -3482
  3. package/dist/types/config/settings-schema.d.ts +97 -13
  4. package/dist/types/edit/hashline/filesystem.d.ts +1 -0
  5. package/dist/types/modes/components/mcp-add-wizard.d.ts +8 -0
  6. package/dist/types/modes/controllers/mcp-command-controller.d.ts +9 -0
  7. package/dist/types/session/agent-session.d.ts +1 -1
  8. package/dist/types/session/session-context.d.ts +0 -5
  9. package/dist/types/session/settings-stream-fn.d.ts +2 -2
  10. package/dist/types/stt/index.d.ts +1 -0
  11. package/dist/types/stt/stt-controller.d.ts +2 -0
  12. package/dist/types/stt/submit-trigger.d.ts +30 -0
  13. package/dist/types/task/index.d.ts +1 -1
  14. package/dist/types/task/types.d.ts +6 -6
  15. package/dist/types/tiny/models.d.ts +22 -8
  16. package/dist/types/tools/output-schema-validator.d.ts +10 -0
  17. package/package.json +12 -12
  18. package/src/commit/agentic/agent.ts +1 -1
  19. package/src/commit/agentic/prompts/system.md +1 -1
  20. package/src/commit/agentic/tools/analyze-file.ts +2 -2
  21. package/src/config/settings-schema.ts +54 -2
  22. package/src/debug/profiler.ts +7 -1
  23. package/src/discovery/builtin-rules/go-add-cleanup.md +32 -0
  24. package/src/discovery/builtin-rules/go-bench-loop.md +36 -0
  25. package/src/discovery/builtin-rules/go-exp-promoted.md +39 -0
  26. package/src/discovery/builtin-rules/go-ioutil.md +36 -0
  27. package/src/discovery/builtin-rules/go-join-hostport.md +29 -0
  28. package/src/discovery/builtin-rules/go-new-expr.md +44 -0
  29. package/src/discovery/builtin-rules/go-rand-v2.md +40 -0
  30. package/src/discovery/builtin-rules/go-range-int.md +45 -0
  31. package/src/discovery/builtin-rules/index.ts +16 -0
  32. package/src/edit/hashline/filesystem.ts +12 -0
  33. package/src/internal-urls/docs-index.generated.txt +1 -1
  34. package/src/mcp/oauth-flow.ts +35 -8
  35. package/src/modes/components/mcp-add-wizard.ts +43 -3
  36. package/src/modes/components/model-selector.ts +21 -9
  37. package/src/modes/controllers/event-controller.ts +9 -0
  38. package/src/modes/controllers/mcp-command-controller.ts +84 -3
  39. package/src/modes/controllers/tool-args-reveal.ts +1 -1
  40. package/src/modes/interactive-mode.ts +5 -4
  41. package/src/prompts/agents/tester.md +107 -0
  42. package/src/prompts/system/orchestrate-notice.md +2 -2
  43. package/src/prompts/system/system-prompt.md +2 -5
  44. package/src/prompts/system/thinking-loop-redirect.md +10 -0
  45. package/src/prompts/system/workflow-notice.md +1 -1
  46. package/src/prompts/tools/bash.md +1 -4
  47. package/src/prompts/tools/task.md +2 -9
  48. package/src/session/agent-session.ts +161 -24
  49. package/src/session/session-context.ts +13 -2
  50. package/src/session/settings-stream-fn.ts +12 -2
  51. package/src/stt/index.ts +1 -0
  52. package/src/stt/stt-controller.ts +31 -2
  53. package/src/stt/submit-trigger.ts +74 -0
  54. package/src/task/agents.ts +4 -4
  55. package/src/task/executor.ts +1 -1
  56. package/src/task/index.ts +18 -5
  57. package/src/task/types.ts +5 -5
  58. package/src/tiny/models.ts +10 -0
  59. package/src/tools/grep.ts +19 -1
  60. package/src/tools/output-schema-validator.ts +38 -0
  61. package/src/tools/yield.ts +52 -15
  62. package/src/prompts/agents/oracle.md +0 -54
package/CHANGELOG.md CHANGED
@@ -2,6 +2,59 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [16.2.9] - 2026-06-30
6
+
7
+ ### Breaking Changes
8
+
9
+ - Renamed the built-in quick_task subagent to sonic; update any task spawns or configurations referencing quick_task by name.
10
+
11
+ ### Added
12
+
13
+ - Added the llama3.2:3b local model option for memory and auto-thinking tasks, utilizing a quantized ONNX model.
14
+ - Added a built-in Tester subagent designed to write high-signal tests for behavior, invariants, and edge cases while avoiding redundant or low-value tests.
15
+ - Added a Speech-to-Text submit trigger setting to auto-submit dictation on release, on complete sentences, or via a spoken submit command.
16
+ - Added a loop-guard mechanism that detects thinking/response loops and injects a system notice during auto-retries to guide the model to break the pattern and take a concrete next step.
17
+
18
+ ### Changed
19
+
20
+ - Renamed the Speech-to-Text (STT) setting label from "TTS Submit Trigger" to "Speech-to-Text Submit Trigger".
21
+
22
+ ### Fixed
23
+
24
+ - Fixed an issue where mid-run compaction was incorrectly skipped when a persisted assistant display variant shared a persistence key but differed in content from the live message.
25
+ - Fixed duplicate placeholder cards being created when streamed tool blocks started with an empty ID.
26
+ - Fixed omp debug --profile failing on Bun by treating the optional --allow-natives-syntax flag as best-effort when v8.setFlagsFromString is unavailable.
27
+ - Fixed release binaries missing the compiled tiny-model Transformers.js version pin, preventing runtime resolution issues on certain platforms like Homebrew Darwin arm64.
28
+ - Fixed MCP OAuth flows silently falling back to a random redirect port when the preferred port (default 3000) was busy, which caused authentication failures with strict providers. The flow now fails fast with a configuration error when a static client ID is pinned, while dynamic registration flows continue to use fallback ports.
29
+ - Fixed /mcp reauth and /mcp add commands ignoring the Escape key during OAuth authentication, allowing users to cancel the flow immediately instead of waiting for the timeout.
30
+
31
+ ### Removed
32
+
33
+ - Removed the built-in oracle subagent.
34
+
35
+ ## [16.2.8] - 2026-06-30
36
+
37
+ ### Added
38
+
39
+ - Added built-in Go coding rules including `go-add-cleanup`, `go-bench-loop`, `go-exp-promoted`, `go-ioutil`, `go-join-hostport`, `go-new-expr`, `go-rand-v2`, and `go-range-int`
40
+
41
+ ### Changed
42
+
43
+ - Relaxed strict bash tool constraints regarding the use of search, grep, ls, and find commands
44
+
45
+ ### Fixed
46
+
47
+ - Fixed auto-compaction dead-ends by automatically triggering a shake rescue to elide oversized tails
48
+ - Improved compaction warning message to suggest running `/shake images` for irreducible image tails
49
+ - Fixed `grep`/`search` direct execution to accept JSON-array string `paths` for string-or-array inputs. ([#3873](https://github.com/can1357/oh-my-pi/issues/3873))
50
+ - Fixed auto-compaction dead-ending with "Compaction freed too little context to make progress" when a single recent turn (large tool output, heavy fenced/XML block) is itself bigger than the recovery band — `findCutPoint` can't cut inside one message, so the summarizer had no lever left. The guard now runs an artifact-backed `shake` elide pass over the oversized tail and re-tests headroom before pausing, and the remaining warning points at `/shake images` for image-only tails it can't elide. ([#3786](https://github.com/can1357/oh-my-pi/issues/3786))
51
+ - Fixed reviewer/`task` subagents whose incremental `yield` (`type: ["overall_correctness"]`, `type: ["findings"]`, …) carried a value that mismatched the matching property's sub-schema being silently accepted and then post-mortem rejected with `schema_violation` — opaquely swapping the agent's accepted output for an error blob. The yield tool now validates each incremental section's `data` against its top-level property's sub-schema (items schema for array-typed labels) and surfaces the same retry feedback as terminal yields, so models like `deepseek-v4-pro` that emit `"Correct"`/`"correct."`/`"approved"` for an enum field get up to three corrective retries; the existing `MAX_SCHEMA_RETRIES` override then accepts the value with `SUBAGENT_WARNING_SCHEMA_OVERRIDDEN` instead of losing the entire result. Unknown labels stay unconstrained ([#3870](https://github.com/can1357/oh-my-pi/issues/3870)).
52
+ - Fixed streaming tool-call previews (notably `write`) showing an empty body for the entire streaming phase by surfacing the partial JSON already in hand on the first reveal, then pacing only subsequent growth ([#3881](https://github.com/can1357/oh-my-pi/issues/3881)).
53
+ - Fixed hashline edit mode preserving UTF-8 BOM bytes on edited files. ([#3867](https://github.com/can1357/oh-my-pi/issues/3867))
54
+ - Fixed slow local LLM streams by forwarding persisted stream timeout settings (`providers.streamFirstEventTimeoutSeconds`, `providers.streamIdleTimeoutSeconds`) into model requests, so users can widen or disable watchdogs without environment variables. ([#3878](https://github.com/can1357/oh-my-pi/issues/3878))
55
+ - Fixed the bash interceptor blocking `echo` / `printf` redirects to `/dev/null`, `/dev/tty`, `/dev/stdout`, and `/dev/stderr` device sinks while still directing real file writes to the write tool. ([#3763](https://github.com/can1357/oh-my-pi/issues/3763))
56
+ - Fixed long snapcompact sessions re-sending multi-megabyte standing image archives on every provider request by enforcing a per-request frame byte budget, letting auto-compaction fall back to context-full summaries when snapcompact output is too large, and omitting legacy over-budget frames from rebuilt LLM contexts. ([#3792](https://github.com/can1357/oh-my-pi/issues/3792))
57
+
5
58
  ## [16.2.7] - 2026-06-30
6
59
 
7
60
  ### Breaking Changes