Commit Graph
9511 Commits
Author SHA1 Message Date
Daniel Anderson-Little a20690a40b feat(tui): add hidden tool activity mode 2026-08-02 22:59:48 -04:00
can1357 aa014717dc refactor(coding-agent): restored static computer worker start hook
- The pi-utils/mime subpath fix made the computer worker graph lazy-safe,
  so the dynamic-import dispatch added for laziness is no longer needed;
  cli.ts and the bundled-host fixture statically import
  startComputerWorker() per the no-inline-import rule.
- worker-entry keeps the selector-guarded direct-source auto-start; the
  worker-selector test now pins the exported hook contract. Verified
  --no-addons CLI startup stays addon-free and the bundled/compiled
  worker-host tests pass.
2026-08-03 00:19:58 +02:00
can1357 0156ddcbe1 fix(coding-agent): kept computer worker graph off CLI startup
- The PR #7205 merge left cli.ts statically importing startComputerWorker,
  dragging the computer worker graph (and pi_natives via the pi-utils
  barrel) into normal CLI startup; --version died under --no-addons and
  dotenv loaded before profile bootstrap. worker-entry is now a
  self-starting side-effect module dispatched via dynamic import like
  every other worker selector, and utils/clipboard.ts imports the mime
  constant from its submodule instead of the barrel.
- Repointed the clipboard test spy at @oh-my-pi/pi-natives/clipboard —
  spying the barrel never intercepted the subpath the code imports, so
  the real native bridge ran (X11 timeouts on headless CI).
- Refreshed the pinned HTML export template digest and the scout gate
  phrase the system-prompt rewrite changed.
