Raw Protocol
Write handlers in any language without an SDK using the raw stdin/stdout protocol.Protocol Overview
TaskDaemon communicates with handlers via:- Input: JSON task objects sent to stdin (one per line)
- Output: JSON result objects written to stdout (one per line)
Input Format
Each line on stdin is a JSON object:| Field | Type | Description |
|---|---|---|
task_id | string | Unique task identifier (UUID) |
task_type | string | Handler type from config |
task_data | object | Arbitrary input data from client |
attempt | number | Current attempt number (0-indexed) |
Output Format
Write one JSON object per line to stdout.Success Response
Error Response
| Field | Type | Description |
|---|---|---|
status | string | "success" or "error" |
result | any | Result data (success only) |
error | string | Error message (error only) |
retryable | boolean | Whether to retry (error only, default: false) |