Skip to content

ca-pi: build background bash execution + completion watchers #344

Description

@SUaDtL

Background

Pi's own docs (`usage.md:308`) confirm it "intentionally does not include ... background bash." Every `bash` call in Pi blocks the whole session until it completes — no way to kick off a long-running command and keep working while it runs, unlike Claude Code's `run_in_background` support.

Why this matters

Called out as a high-priority want, not just a nice-to-have — a real speed/throughput win for any workflow that involves long-running commands (test suites, builds, installs) during a session. Being fully blocking on every bash call is a real productivity tax compared to Claude Code.

Scope (as raised)

  1. Background execution — a way to launch a bash command without blocking the session, using Pi's extensibility (custom tool registration) since there's no native primitive.
  2. Completion watchers / tagging — some mechanism to be notified (or have a background job "tagged" so the agent/user knows) when a backgrounded command finishes, rather than having to poll manually.

Note

Given Pi's extension API is fairly rich (custom tools, process spawning already proven out by `dispatch.ts`'s subagent work, event hooks), there's a real chance we can build something better-designed than a bare background-bash primitive — worth exploring alongside the plan-mode/task-tracking issue (#TBD) since both lean on the same "build it ourselves with Pi's extensibility" approach.

No implementation yet — this issue is to track the want and scope the build.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions