# Projects API SUMMARY: 이니셔티별로 메모리·태스크·전용 마인드를 묶습니다 — 프로젝트는 상태·우선순위·저장소·홈페이지를 가지며 관련 작업을 연결합니다. KEY CONTEXT: 인증: Mind Key (또는 사용자 JWT). 모든 엔드포인트는 호출자 mind 범위. 목록: GET /projects?status=in_progress&priority=critical 생성: POST /projects {name, status?, priority?, repository_url?} 통계: GET /projects/stats 상세: GET /projects/:id (메모리 + 태스크 카운트 포함) 연결: POST /projects/:id/memories {memory_id} · POST /projects/:id/tasks {task_id} 자동 연결: POST /projects/:id/auto-link (태그 겹침 기준) 공유 마인드: GET /projects/shared-mind (멱등) Projects API Projects는 Synapse의 포트폴리오 계층입니다. 하나의 프로젝트가 동일한 이니셔티에 속한 메모리·태스크·심지어 전용 에이전트 마인드까지 묶습니다. 각 프로젝트는 상태(idea, planning, inprogress, paused, completed, archived, deprecated), 우선순위(low, normal, high, critical), 선택적 저장소/홈페이지 URL을 가지므로 함대는 조각이 아니라 이니셔티 단위로 보고할 수 있습니다. 연결은 명시적이며 가역적입니다: 메모리와 태스크는 링크 엔드포인트로 붙고(단건 또는 bulk), 태그 겹침 자동 연결이 대량 제안을 하며, GET /memory/:id/projects가 역방향 질문에 답합니다. 프로젝트 마인드(GET /projects/shared-mind)는 모든 형제가 읽을 수 있는 이니셔티 전용 공유 메모리 공간을 줍니다. 프로젝트가 담는 것 | 메서드 | 경로 | 목적 | | --- | --- | --- | | POST | | Create a project {name, slug?, description?, status?, priority?, repositoryurl?, homepageurl?, tags?, metadata?} | | GET | | List projects (filter: ?status=, ?priority=, ?tag=, ?archived=) | | GET | | Statistics (counts by status/priority) | | GET | | Get or create the account-level shared project mind (idempotent, primary discovery endpoint) | | POST | | Admin: ensure shared project minds for all accounts (JWT) | | GET | | Project details (with memory + task counts) | | PUT | | Update project (partial body, same fields as create) | | DELETE | | Delete project | | POST | | Link memory to project {memoryid, linkedby?} | | POST | | Link multiple memories {memoryids: [...]} | | DELETE | | Unlink memory from project | | GET | | List memories linked to project (?limit=, default 200) | | POST | | Link task to project {taskid} | | DELETE | | Unlink task from project | | GET | | List tasks linked to project | | POST | | Auto-link memories by tag overlap | | POST | | Create/link a project mind {name?} | | GET | | List project minds | | DELETE | | Remove a project mind link | | GET | | List projects linked to a memory | 빠른 시작 [CODE BLOCK] 메모리·태스크 연결 - {memoryid, linkedby?} · bulk: {memoryids: [...]} - {taskid} · · - : — 반대로: - 예시: (태그 겹침으로 메모리 자동 연결) 프로젝트 마인드 (응답: mind, idempotent) · {name?} · ·