Hi, I'm trying to build a simple 3-step workflow using Lobster:
Read .txt files from a local directory
- Summarize their content using an LLM
- Send the result to a Discord channel
- Environment:
macOS (Apple Silicon)
OpenClaw gateway running on 127.0.0.1:18789
Lobster installed from source (github.com/openclaw/lobster), built with pnpm install
lobster binary linked to PATH
Steps taken:
First I discovered that run: llm.invoke fails because llm.invoke is not a shell command β switching to pipeline: llm.invoke fixed that error.
Then I set OPENCLAW_URL=http://127.0.0.1:18789 as required.
Current blocker β 401 Unauthorized:
Error: llm.invoke request failed: 401 Unauthorized:
{"error":{"message":"Unauthorized","type":"unauthorized"}}
Questions:
How do I obtain OPENCLAW_TOKEN for local gateway auth? Is it in ~/.openclaw/openclaw.json? Is there a CLI command to retrieve it?
Is local gateway auth required when running Lobster on the same machine as the gateway, or can it be disabled?
Is pipeline: llm.invoke --provider openclaw the correct way to invoke the gateway LLM from a workflow file?
Working workflow file so far:
name: Youtube-fetch
steps:
-
id: lire-fichiers
run: >-
sh -c 'set -- /path/to/files/*.txt;
[ -f "$1" ] || { echo "No .txt files found." >&2; exit 1; };
cat "$@"' -
id: resumer
pipeline: >-
llm.invoke --provider openclaw --prompt "Summarize each file..."
stdin: $lire-fichiers.stdout -
id: envoyer-discord
run: >-
openclaw.invoke --tool message --arg action=send --arg channel=discord
--arg target=channel:CHANNEL_ID
stdin: $resumer.stdout
Documentation gaps noticed:
The README mentions OPENCLAW_TOKEN as optional but gives no indication of where to find it or how to generate it
No complete working example of llm.invoke with provider=openclaw in the docs
The distinction between run: (shell) and pipeline: (native Lobster) is mentioned but not clearly emphasized
Thanks for any help!