2026-08-03 00:02:29 +02:00
can1357 0b1649784a fix: removed unused service-tier import after launch-help relocation 2026-08-02 21:25:58 +02:00
can1357 10625d2e9a Merge PR #7376: feat(coding-agent): add OpenAI service tier override (@paralin)
# Conflicts:
#	packages/coding-agent/src/commands/launch.ts
2026-08-02 21:22:41 +02:00
can1357 9b3e9a5d0e Merge PR #7126: feat(omp): navigate conversation turns in tree (@oleksoleksoleks) 2026-08-02 21:21:37 +02:00
can1357 3dd4b6b226 Merge PR #7197: feat(coding-agent): configure web search timeout (@will-bogusz) 2026-08-02 21:21:37 +02:00
can1357 05af20a9f2 fix(coding-agent): prevented recursive argument placeholder expansion in substituteArgs
Extracted the coding-agent scope of PR #7077 (@santhreal): single-pass
placeholder matcher so positional values containing literal $@ or
$ARGUMENTS are never re-expanded. The unrelated utils formatting changes
in that PR were not taken.
2026-08-02 21:19:45 +02:00
can1357 73b834dcbc style: applied biome formatting to merged evaluator fixes 2026-08-02 21:01:20 +02:00
can1357 f1c7eda7de Merge PR #7205: perf(cli): keep root help off runtime graph (@eggpeat)
# Conflicts:
#	packages/coding-agent/src/cli-commands.ts
#	packages/coding-agent/src/cli/args.ts
2026-08-02 20:59:12 +02:00
can1357 f7480294b4 fix(agent): track rewritten xdev approval tiers 2026-08-02 20:57:06 +02:00
can1357 721c12382c Merge PR #7314: fix(agent): skip prewalk switch on read-only xd:// device calls (@roboomp) 2026-08-02 20:57:06 +02:00
can1357 71ca62cb1e Merge PR #7318: fix(coding-agent): support Wayland image paste (@roboomp)
# Conflicts:
#	packages/coding-agent/src/utils/clipboard.ts
2026-08-02 20:54:38 +02:00
can1357 846f7977dd Merge PR #7246: fix(coding-agent): let customDirectories skills win over default-path duplicates (@zhang17-24) 2026-08-02 20:53:47 +02:00
can1357 965d1239cf Merge PR #7310: fix(omp): refresh context budget after shake (@oleksoleksoleks) 2026-08-02 20:53:46 +02:00
can1357 5d6ec7f073 Merge PR #7397: fix(session): make project directories safe and unique (@roboomp) 2026-08-02 20:53:36 +02:00
can1357 980c78538b Merge PR #7395: fix(postmortem): resolve native hard-exit per call (@roboomp) 2026-08-02 20:53:35 +02:00
can1357 912807cdbe Merge PR #7394: fix(update): detect active Linux libc (@BrianHotopp) 2026-08-02 20:53:35 +02:00
can1357 46c66ac03a fix(setup): always resolve interpreter during setup probe 2026-08-02 20:53:34 +02:00
can1357 46f780fedd Merge PR #7390: fix(setup): align Python setup probe with eval (@paolofraz) 2026-08-02 20:53:34 +02:00
can1357 83e23a58e6 Merge PR #7387: fix(tui): keep working title across non-terminal agent_end (@roboomp) 2026-08-02 20:53:22 +02:00
can1357 81babef622 fix(coding-agent): avoid redundant faint sequence in status cap 2026-08-02 20:53:22 +02:00
can1357 7f20bafc03 Merge PR #7385: fix(coding-agent): keep focused status bar caps bright (@art-wiedzmin) 2026-08-02 20:53:21 +02:00
can1357 ca2385b0ec Merge PR #7382: fix(cli): restore piped custom session persistence (@roboomp) 2026-08-02 20:53:21 +02:00
can1357 2b4c33569b Merge PR #7367: fix(mnemopi): surface scoped recall failures (@roboomp) 2026-08-02 20:53:21 +02:00
can1357 3f61117994 Merge PR #7362: fix(auth): guard config-value resolvers against case-insensitive env hijack (@roboomp) 2026-08-02 20:53:20 +02:00
can1357 bdc2072440 Merge PR #7356: fix(mnemopi): bound embed worker IPC and reap on timeout (@roboomp) 2026-08-02 20:53:20 +02:00
can1357 221d91d4ae Merge PR #7355: fix(mnemopi): bound locked retention during teardown (@roboomp) 2026-08-02 20:53:20 +02:00
can1357 d8881e3fd6 Merge PR #7350: fix(eval): preserve console for ConPTY Python kernels (@roboomp) 2026-08-02 20:53:19 +02:00
can1357 160bdd05c3 fix(agent): keep session scout notices live 2026-08-02 20:52:57 +02:00
can1357 3de8c3a476 Merge PR #7344: fix(agent): stop leaking scout into prompts when it is disabled (@szavadsky)
# Conflicts:
#	packages/coding-agent/src/prompts/system/system-prompt.md
2026-08-02 20:52:56 +02:00
can1357 abebe8c2a8 Merge PR #7333: fix(tui): compact linear branch continuations (@roboomp) 2026-08-02 20:52:07 +02:00
can1357 3b118015e5 Merge PR #7331: fix(tui): preserve loop after cancelling iteration (@roboomp) 2026-08-02 20:52:07 +02:00
can1357 6e4a0e8125 Merge PR #7327: fix(compaction): stop shake from re-eliding artifact recovery reads (@jwmacd) 2026-08-02 20:52:07 +02:00
can1357 7d6eb47314 feat: implemented ps shell builtin with sorting and formatting options
- Added the `ps` shell builtin with BSD and procps selection forms, custom formatting, and sorting capabilities.
- Implemented the `sanitize_process_command` helper to clean process command names and arguments.
- Updated the bash prompt template and package changelogs to document the new builtin.
2026-08-02 20:40:19 +02:00
can1357 a872d77068 chore: cleanup dumb tests 2026-08-02 20:39:23 +02:00
can1357 212f0b1e00 feat(coding-agent/config): supported custom timeout configuration for model discovery
- Added an optional `timeoutMs` property to the provider discovery configuration schema with validation.
- Passed custom discovery timeout values through model discovery and metadata probing functions.

Fixes #6952
2026-08-02 20:32:31 +02:00
can1357 d0c13aab3e fix(pi-natives/desktop): corrected macos accessibility and input routing
- Refused background keyboard delivery for multi-window macOS applications to prevent ambiguous keystroke routing.
- Set `AXMain` and `AXFocused` attributes during foreground macOS input delivery to ensure proper window activation.
- Activated Chromium renderer accessibility trees lazily during window snapshots to avoid capturing only browser chrome.
- Used `AXDescription` as a fallback title for unnamed macOS accessibility controls in snapshots and queries.
2026-08-02 20:29:57 +02:00
roboomp 4a1eebf076 fix(session): made project directories safe and unique
- Replaced option-like lossy cwd names with portable readable names keyed by the canonical cwd hash.
- Split colliding legacy buckets by recorded session cwd while preserving session artifacts.
- Added migration and collision regression coverage.

