@ryan_nookpi/pi-extension-bash-async
Bounded background shell jobs for finite non-interactive commands in pi.
Package details
Install @ryan_nookpi/pi-extension-bash-async from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@ryan_nookpi/pi-extension-bash-async- Package
@ryan_nookpi/pi-extension-bash-async- Version
0.2.1- Published
- Sep 2, 2026
- Downloads
- 430/mo · 32/wk
- Author
- ryan_nookpi
- License
- MIT
- Types
- extension
- Size
- 64.8 KB
- Dependencies
- 0 dependencies · 4 peers
Pi manifest JSON
{
"extensions": [
"./index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
bash-async
Bounded background shell jobs for finite, non-interactive commands in pi.
Install
pi install npm:@ryan_nookpi/pi-extension-bash-async
Do not load this package alongside another extension that registers bash_async.
Tool interface
The extension registers the bash_async tool with five actions:
start: launch a finite command in the backgroundstatus: inspect one joboutput: read retained job outputkill: stop a queued or running joblist: list retained jobs
Use start when the next action does not need the command result immediately. Completion or failure arrives automatically through a follow-up message, so do not poll status, output, or list, and do not run sleep loops while waiting. Query output only when an early result is useful or the user asks for it. A repeated status, output, or list query that would return the same information as the previous one fails with a rate-limit error until the job state changes or the cooldown expires.
TUI programs, REPLs, commands requiring stdin, and selection menus are unsupported.
Limits and retention
- Commands time out after 1,800 seconds by default. Set
timeoutto0to disable the timeout. - Up to four jobs run concurrently by default. Set
PI_BASH_ASYNC_MAX_CONCURRENCYto a positive integer to change the limit. - The poll cooldown is 10 seconds. Set
PI_BASH_ASYNC_POLL_COOLDOWN_MSto another value, or to0to disable rate limiting. - The extension retains at most 20 active or queued jobs.
- Closed logs are stored under the operating system's temporary directory, normally in
pi-bash-async, and retained for up to 24 hours. - Closed logs share a 1 GiB quota. Older closed logs may be pruned before 24 hours when the quota is exceeded.
- Pi session shutdown aborts active jobs, settles them, and clears the running-jobs widget. Jobs do not continue across Pi shutdown.