AgentShell can now open the agents' native interactive UIs in tmux, alongside its existing
headless execution API. This release also adds persistent Pi package and local extension management.
Interactive tmux sessions
AgentShell.open_interactive()opens a native agent UI throughTmuxExecutionHostfor all
seven supported agents. Native permission prompts remain available.- Sessions expose terminal controls and structured events where the harness supports them;
session.capabilitiesreports the available features. TmuxPlacement.split_pane(direction="right" | "down")adds pane placement alongside new
sessions and windows. Existing session names are matched exactly.- Cleanup removes only the resources owned by the run, preserving neighbouring panes and sessions.
Packages and local extensions
- Adds the shared
PackageSpec,add_package,list_packages, andremove_packageAPI.
Pi is the first implementation; other adapters report unsupported operations clearly. - Supports exact npm versions, Git sources with explicit refs, local extension files, and package
directories. Registrations persist for later AgentShell instances through Pi's existing settings. - Local files remain in place, including symbolic-link identities. Removing a local registration
preserves the source files. - Source validation, persistence checks, timeouts, and cancellation handling surface installation
failures, including cases where Pi exits successfully without saving its settings.
Compatibility
- No intended breaking changes to existing headless APIs or execution defaults.
- Interactive sessions remain experimental and opt-in. Feature support varies by harness;
tmux is required, and this host currently supportsNoIsolationonly. - Package management uses the caller's existing Pi configuration. Callers own container isolation;
per-run resource selection and individual resource toggles are outside this initial API. - No new Python runtime dependencies.
See usage examples and package implementation details.
Validation
- Unit/integration CI and the tag build passed: 1,102 tests passed and 18 were skipped on the
hosted runner. The wheel and source archive report version 0.4.0 and contain the runtime files. - Five real Pi package smoke tests passed without downloads or model requests.
- Independent Astra x-high review completed; its symbolic-link finding was fixed and verified.
Full changelog: v0.3.2...v0.4.0