Fixes #7396
2026-08-02 18:03:18 +00:00
can1357 a6ca9e84e0 feat(coding-agent/prompts): refined system prompt instructions and constraints
- Update tool usage, exploration, delegation, and execution workflow guidelines in the system prompt.
- Tighten constraints on completion, completeness, evidence output, and yielding behaviors.
2026-08-02 19:46:56 +02:00
can1357 ef852af986 feat(computer): implemented modular desktop backend and script workflows
- Replaced monolithic desktop native bindings and action batching with a modular cross-platform backend structure supporting Wayland, X11, macOS, and Win32.
- Updated the computer tool schema and supervisor to execute persistent JavaScript script runs with timeout clamping and asynchronous tool calling.
- Integrated accessibility (AX) tree snapshotting, node querying, and bounds-based hit testing across platform desktop layers.
- Added native clipboard bindings and updated coding-agent prompts, renderers, and tests to validate script-based computer workflows.
2026-08-02 19:46:25 +02:00
roboomp e27b0e81ec fix(postmortem): resolve native hard-exit per call
The postmortem module bound the native hard-exit once at module init
(process.reallyExit.bind(process)). The shipped bundle defers this
module's evaluation until first access, which can land inside a
withHostGuard window where process.reallyExit is the ExtensionExitError-
throwing stub; .bind() then froze that stub permanently, so every later
host-owned exit (SIGHUP 129, SIGINT 130, fatal 1) threw and re-entered
the unhandled-rejection fatal path in a loop (exit 129 storm).

Resolve the native exit on every call instead of binding at init, and
have withHostGuard stamp its throwing replacement with the native
primitive it shadows so a signal arriving mid-guard still exits (#6488)
without the guard poisoning later exits (#7393).

Fixes #7393
2026-08-02 17:32:12 +00:00
Brian Hotopp 2f9a8dcf61 fix(update): detect active Linux libc 2026-08-02 13:20:02 -04:00
can1357 92b50faacc feat(coding-agent/lsp): implemented lsp multiplexer server and shared daemon lifecycle
- Added an LSP multiplexer server, protocol definitions, and daemon lifecycle management to route traffic across sessions.
- Introduced `lsp.shared` settings configuration and SDK session creation support for shared language servers.
- Migrated shared daemon ensure helpers into a central launch module with updated import references.
- Added comprehensive unit tests and fake LSP server fixtures covering muxing, sharing, caching, and restarts.
2026-08-02 18:15:22 +02:00
Alexander Kirilin 18720808e5 fix(omp): exclude remote-compacted shake savings 2026-08-02 12:12:07 -04:00
Alexander Kirilin 5c67743ae0 fix(omp): align shake correction anchor selection 2026-08-02 12:12:07 -04:00
Alexander Kirilin e50138f2a6 fix(omp): refresh context budget after shake 2026-08-02 12:12:07 -04:00
can1357 4a946e2cfc fix(coding-agent/tools): serialized tab grouping operations in the relay bridge
- Serialized group and ungroup operations to prevent duplicate tab group creation races.
- Queued and serially drained tab grouping requests in the relay bridge to prevent overlapping RPCs.
- Mirrored tab group titles to session storage and healed duplicate groups during background service worker recovery.
- Renamed run-cancellation utility to run-scope and updated corresponding module and test references.
2026-08-02 18:07:07 +02:00
can1357 7c3b24ddf2 feat: implemented cross-platform window discovery and targeting capabilities
- Added window discovery, targeting, and frame validation for macOS, Windows, and Linux platforms.
- Updated computer tool and protocol definitions to support listing and targeting specific application windows.
- Refactored native computer tool exposure to function-only representation across models.
- Updated documentation and test suites to reflect window-scoped computer control capabilities.
2026-08-02 17:35:29 +02:00
Paolo Frazzetto 24ecd0269c fix(setup): align Python setup probe with eval 2026-08-02 14:55:52 +02:00