Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Lobster workflow runtime for deterministic pipelines with approval gates. Use when: (1) Running multi-step automations that need human approval before side effects, (2) Monitoring PRs/issues for changes, (3) Processing data through typed JSON pipelines, (4) Email triage or batch operations, (5) Any workflow that should halt and ask before acting. Lobster saves tokens by running deterministic pipelines instead of re-planning each step.
Lobster workflow runtime for deterministic pipelines with approval gates. Use when: (1) Running multi-step automations that need human approval before side effects, (2) Monitoring PRs/issues for changes, (3) Processing data through typed JSON pipelines, (4) Email triage or batch operations, (5) Any workflow that should halt and ask before acting. Lobster saves tokens by running deterministic pipelines instead of re-planning each step.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Contribute: Source code & PRs welcome at github.com/guwidoe/lobster-skill Workflow runtime for AI agents โ typed pipelines with approval gates.
# Set alias (adjust path to your install location) LOBSTER="node /home/molt/clawd/tools/lobster/bin/lobster.js" # Or install globally: npm install -g @clawdbot/lobster # Then use: lobster '<pipeline>'
# Run pipeline (human mode - pretty output) $LOBSTER '<pipeline>' # Run pipeline (tool mode - JSON envelope for integration) $LOBSTER run --mode tool '<pipeline>' # Run workflow file $LOBSTER run path/to/workflow.lobster # Resume after approval $LOBSTER resume --token "<token>" --approve yes|no # List commands/workflows $LOBSTER commands.list $LOBSTER workflows.list
CommandPurposeexec --json --shell "cmd"Run shell, parse stdout as JSONwhere 'field=value'Filter objectspick field1,field2Project fieldshead --n 5Take first N itemssort --key field --descSort itemsgroupBy --key fieldGroup by keydedupe --key fieldRemove duplicatesmap --wrap keyTransform itemstemplate --text "{{field}}"Render templatesapprove --prompt "ok?"Halt for approvaldiff.last --key "mykey"Compare to last run (stateful)state.get key / state.set keyRead/write persistent statejson / tableRender output
# Monitor PR for changes (stateful - remembers last state) $LOBSTER "workflows.run --name github.pr.monitor --args-json '{\"repo\":\"owner/repo\",\"pr\":123}'" # Monitor PR and emit message only on change $LOBSTER "workflows.run --name github.pr.monitor.notify --args-json '{\"repo\":\"owner/repo\",\"pr\":123}'"
When a pipeline hits approve, it returns: { "status": "needs_approval", "requiresApproval": { "prompt": "Send 3 emails?", "items": [...], "resumeToken": "eyJ..." } } To continue: $LOBSTER resume --token "eyJ..." --approve yes
# List recent PRs, filter merged, show as table $LOBSTER 'exec --json --shell "gh pr list --repo owner/repo --json number,title,state --limit 20" | where "state=MERGED" | table' # Get data, require approval, then process $LOBSTER run --mode tool 'exec --json --shell "echo [{\"id\":1},{\"id\":2}]" | approve --prompt "Process these?" | pick id | json' # Diff against last run (only emit on change) $LOBSTER 'exec --json --shell "gh pr view 123 --repo o/r --json state,title" | diff.last --key "pr:o/r#123" | json'
YAML/JSON files with steps, conditions, and approval gates: name: pr-review-reminder steps: - id: fetch command: gh pr list --repo ${repo} --json number,title,reviewDecision - id: filter command: jq '[.[] | select(.reviewDecision == "")]' stdin: $fetch.stdout - id: notify command: echo "PRs needing review:" && cat stdin: $filter.stdout approval: required Run: $LOBSTER run workflow.lobster --args-json '{"repo":"owner/repo"}'
Lobster can call Clawdbot tools via clawd.invoke: $LOBSTER 'clawd.invoke --tool message --action send --args-json "{\"target\":\"123\",\"message\":\"hello\"}"' Requires CLAWD_URL and CLAWD_TOKEN environment variables.
Lobster stores state in ~/.lobster/state/ by default. Override with LOBSTER_STATE_DIR.
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.