feat(cli): manage workspace scripts (#1992)

* feat(cli): manage workspace scripts

* docs: document workspace script management

---------

Co-authored-by: Mohamed Boudra <boudra.moha@gmail.com>
This commit is contained in:
Matt Cowger
2026-07-24 06:12:14 -07:00
committed by GitHub
parent 21597bdc1b
commit 21404fbdec
22 changed files with 800 additions and 55 deletions

View File

@@ -1,6 +1,6 @@
---
title: CLI
description: "Paseo CLI reference: manage agents, workspaces, schedules, daemons, and permissions from your terminal."
description: "Paseo CLI reference: manage agents, workspaces, scripts, schedules, daemons, and permissions from your terminal."
nav: CLI
order: 3
category: Getting started
@@ -86,6 +86,20 @@ paseo workspace archive <workspace-id>
Add `--forge <name>` to PR checkout when Paseo cannot infer the forge from the source checkout. See [Git worktrees](/docs/worktrees) for setup hooks and services.
## Workspace scripts
List, start, and stop the scripts configured in a workspace's `paseo.json`:
```bash
paseo script ls
paseo script start web
paseo script stop web
```
By default, Paseo selects the workspace whose directory is the current directory. Pass `--cwd <path>` to select a different directory, or `--workspace <workspace-id>` when a directory has multiple workspaces. These commands also accept `--host` and the standard output options such as `--json`.
The output includes each script's lifecycle and supervised terminal ID. Services also include their assigned port, proxy URL, and health. See [Git worktrees](/docs/worktrees#scripts-and-services) for `paseo.json` configuration.
## Listing agents
```bash

View File

@@ -1,6 +1,6 @@
---
title: MCP reference
description: Reference for the Paseo tools agents use to manage agents, workspaces, terminals, and schedules.
description: Reference for the Paseo tools agents use to manage agents, workspaces, scripts, terminals, and schedules.
nav: MCP reference
order: 33
category: Orchestration
@@ -55,6 +55,18 @@ MCP does not expose an agent-detach tool. Detaching is a manual user action in t
For worktree isolation, `create_workspace` accepts the same useful choices as the app: branch off from a base, check out an existing branch, or check out a pull request. The worktree remains an implementation detail of the workspace lifecycle.
### Workspace scripts
These tools manage scripts configured in a workspace's `paseo.json`. Each requires an explicit `workspaceId`; start and stop also require the configured `scriptName`.
| Tool | Function |
| ------------------------ | --------------------------------------------------------------------------------------- |
| `list_workspace_scripts` | List configured scripts with lifecycle, terminal, port, proxy URL, and health metadata. |
| `start_workspace_script` | Start a configured script through Paseo's managed launcher. |
| `stop_workspace_script` | Stop a running script through its supervised terminal. |
See [Git worktrees](/docs/worktrees#scripts-and-services) for `paseo.json` configuration.
### Terminals
| Tool | Function |

View File

@@ -114,6 +114,8 @@ Commands run with the worktree as `cwd`. Use `$PASEO_SOURCE_CHECKOUT_PATH` to re
`scripts` are named commands you can run inside a worktree on demand. Mark one as a _service_ and Paseo supervises it as a long-running process, assigns it a port, and routes HTTP traffic to it through the daemon's reverse proxy.
Run them from the app, or manage them from automation with [`paseo script`](/docs/cli#workspace-scripts) and the [workspace-script MCP tools](/docs/mcp#workspace-scripts).
### Plain scripts
```json