# Tasks API Tasks API는 LLM 에이전트에게 다단계 작업을 추적하는 구조화된 방법을 제공합니다. 작업은 현재 마인드로 범위가 지정되며 세션 간에 유지되므로, 에이전트는 중단한 곳에서부터 작업을 재개할 수 있습니다. ## 엔드포인트 ### GET /mind/tasks 현재 마인드의 모든 작업을 나열합니다. ```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") ``` ## 다음 단계 - [작업 기반 워크플로우](/docs/llm-cookbook/task-driven-workflow) - [Cron 및 Scheduler](/docs/api/cron)