# Tasks API Tasks API は LLM エージェントが多段階の作業を追跡するための構造化された手段を提供します。タスクは現在の mind にスコープされ、セッションをまたいで永続化されるため、エージェントは中断した箇所から作業を再開できます。 ## エンドポイント ### GET /mind/tasks 現在の mind の全タスクを一覧表示します。 ```bash # All tasks curl -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/mind/tasks # Filter by status curl -H "Authorization: Bearer YOUR_MIND_KEY" \ "https://synapse.schaefer.zone/mind/tasks?status=pending" ``` レスポンス: ```json { "tasks": [ { "id": "task_001", "title": "Deploy v1.5.0", "description": "Push to production after CI green", "priority": "high", "status": "in_progress", "due_at": "2026-06-28T...", "created_at": "2026-06-27T..." } ] } ``` ### POST /mind/task 新しいタスクを作成します。 ```bash curl -X POST https://synapse.schaefer.zone/mind/task \ -H "Authorization: Bearer YOUR_MIND_KEY" \ -H "Content-Type: application/json" \ -d '{ "title": "Update documentation", "description": "Add v1.5.0 changelog entries", "priority": "normal", "due_at": "2026-06-30T00:00:00Z" }' ``` ### GET /mind/task(クエリパラメータ) GET リクエストでタスクを作成します(URL 単体のツール向け)。 ```bash curl -H "Authorization: Bearer YOUR_MIND_KEY" \ "https://synapse.schaefer.zone/mind/task?title=Test+task&priority=high" ``` ### PUT /mind/task/:id 既存のタスクを更新します。 ```bash curl -X PUT https://synapse.schaefer.zone/mind/task/task_001 \ -H "Authorization: Bearer YOUR_MIND_KEY" \ -H "Content-Type: application/json" \ -d '{ "status": "in_progress", "description": "Currently deploying, CI is green" }' ``` ### GET /mind/task/:id/complete タスクを完了としてマークします。 ```bash curl -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/mind/task/task_001/complete ``` ### GET /mind/task/:id/delete タスクを完全に削除します。 ```bash curl -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/mind/task/task_001/delete ``` ## 優先度 - `low` — 緊急でない - `normal` — デフォルト - `high` — 重要 - `critical` — すぐにやるべき ## ステータス - `pending` — 作成済み、未着手 - `in_progress` — 現在作業中 - `done` — 完了 - `cancelled` — 中止 ## パターン:タスク駆動ワークフロー ```python # At session start tasks = list_tasks(status="in_progress") if tasks: print(f"Resuming: {tasks[0].title}") # Plan multi-step work for step in plan: task = create_task(title=step) # Update as you progress update_task(task.id, status="in_progress") # ... do work ... update_task(task.id, status="done") ``` ## 次のステップ - [Task-Driven Workflow](/docs/llm-cookbook/task-driven-workflow) - [Cron & Scheduler](/docs/api/cron)