Move lobster integration to optional plugin tool

This commit is contained in:
Vignesh Natarajan
2026-01-17 20:18:54 -08:00
parent 147fccd967
commit b2650ba672
9 changed files with 326 additions and 419 deletions

View File

@@ -1,64 +0,0 @@
---
title: Lobster
description: Run Lobster pipelines (typed workflows) as a first-class Clawdbot tool.
---
# Lobster
The `lobster` tool lets Clawdbot run Lobster pipelines as a **local-first, typed workflow runtime**.
This is designed for:
- Deterministic orchestration (move multi-step tool workflows out of the LLM)
- Human-in-the-loop approvals that **halt and resume**
- Lower token usage (one `lobster.run` call instead of many tool calls)
## Security model
- Lobster runs as a **local subprocess**.
- Lobster does **not** manage OAuth or secrets.
- Side effects still go through Clawdbot tools (messaging, files, etc.).
Recommendations:
- Prefer configuring `lobsterPath` as an **absolute path** to avoid PATH hijack.
- Use Lobster approvals (`approve`) for any side-effectful step.
## Actions
### `run`
Run a pipeline in tool mode.
Example:
```json
{
"action": "run",
"pipeline": "exec --json \"echo [1]\" | approve --prompt 'ok?'",
"lobsterPath": "/absolute/path/to/lobster",
"timeoutMs": 20000
}
```
### `resume`
Resume a halted pipeline.
Example:
```json
{
"action": "resume",
"token": "<resumeToken>",
"approve": true,
"lobsterPath": "/absolute/path/to/lobster"
}
```
## Output
Lobster returns a JSON envelope:
- `ok`: boolean
- `status`: `ok` | `needs_approval` | `cancelled`
- `output`: array of items
- `requiresApproval`: approval request object (when `status=needs_approval`)