@protolabsai/proto 0.26.17 → 0.26.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +11 -0
  2. package/cli.js +4782 -4012
  3. package/package.json +2 -2
package/README.md CHANGED
@@ -268,6 +268,17 @@ br create --title "Fix auth bug" --type task --priority 1
268
268
  br close <id> --reason "Fixed in commit abc123"
269
269
  ```
270
270
 
271
+ ## Long-running Background Shells
272
+
273
+ proto captures the output of shell commands run with `is_background: true` to disk so detached processes never silently lose their stdout. The agent gets a stable task ID and an absolute output file path it can read at any time, plus an automatic `<task_notification>` on the next turn when the task exits.
274
+
275
+ - **Output file:** `<projectTempDir>/<sessionId>/tasks/<taskId>.output` — written by the OS via shell-level redirection, so it keeps growing even after the parent wrapper exits.
276
+ - **Completion:** when the bg process exits, the next user prompt is prefixed with a `<task_notification>` block carrying `task_id`, `output_file`, `status` (completed/failed/killed), and `exit_code`. The agent can then `read_file` the output for results.
277
+ - **`/bg`** lists running and recently-completed background tasks.
278
+ - **`bg_stop` tool** — sends SIGTERM to the process group, escalating to SIGKILL after a 3s grace.
279
+
280
+ This is what fixes the "agent runs an eval, can't find the results" failure mode that plagued earlier versions where backgrounded `&` commands streamed into nowhere.
281
+
271
282
  ## Memory
272
283
 
273
284
  proto has a persistent memory system inspired by Claude Code. Memories are individual markdown files with YAML frontmatter, organized by type and stored per-project or globally.