- name
- pilot-task-chain
- description
- >
- tags
- license
- AGPL-3.0
- compatibility
- >
- metadata
- author
- vulture-labs
- version
- 1.0
- openclaw
- requires
- bins
- homepage
- https://pilotprotocol.network
- allowed-tools
pilot-task-chain
Chain tasks into sequential pipelines where each step's output becomes the next step's input.
Commands
Submit first task
pilotctl --json task submit "$AGENT_1" --task "Fetch data from https://api.example.com/data"Wait for completion
TASK_ID="abc123"
while true; do
STATUS=$(pilotctl --json task list --type submitted | jq -r ".[] | select(.task_id == \"$TASK_ID\") | .status")
[ "$STATUS" == "completed" ] && break
sleep 2
doneExtract result and submit next task
RESULT=$(pilotctl --json task list --type submitted | jq -r ".[] | select(.task_id == \"$TASK_ID\") | .result")
pilotctl --json task submit "$AGENT_2" --task "Transform data: $RESULT"Workflow Example
Three-step pipeline (Fetch -> Transform -> Store):
#!/bin/bash
# Step 1: Fetch
FETCH_TASK=$(pilotctl --json task submit "$FETCH_AGENT" \
--task "Fetch data from API endpoint")
FETCH_TASK_ID=$(echo "$FETCH_TASK" | jq -r '.task_id')
while [ "$(pilotctl --json task list --type submitted | jq -r ".[] | select(.task_id == \"$FETCH_TASK_ID\") | .status")" != "completed" ]; do
sleep 2
done
FETCH_RESULT=$(pilotctl --json task list --type submitted | jq -r ".[] | select(.task_id == \"$FETCH_TASK_ID\") | .result")
# Step 2: Transform
TRANSFORM_TASK=$(pilotctl --json task submit "$TRANSFORM_AGENT" \
--task "Transform data: $FETCH_RESULT")
TRANSFORM_TASK_ID=$(echo "$TRANSFORM_TASK" | jq -r '.task_id')
while [ "$(pilotctl --json task list --type submitted | jq -r ".[] | select(.task_id == \"$TRANSFORM_TASK_ID\") | .status")" != "completed" ]; do
sleep 2
done
TRANSFORM_RESULT=$(pilotctl --json task list --type submitted | jq -r ".[] | select(.task_id == \"$TRANSFORM_TASK_ID\") | .result")
# Step 3: Store
STORE_TASK=$(pilotctl --json task submit "$STORE_AGENT" \
--task "Store data: $TRANSFORM_RESULT")
echo "Pipeline completed: $(echo "$STORE_TASK" | jq -r '.task_id')"Dependencies
Requires pilot-protocol skill, jq, and multiple agents with complementary capabilities.