🐙
$ git clone https://github.com/can1357/oh-my-pi.git
@oh-my-pi/pi-agent-core
Fixed
- Improved the manual
/shakecommand to retain a small history of recent tool results, preventing the agent from losing its active working context.
@oh-my-pi/pi-ai
Breaking Changes
- Renamed
withGeminiThinkingLoopGuardtowithThinkingLoopGuard; the guard applies to Gemini, DeepSeek, and Grok model-id families.
Changed
- Updated OpenCode Go integration to use the official usage endpoint, removing hardcoded caps, enabling real-time credential validation, and routing multi-key pools based on rolling and weekly headroom.
- Optimized Anthropic prompt caching with rolling 5-minute breakpoints and idle refreshes to keep the prompt prefix warm.
Fixed
- Fixed Ollama chat adapter to correctly forward sampling parameters like temperature and topP to the provider.
- Fixed OpenAI agent turns ending prematurely after a web search with no visible answer, ensuring the agent continues processing the search results.
- Fixed a resource leak where completed model streams retained provider concurrency permits longer than necessary.
- Fixed image input support for qwen3.8-max and newer models when using DashScope compatible-mode.
- Fixed xAI usage reporting falling back to a stale cache when a new weekly cycle starts with 0% consumed credits.
- Fixed Together AI login validation failures by querying the authenticated models list instead of a hardcoded model.
- Fixed credential-health probes and usage fetches failing when using reference-stored API keys (such as environment variables or commands) by ensuring secrets are correctly resolved.
- Fixed Perplexity email-OTP login by preserving the session cookies required for verification.
- Fixed thinking configuration for OpenAI and Daybreak models to correctly send reasoning.effort: "none" when thinking is disabled.
- Fixed Grok runaway thinking streams bypassing the thinking-loop guard.
Removed
- Removed legacy local request-cost estimation machinery and database schemas previously used for OpenCode Go estimates.
@oh-my-pi/pi-catalog
Breaking Changes
- Removed
OpenAICompat.enableGeminiThinkingLoopGuard; thinking-loop eligibility is derived solely from themodel.idfamily.
Added
- Added first-party OpenAI Daybreak Blue, Daybreak Red, and GPT-5.6 Cyber models with full support for their documented API pricing (including long-context rates above 272K input), token limits, tools, and reasoning effort controls (off/low/medium/high/xhigh/max).
- Added calculateUncachedInputCost() to calculate prompt pricing against active context-length tiers without prompt caching.
Fixed
- Fixed Anthropic cache-write pricing to correctly honor mixed 5-minute and 1-hour TTL usage instead of incorrectly charging all writes at the 5-minute rate.
- Fixed Ollama Cloud DeepSeek V4 Flash and older reasoners to correctly apply the DeepSeek effort contract (e.g., low/high/max) instead of the generic effort ladder.
- Added a default request timeout to OpenAI-compatible model discovery to prevent stalled provider endpoints from hanging startup indefinitely.
- Fixed Anthropic cache-write pricing to honor mixed 5-minute and 1-hour TTL usage instead of charging every write at the 5-minute rate.
- Fixed Ollama Cloud DeepSeek V4 Flash (including dated/preview tags like
deepseek-v4-flash:0731) exposing the genericminimal/low/medium/high/xhigheffort ladder withoutmax; theollama-chattransport now applies the DeepSeek effort contract (Flash →low/high/max, older reasoners →high/max), matching the direct API and every other host (). - Bounded OpenAI-compatible model discovery with a default request timeout so a stalled provider
/modelsendpoint can no longer hang startup indefinitely inresolveModelDiscoveryFallback().
@oh-my-pi/hashline
Fixed
- Repaired mis-set replacement ranges using exact outside-row matches, indentation, tree-sitter structure, and a narrow pure-closer shape: opening comment fences and other syntax-essential edges are retained only when a parse-valid candidate satisfies those constraints; ambiguous placements are rejected.
@oh-my-pi/pi-natives
Fixed
- Fixed an issue where shell-internal background jobs (such as
yes >/dev/null &) could survive a one-shot shell session and consume CPU indefinitely after the command returned.
@oh-my-pi/omptype
Added
- Added
type.withJsonSchema(schema, json)to wrap a validation-only schema, ensuring JSON Schema emission yields the providedjsonverbatim even when nested inside objects, arrays, or unions. Schemas with defaults or output-changing morphs are rejected to prevent transformed outputs from being discarded.
@oh-my-pi/omp-stats
Added
- Added cost-weighted
cacheSavingsmetric alongsidecacheRate, accounting for cache-read discounts and write premiums against equivalent uncached prompt costs.
Fixed
- Ensured the embedded dashboard archive is byte-reproducible by sorting entries and zeroing tar and gzip timestamps during compilation.
@oh-my-pi/pi-tui
Fixed
- Fixed an issue where repeated pane-width adjustments or terminal resizing could corrupt native scrollback and soft-wrap behavior.
- Fixed an issue where scaled OSC 66 Markdown headings (such as "Large Headings" on Kitty) would render as invisible placeholders or get partially cleared after a redraw or terminal resize.
@oh-my-pi/pi-utils
Fixed
- Optimized performance of partial JSON parsing for long streaming tool-call arguments.
- Fixed Mermaid ASCII multi-word edge labels where routed lines would show through spaces.
What's Changed
- fix(tui): preserve scrollback across multiplexer width changes by
- fix(session): forward retry fallback events to extensions by
- fix(cli): surface actionable error when auth broker is unreachable by
- fix(utils): mask routed lines beneath edge labels by
- fix(discovery): support OpenCode JSONC configs by
- fix(launch): rearm broker idle shutdown on terminal settlement by
- fix(agent): reject cold revive that finishes after lifecycle dispose by
- fix(dap): drain runInTerminal debuggee stdout by
- fix(coding-agent): show scope in /ssh add hint by
- fix(coding-agent): ship omp:// docs to npm consumers by
- fix(coding-agent): interpret inline /skill in mode-command prompts by
- fix(extensions): preserve unsafe schemas during plugin install by
- fix(ai): preserve perplexity otp session cookies by
- fix(coding-agent): lowercase the hindsight project label by
- fix(coding-agent): restore is*ToolResult guards on legacy pi shim by
- docs(collab): clarify relay self-hosting availability by
- fix(rpc): strip snapcompact archive from compact result by
- fix(session): resolve wire-name aliases in hasBuiltInTool by
- feat(lsp): add Astral ty as built-in Python primary LSP server by
- fix(coding-agent): gate prompt tool mentions on session tool availability by
- fix(agent): support array model overrides in dashboard by
- fix(cli): handle standalone profile aliases by
- chore: force refresh provider api key command by
- fix(ai): continue after answerless hosted search by
- fix(omp): prevent false reset fireworks by
- fix(coding-agent): skip idle mid-turn persistence waits by
- fix(ai): release provider permit before stream completion by
- Fix open browser behaviour on Windows by
- fix(ai): stop stripping images from multimodal qwen3.8-max on DashScope by
- fix(coding-agent): suppress circular plan-yolo startup note by
- fix(mcp): show config source in startup failures by
- fix(catalog): bound openai-compatible model discovery with default timeout by
- fix(tui): keep scaled OSC 66 heading reserved rows intact on repaint by
- fix(ai): handle omitted creditUsagePercent in fresh xAI weekly periods by
- fix(ai): validated together login against models endpoint by
- fix(catalog): apply DeepSeek effort contract on Ollama Cloud by
- fix(usage): use authoritative OpenCode Go quotas by
- fix(coding-agent): normalize WebP for STB-backed models by
- fix(natives): stop detached internal shell jobs by
- fix(eval): allow awaiting Python workflow helpers by
- fix(mnemopi): contain lifecycle hook failures by
- fix(bash): resolve msys drive paths in utility builtins by
- docs: reconcile session dir layout with the 17.2.9 hashed-scheme revert by
- test(coding-agent): fix pre-existing session-manager legacy migration test failure by
- fix(tui,utils): remove O(N²) hot paths when streaming long tool-call args by
- fix(coding-agent): preserve ArkType command API compatibility by
- fix(compaction): manual /shake keeps a recent tail of tool results by
- fix(agent): fit-check retry fallback before switching models by
- fix(advisor): preserve advisor fallback role ownership by
- fix(build): set CMAKE_POLICY_VERSION_MINIMUM for audiopus_sys in cargo env by
- fix(mcp): close stale initial connections by
- fix(tui): keep large transcript rebuilds responsive by
- fix(lsp): correct workspace edit failure handling by
- fix(lsp): isolate document overlays across sessions by
- fix(lsp): preserve workspace resource options by
- fix(lsp): reject unsupported rust-analyzer snippet edits by
- fix(lsp): roll back rename_file edits when the move fails by
- fix(lsp): abort rename_file when willRenameFiles fails on a supporting server by
- fix(lsp): fail diagnostics when every applicable server fails by
- fix(lsp): synchronize applied workspace edits by
- fix(discovery): bound WSL host-home probe with a hard timeout by
New Contributors
Full Changelog: v17.2.15...v17.3.0
Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf github.com.
Wie bewertest du diesen Beitrag?
1 Klick Feedback Teilen mit Netzwerk & Team:
Hat Ihnen dieser Tipp / Anleitung geholfen?
Community-Analysen & Experten-Meinungen 0
Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf „ Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum 🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Tipp: Mit Pfeiltasten [ ← ] und [ → ] blättern
SOCIAL SHARE CARD GENERATOR