CLI tool for managing autonomous research agents with append-only state, instruction queues, and oversight.
brew tap 1645labs/tap
brew install julians-research-tracker
Or: go install github.com/1645labs/julians-research-tracker/cmd/research@latest
research init market-q1 --name "Q1 Market Analysis" --objective "Analyze competitor pricing and positioning"
export RESEARCH_SESSION_ID="$SESSION_KEY" # Track which agent is writing
research log market-q1 STEP_BEGIN --step 1 --payload '{"task":"gather sources"}'
# ... do work ...
research log market-q1 STEP_COMPLETE --step 1
research heartbeat market-q1
research status market-q1 --json
research context market-q1 --last 5 # Truncated context for prompts
research instruct market-q1 "Focus on enterprise segment" --priority URGENT
research stop-signal market-q1 # Request graceful stop
research pending market-q1 --json
research ack market-q1 --all # Acknowledge after processing
research check-stop market-q1 # Exit 0 = stop, Exit 1 = continue
| Command | Purpose | ||
|---|---|---|---|
| --------- | --------- | ||
init | Create project with objective | ||
| `list [--status active\ | done\ | all]` | List projects (includes needs_attention flag) |
show | Project details + recent events | ||
stop | Stop project, send STOP instruction | ||
archive | Archive completed project | ||
log | Log event (STEP_BEGIN, CHECKPOINT, BLOCKED, etc.) | ||
heartbeat | Update alive timestamp | ||
block | Mark blocked, needs input | ||
complete | Mark done | ||
status | Current state summary | ||
context | Truncated context for agent prompts | ||
instruct | Send instruction | ||
pending | List unacked instructions | ||
ack | Acknowledge instructions | ||
check-stop | Exit code: 0=stop, 1=continue | ||
| `audit | drift` | Log audit result |
STARTED, STEP_BEGIN, STEP_COMPLETE, CHECKPOINT, BLOCKED, UNBLOCKED, AUDIT_PASS, AUDIT_DRIFT, HEARTBEAT, DONE, STOPPED, TIMEOUT
1. research init <project> --objective "..."
2. sessions_spawn with task including:
- Project ID and objective
- Instructions to use research CLI for state
- Check stop signal before each step
- Log progress with heartbeat
3. Heartbeat monitors: research list --json | check needs_attention
4. Send instructions via: research instruct <project> "..."
while research check-stop $PROJECT; [ $? -eq 1 ]; do
research pending $PROJECT --json # Check instructions
research log $PROJECT STEP_BEGIN --step $STEP
# ... do work ...
research log $PROJECT STEP_COMPLETE --step $STEP
research heartbeat $PROJECT
STEP=$((STEP + 1))
done
research complete $PROJECT
research list --json includes needs_attention: true when:
SQLite at ~/.config/research-tracker/research.db (WAL mode, append-only events).
Run research db migrate after install. Schema auto-migrates on first use.
共 1 个版本