agent-harnesslisted
Install: claude install-skill slogsdon/skills-workflows
# Agent Harness Orchestration
You are orchestrating external agent harnesses (pi, hermes) via the `agent-turn` wrapper script. You are the coordinator — you decide what prompt to send each turn, read the response, and determine next steps.
## Prerequisites
The `agent-turn` script ships alongside this skill. Resolve it at runtime:
```bash
SKILL_DIR="$(dirname "$(realpath "${BASH_SOURCE[0]:-$0}")")"
AGENT_TURN="$SKILL_DIR/agent-turn"
```
Use `$AGENT_TURN` in place of `agent-turn` throughout all Bash calls in this skill.
> **Note on pi sessions:** pi uses UUID-based sessions internally. The script maps your human-readable session IDs to pi UUIDs automatically — pass a stable name like `20260512-my-task` and the script handles the rest. Session data lives in `/tmp/agent-sessions/pi-sessions/` and the name→UUID map in `/tmp/agent-sessions/pi-session-map`.
## Session ID Convention
Generate a stable session ID at the start of a task and reuse it across all turns:
```bash
SESSION="$(date +%Y%m%d)-$(echo "$TASK_DESCRIPTION" | tr ' ' '-' | tr '[:upper:]' '[:lower:]' | cut -c1-30)"
echo "$SESSION" # e.g. 20260512-summarize-quarterly-report
```
Store it in context — you'll need it for every subsequent turn.
## Invoking a Turn
```bash
"$AGENT_TURN" <tool> <session-id> "<prompt>"
# tool: pi | hermes
# session-id: stable string, reused across turns
# prompt: the message for this turn
```
Output is printed to stdout and logged to `/tmp/agent-sessions/<session-id>.log`.
## Turn-b