Protocol for external systems to queue tasks for Claude Code agents. Tasks written to tasks/queue.md, picked up at session start or during /sprint.
External systems (Telegram bots, GitHub Actions, cron jobs, event buses) can queue tasks for Claude Code by writing to tasks/queue.md.
Each queued task is a markdown section:
## Queued: 2026-03-24T17:00:00
- **Source**: telegram / github / cron / event-bus
- **Task**: [description of what needs to be done]
- **Issue**: [ID if applicable, e.g., FIT-234]
- **Priority**: P0 (critical) / P1 (high) / P2 (normal) / P3 (low)
- **Agent**: [suggested agent or "auto" for router to decide]
- **Context**: [any additional context, error logs, etc.]
if [ -f tasks/queue.md ] && [ -s tasks/queue.md ]; then
QUEUED=$(grep -c "^## Queued:" tasks/queue.md 2>/dev/null || echo 0)
echo "📋 $QUEUED queued task(s) in tasks/queue.md — review before starting"
fi
Agent should:
tasks/queue.mdtasks/current.md, remove from queue.mdtasks/queue.md for new entries# Append to tasks/queue.md in the project directory
with open(f"{project_path}/tasks/queue.md", "a") as f:
f.write(f"\n## Queued: {datetime.now().isoformat()}\n")
f.write(f"- **Source**: telegram\n")
f.write(f"- **Task**: {task_description}\n")
f.write(f"- **Issue**: {issue_id}\n")
f.write(f"- **Priority**: {priority}\n")
f.write(f"- **Agent**: auto\n\n")
- name: Queue task for Claude Code
run: |
echo "" >> tasks/queue.md
echo "## Queued: $(date -Iseconds)" >> tasks/queue.md
echo "- **Source**: github" >> tasks/queue.md
echo "- **Task**: Deploy failed. Diagnose: ${{ steps.deploy.outputs.error }}" >> tasks/queue.md
echo "- **Priority**: P0" >> tasks/queue.md
echo "- **Agent**: devops" >> tasks/queue.md
# Append to queue when project stalls
echo "" >> "$PROJECT_PATH/tasks/queue.md"
echo "## Queued: $(date -Iseconds)" >> "$PROJECT_PATH/tasks/queue.md"
echo "- **Source**: event-bus" >> "$PROJECT_PATH/tasks/queue.md"
echo "- **Task**: Project stalled >10 days. Run scan, identify blockers." >> "$PROJECT_PATH/tasks/queue.md"
echo "- **Priority**: P2" >> "$PROJECT_PATH/tasks/queue.md"
echo "- **Agent**: researcher" >> "$PROJECT_PATH/tasks/queue.md"
tasks/queue.mdtasks/current.md