전체 문서
이 페이지 목차
- Operation 색인
- GET /api/llm
- POST /api/llm
- POST /api/llm/test
- GET /api/llm/records
- DELETE /api/llm/records
- GET /api/llm/records/tasks
- GET /api/llm/records/by-model
- GET /api/llm/records/{id}
- GET /api/chat/mentions
- POST /api/chat
- POST /api/chat/upload
- GET /api/conversations
- POST /api/conversations
- POST /api/conversations/delete/batch
- PATCH /api/conversations/{id}
- PATCH /api/conversations/{id}/profile
- DELETE /api/conversations/{id}
- GET /api/conversations/{id}/messages
- POST /api/conversations/{id}/messages
- POST /api/conversations/{id}/stop
- GET /api/conversations/{id}/messages/{seq}
- GET /api/agents
- POST /api/agents
- GET /api/agents/{key}
- PATCH /api/agents/{key}
- DELETE /api/agents/{key}
- PUT /api/agents/{key}/config
- PUT /api/agents/{key}/prompt
- POST /api/agents/{key}/prompt/reset
- PUT /api/agents/{key}/wrapup
- POST /api/agents/{key}/wrapup/reset
- PUT /api/agents/{key}/wrapup/task-timeout
- POST /api/agents/{key}/wrapup/task-timeout/reset
- GET /api/agents/{key}/triggers
- POST /api/agents/{key}/triggers
- GET /api/agents/{key}/prompts
- GET /api/agents/{key}/variables
- POST /api/agents/{key}/prompt/preview
- GET /api/agents/{key}/visibility
- PUT /api/agents/{key}/visibility
- GET /api/tools
- PUT /api/tools/{key}
- POST /api/tools/custom
- POST /api/tools/custom/test
- PUT /api/tools/custom/{key}
- DELETE /api/tools/custom/{key}
- POST /api/tools/{key}/reset
- GET /api/mcp
- POST /api/mcp
- DELETE /api/mcp/{id}
- GET /api/mcp/{id}/tools
- POST /api/mcp/{id}/refresh
- GET /api/skills
- POST /api/skills
- POST /api/skills/upload
- DELETE /api/skills/{name}
- GET /api/skills/missing
- GET /api/skills/{name}/usage
- PUT /api/skills/{name}/meta
- POST /api/skills/{name}/dirs
- GET /api/skills/{name}/files
- GET /api/skills/{name}/files/{file...}
- PUT /api/skills/{name}/files/{file...}
- DELETE /api/skills/{name}/files/{file...}
- GET /api/visibility/{kind}/{id}
- POST /api/visibility/toggle
- GET /api/visibility/skill/{name}
- POST /api/visibility/skill/toggle
- GET /api/llm/profiles
- POST /api/llm/profiles
- DELETE /api/llm/profiles/{id}
- POST /api/llm/profiles/active
- GET /api/llm/retry-policy
- POST /api/llm/retry-policy
- GET /api/llm/pool
- POST /api/llm/pool/reset
- POST /api/llm/models
- GET /api/conversations/{id}/side-questions
- POST /api/conversations/{id}/side-questions
- DELETE /api/conversations/{id}/side-questions
- GET /api/side-questions/{requestID}/events
- POST /api/side-questions/{requestID}/cancel
- 이 페이지의 확인 한계
Agent·LLM·Tool·관리 API 전수 참조
agent, LLM, tool, MCP, skill, company, intercept와 sync 영역의 등록 operation을 전수 색인한다. 이 페이지는 route/address/auth/handler 요약이고 field-level 계약은 API 의미 schema가 소유한다.
분모 · 이 페이지 82개 / 전체 261개. route 등록·auth·직접 handler는 C다. 요청/응답 semantic은 operation별 C/P/U를 분리하며 route 수를 semantic 완료율로 쓰지 않는다.
Operation 색인
| operation | handler | auth | 입력 | status | schema |
|---|---|---|---|---|---|
GET /api/llm |
getLLM |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401 |
P |
POST /api/llm |
setLLM |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/500 |
P |
POST /api/llm/test |
testLLM |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401 |
P |
GET /api/llm/records |
pgListLLMRecords |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query model,page,session,size,task | 200/401/500 |
P |
DELETE /api/llm/records |
pgDeleteLLMRecords |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query task | 200/400/401/500 |
P |
GET /api/llm/records/tasks |
pgLLMTasks |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500 |
P |
GET /api/llm/records/by-model |
pgTokenByModel |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query task | 200/400/401/500 |
P |
GET /api/llm/records/{id} |
pgGetLLMRecord |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/400/401/404 |
P |
GET /api/chat/mentions |
searchChatMentions |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query cursor,kind,q | 200/400/401/500/503 |
P |
POST /api/chat |
chat |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query task; JSON | 200/202/400/401/404/409/500 |
P |
POST /api/chat/upload |
chatUpload |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query id,scope; multipart/form-data | 200/400/401/404/409/500 |
P |
GET /api/conversations |
pgListConversations |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500/503 |
P |
POST /api/conversations |
pgCreateConversation |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/404/413/500/503 |
P |
POST /api/conversations/delete/batch |
pgDeleteConversationsBatch |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/413/500/503 |
P |
PATCH /api/conversations/{id} |
pgRenameConversation |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; JSON | 200/400/401/404/413/500/503 |
P |
PATCH /api/conversations/{id}/profile |
pgUpdateConversation |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; JSON | 200/400/401/404/413/500/503 |
C |
DELETE /api/conversations/{id} |
pgDeleteConversation |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/400/401/404/500/503 |
P |
GET /api/conversations/{id}/messages |
pgConversationMessages |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; query before,limit,since | 200/400/401/404/500/503 |
P |
POST /api/conversations/{id}/messages |
pgSendConversationMessage |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; JSON | 202/400/401/404/409/500/503 |
C |
POST /api/conversations/{id}/stop |
pgStopConversation |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/400/401/404/500/503 |
C |
GET /api/conversations/{id}/messages/{seq} |
pgConversationMsgDetail |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id,seq | 200/400/401/404/500/503 |
P |
GET /api/agents |
pgListAgents |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500/503 |
P |
POST /api/agents |
pgCreateAgent |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/409/500/503 |
P |
GET /api/agents/{key} |
pgGetAgent |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/401/404/500/503 |
P |
PATCH /api/agents/{key} |
pgUpdateAgent |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key; JSON | 200/400/401/404/500/503 |
C |
DELETE /api/agents/{key} |
pgDeleteAgent |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/400/401/404/500/503 |
P |
PUT /api/agents/{key}/config |
pgSaveAgentConfig |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key; JSON | 200/400/401/404/500/503 |
P |
PUT /api/agents/{key}/prompt |
pgSavePrompt |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key; JSON | 200/400/401/404/500/503 |
P |
POST /api/agents/{key}/prompt/reset |
pgResetPrompt |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/400/401/404/500/503 |
P |
PUT /api/agents/{key}/wrapup |
pgSaveWrapup |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key; JSON | 200/400/401/404/500/503 |
C |
POST /api/agents/{key}/wrapup/reset |
pgResetWrapup |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/401/404/500/503 |
P |
PUT /api/agents/{key}/wrapup/task-timeout |
pgSaveTaskTimeoutWrapup |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key; JSON | 200/400/401/404/500/503 |
C |
POST /api/agents/{key}/wrapup/task-timeout/reset |
pgResetTaskTimeoutWrapup |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/401/404/500/503 |
P |
GET /api/agents/{key}/triggers |
pgListTriggers |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/401/404/500/503 |
P |
POST /api/agents/{key}/triggers |
pgCreateTrigger |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key; JSON | 200/400/401/404/500/503 |
P |
GET /api/agents/{key}/prompts |
pgListPromptVersions |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/401/404/500/503 |
P |
GET /api/agents/{key}/variables |
pgPromptVars |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/401/404/500/503 |
P |
POST /api/agents/{key}/prompt/preview |
pgPreviewPrompt |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key; JSON | 200/401/404/500/503 |
P |
GET /api/agents/{key}/visibility |
pgGetAgentVisibility |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/401/404/500/503 |
P |
PUT /api/agents/{key}/visibility |
pgSetAgentVisibility |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key; JSON | 200/400/401/404/500/503 |
C |
GET /api/tools |
pgListTools |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500/503 |
P |
PUT /api/tools/{key} |
pgUpdateTool |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key; JSON | 200/400/401/404/500/503 |
C |
POST /api/tools/custom |
pgCreateCustomTool |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/409/500/503 |
P |
POST /api/tools/custom/test |
pgTestCustomTool |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/503 |
P |
PUT /api/tools/custom/{key} |
pgUpdateCustomTool |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key; JSON | 200/400/401/500/503 |
C |
DELETE /api/tools/custom/{key} |
pgDeleteCustomTool |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/401/500/503 |
P |
POST /api/tools/{key}/reset |
pgResetTool |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path key | 200/401/404/500/503 |
C |
GET /api/mcp |
pgListMCP |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500/503 |
P |
POST /api/mcp |
pgSaveMCP |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/500/503 |
P |
DELETE /api/mcp/{id} |
pgDeleteMCP |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/401/500/503 |
P |
GET /api/mcp/{id}/tools |
pgMCPTools |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/401/500/503 |
P |
POST /api/mcp/{id}/refresh |
pgRefreshMCP |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/401/404/500/502/503 |
P |
GET /api/skills |
fsListSkills |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500 |
P |
POST /api/skills |
fsCreateSkill |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 201/400/401/409/500 |
P |
POST /api/skills/upload |
fsUploadSkill |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query overwrite; multipart/form-data | 201/400/401/409/500 |
P |
DELETE /api/skills/{name} |
fsDeleteSkill |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path name | 200/400/401/500/503 |
P |
GET /api/skills/missing |
fsMissingSkills |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query limit | 200/401/500/503 |
P |
GET /api/skills/{name}/usage |
fsSkillUsage |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path name; query limit | 200/400/401/500/503 |
P |
PUT /api/skills/{name}/meta |
fsUpdateSkillMeta |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path name; JSON | 200/400/401/404/500 |
C |
POST /api/skills/{name}/dirs |
fsCreateDir |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path name; JSON | 201/400/401/404/500 |
P |
GET /api/skills/{name}/files |
fsListFiles |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path name | 200/400/401/404/500 |
P |
GET /api/skills/{name}/files/{file...} |
fsReadFile |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path name,file | 200/400/401/404/500 |
P |
PUT /api/skills/{name}/files/{file...} |
fsWriteFile |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path name,file; JSON | 200/400/401/404/500 |
C |
DELETE /api/skills/{name}/files/{file...} |
fsDeletePath |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path name,file | 200/400/401/404/500 |
P |
GET /api/visibility/{kind}/{id} |
pgResourceVisibility |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path kind,id | 200/401/500/503 |
P |
POST /api/visibility/toggle |
pgToggleVisibility |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/500/503 |
C |
GET /api/visibility/skill/{name} |
pgSkillVisibility |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path name | 200/401/500/503 |
P |
POST /api/visibility/skill/toggle |
pgToggleSkillVisibility |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/500/503 |
C |
GET /api/llm/profiles |
pgListProfiles |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500/503 |
P |
POST /api/llm/profiles |
pgSaveProfile |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/500/503 |
P |
DELETE /api/llm/profiles/{id} |
pgDeleteProfile |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/401/404/409/500/503 |
P |
POST /api/llm/profiles/active |
pgActivateProfile |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/500/503 |
C |
GET /api/llm/retry-policy |
pgGetLLMRetryPolicy |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/503 |
P |
POST /api/llm/retry-policy |
pgSaveLLMRetryPolicy |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/500/503 |
P |
GET /api/llm/pool |
pgLLMPoolStatus |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/503 |
P |
POST /api/llm/pool/reset |
pgLLMPoolReset |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/503 |
P |
POST /api/llm/models |
pgListModels |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401 |
P |
GET /api/conversations/{id}/side-questions |
handleSideQuestions |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; query before | 200/400/401/404/500/503 |
P |
POST /api/conversations/{id}/side-questions |
handleSideQuestions |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; JSON | 200/202/400/401/404/409/429/500/503 |
P |
DELETE /api/conversations/{id}/side-questions |
handleSideQuestions |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/400/401/404/500/503 |
C |
GET /api/side-questions/{requestID}/events |
sideEvents |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path requestID | 200/401/404/500 |
P |
POST /api/side-questions/{requestID}/cancel |
cancelSideRequest |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path requestID | 200/401/404/500 |
C |
GET /api/llm
GET /api/llm · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · llm family · GET /api/llm registration이 `getLLM`를 선택 · handler-get-api-llm
- 계약 사용 · GET /api/llm · operation별 request/response/error/completion 계약 · handler-get-api-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getLLM · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/llm
POST /api/llm · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · llm family · POST /api/llm registration이 `setLLM`를 선택 · handler-post-api-llm
- 계약 사용 · POST /api/llm · operation별 request/response/error/completion 계약 · handler-post-api-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | setLLM · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/llm/test
POST /api/llm/test · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · llm family · POST /api/llm/test registration이 `testLLM`를 선택 · handler-post-api-llm-test
- 계약 사용 · POST /api/llm/test · operation별 request/response/error/completion 계약 · handler-post-api-llm-test
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/llm · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | testLLM · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/llm/records
GET /api/llm/records · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/commands.go · llm family · GET /api/llm/records registration이 `pgListLLMRecords`를 선택 · handler-get-api-llm-records
- 계약 사용 · GET /api/llm/records · operation별 request/response/error/completion 계약 · handler-get-api-llm-records
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/llm-records · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-llm-records
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgListLLMRecords · server/commands.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query model, page, session, size, task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
DELETE /api/llm/records
DELETE /api/llm/records · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/commands.go · llm family · DELETE /api/llm/records registration이 `pgDeleteLLMRecords`를 선택 · handler-delete-api-llm-records
- 계약 사용 · DELETE /api/llm/records · operation별 request/response/error/completion 계약 · handler-delete-api-llm-records
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/llm-records · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-llm-records
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgDeleteLLMRecords · server/commands.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/llm/records/tasks
GET /api/llm/records/tasks · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/commands.go · llm family · GET /api/llm/records/tasks registration이 `pgLLMTasks`를 선택 · handler-get-api-llm-records-tasks
- 계약 사용 · GET /api/llm/records/tasks · operation별 request/response/error/completion 계약 · handler-get-api-llm-records-tasks
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/llm-records · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-llm-records
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgLLMTasks · server/commands.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/llm/records/by-model
GET /api/llm/records/by-model · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/commands.go · llm family · GET /api/llm/records/by-model registration이 `pgTokenByModel`를 선택 · handler-get-api-llm-records-by-model
- 계약 사용 · GET /api/llm/records/by-model · operation별 request/response/error/completion 계약 · handler-get-api-llm-records-by-model
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgTokenByModel · server/commands.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/llm/records/{id}
GET /api/llm/records/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/commands.go · llm family · GET /api/llm/records/{id} registration이 `pgGetLLMRecord`를 선택 · handler-get-api-llm-records-id
- 계약 사용 · GET /api/llm/records/{id} · operation별 request/response/error/completion 계약 · handler-get-api-llm-records-id
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /function/llm-records · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-llm-records
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgGetLLMRecord · server/commands.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/chat/mentions
GET /api/chat/mentions · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/chat_mentions.go · chat family · GET /api/chat/mentions registration이 `searchChatMentions`를 선택 · handler-get-api-chat-mentions
- 계약 사용 · GET /api/chat/mentions · operation별 request/response/error/completion 계약 · handler-get-api-chat-mentions
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | searchChatMentions · server/chat_mentions.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query cursor, kind, q · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/chat
POST /api/chat · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · chat family · POST /api/chat registration이 `chat`를 선택 · handler-post-api-chat
- 계약 사용 · POST /api/chat · operation별 request/response/error/completion 계약 · handler-post-api-chat
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | chat · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query task · body JSON |
| status/error | 직접 관찰 200, 202, 400, 401, 404, 409, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · agent turn을 background context에서 실행할 수 있음; activity/stop/terminal event를 확인 |
POST /api/chat/upload
POST /api/chat/upload · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/chatupload.go · chat family · POST /api/chat/upload registration이 `chatUpload`를 선택 · handler-post-api-chat-upload
- 계약 사용 · POST /api/chat/upload · operation별 request/response/error/completion 계약 · handler-post-api-chat-upload
이 대상을 사용하는 기능·모듈·계약 · 3개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
- 의존 / 실행 · /function/tasks · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | chatUpload · server/chatupload.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query id, scope · body multipart/form-data |
| status/error | 직접 관찰 200, 400, 401, 404, 409, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/conversations
GET /api/conversations · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/conversations.go · conversations family · GET /api/conversations registration이 `pgListConversations`를 선택 · handler-get-api-conversations
- 계약 사용 · GET /api/conversations · operation별 request/response/error/completion 계약 · handler-get-api-conversations
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgListConversations · server/conversations.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/conversations
POST /api/conversations · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/conversations.go · conversations family · POST /api/conversations registration이 `pgCreateConversation`를 선택 · handler-post-api-conversations
- 계약 사용 · POST /api/conversations · operation별 request/response/error/completion 계약 · handler-post-api-conversations
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgCreateConversation · server/conversations.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 413, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/conversations/delete/batch
POST /api/conversations/delete/batch · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/conversations.go · conversations family · POST /api/conversations/delete/batch registration이 `pgDeleteConversationsBatch`를 선택 · handler-post-api-conversations-delete-batch
- 계약 사용 · POST /api/conversations/delete/batch · operation별 request/response/error/completion 계약 · handler-post-api-conversations-delete-batch
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgDeleteConversationsBatch · server/conversations.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 413, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
PATCH /api/conversations/{id}
PATCH /api/conversations/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/conversations.go · conversations family · PATCH /api/conversations/{id} registration이 `pgRenameConversation`를 선택 · handler-patch-api-conversations-id
- 계약 사용 · PATCH /api/conversations/{id} · operation별 request/response/error/completion 계약 · handler-patch-api-conversations-id
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgRenameConversation · server/conversations.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 413, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
PATCH /api/conversations/{id}/profile
PATCH /api/conversations/{id}/profile · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/conversations.go · conversations family · PATCH /api/conversations/{id}/profile registration이 `pgUpdateConversation`를 선택 · handler-patch-api-conversations-id-profile
- 계약 사용 · PATCH /api/conversations/{id}/profile · operation별 request/response/error/completion 계약 · handler-patch-api-conversations-id-profile
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgUpdateConversation · server/conversations.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 413, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/conversations/{id}
DELETE /api/conversations/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/conversations.go · conversations family · DELETE /api/conversations/{id} registration이 `pgDeleteConversation`를 선택 · handler-delete-api-conversations-id
- 계약 사용 · DELETE /api/conversations/{id} · operation별 request/response/error/completion 계약 · handler-delete-api-conversations-id
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgDeleteConversation · server/conversations.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/conversations/{id}/messages
GET /api/conversations/{id}/messages · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/conversations.go · conversations family · GET /api/conversations/{id}/messages registration이 `pgConversationMessages`를 선택 · handler-get-api-conversations-id-messages
- 계약 사용 · GET /api/conversations/{id}/messages · operation별 request/response/error/completion 계약 · handler-get-api-conversations-id-messages
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgConversationMessages · server/conversations.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query before, limit, since · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · agent turn을 background context에서 실행할 수 있음; activity/stop/terminal event를 확인 |
POST /api/conversations/{id}/messages
POST /api/conversations/{id}/messages · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/conversations.go · conversations family · POST /api/conversations/{id}/messages registration이 `pgSendConversationMessage`를 선택 · handler-post-api-conversations-id-messages
- 계약 사용 · POST /api/conversations/{id}/messages · operation별 request/response/error/completion 계약 · handler-post-api-conversations-id-messages
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgSendConversationMessage · server/conversations.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body JSON |
| status/error | 직접 관찰 202, 400, 401, 404, 409, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · agent turn을 background context에서 실행할 수 있음; activity/stop/terminal event를 확인 |
POST /api/conversations/{id}/stop
POST /api/conversations/{id}/stop · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/conversations.go · conversations family · POST /api/conversations/{id}/stop registration이 `pgStopConversation`를 선택 · handler-post-api-conversations-id-stop
- 계약 사용 · POST /api/conversations/{id}/stop · operation별 request/response/error/completion 계약 · handler-post-api-conversations-id-stop
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgStopConversation · server/conversations.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/conversations/{id}/messages/{seq}
GET /api/conversations/{id}/messages/{seq} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/conversations.go · conversations family · GET /api/conversations/{id}/messages/{seq} registration이 `pgConversationMsgDetail`를 선택 · handler-get-api-conversations-id-messages-seq
- 계약 사용 · GET /api/conversations/{id}/messages/{seq} · operation별 request/response/error/completion 계약 · handler-get-api-conversations-id-messages-seq
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgConversationMsgDetail · server/conversations.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id, seq · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/agents
GET /api/agents · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · GET /api/agents registration이 `pgListAgents`를 선택 · handler-get-api-agents
- 계약 사용 · GET /api/agents · operation별 request/response/error/completion 계약 · handler-get-api-agents
이 대상을 사용하는 기능·모듈·계약 · 6개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
- 의존 / 실행 · /dashboard · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-dashboard
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
- 의존 / 실행 · /system/mcp · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-mcp
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
- 의존 / 실행 · /system/tools · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-tools
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgListAgents · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/agents
POST /api/agents · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · POST /api/agents registration이 `pgCreateAgent`를 선택 · handler-post-api-agents
- 계약 사용 · POST /api/agents · operation별 request/response/error/completion 계약 · handler-post-api-agents
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgCreateAgent · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 409, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/agents/{key}
GET /api/agents/{key} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · GET /api/agents/{key} registration이 `pgGetAgent`를 선택 · handler-get-api-agents-key
- 계약 사용 · GET /api/agents/{key} · operation별 request/response/error/completion 계약 · handler-get-api-agents-key
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgGetAgent · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
PATCH /api/agents/{key}
PATCH /api/agents/{key} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · PATCH /api/agents/{key} registration이 `pgUpdateAgent`를 선택 · handler-patch-api-agents-key
- 계약 사용 · PATCH /api/agents/{key} · operation별 request/response/error/completion 계약 · handler-patch-api-agents-key
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgUpdateAgent · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/agents/{key}
DELETE /api/agents/{key} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · DELETE /api/agents/{key} registration이 `pgDeleteAgent`를 선택 · handler-delete-api-agents-key
- 계약 사용 · DELETE /api/agents/{key} · operation별 request/response/error/completion 계약 · handler-delete-api-agents-key
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgDeleteAgent · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
PUT /api/agents/{key}/config
PUT /api/agents/{key}/config · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · PUT /api/agents/{key}/config registration이 `pgSaveAgentConfig`를 선택 · handler-put-api-agents-key-config
- 계약 사용 · PUT /api/agents/{key}/config · operation별 request/response/error/completion 계약 · handler-put-api-agents-key-config
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgSaveAgentConfig · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
PUT /api/agents/{key}/prompt
PUT /api/agents/{key}/prompt · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · PUT /api/agents/{key}/prompt registration이 `pgSavePrompt`를 선택 · handler-put-api-agents-key-prompt
- 계약 사용 · PUT /api/agents/{key}/prompt · operation별 request/response/error/completion 계약 · handler-put-api-agents-key-prompt
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgSavePrompt · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/agents/{key}/prompt/reset
POST /api/agents/{key}/prompt/reset · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · POST /api/agents/{key}/prompt/reset registration이 `pgResetPrompt`를 선택 · handler-post-api-agents-key-prompt-reset
- 계약 사용 · POST /api/agents/{key}/prompt/reset · operation별 request/response/error/completion 계약 · handler-post-api-agents-key-prompt-reset
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgResetPrompt · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
PUT /api/agents/{key}/wrapup
PUT /api/agents/{key}/wrapup · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · PUT /api/agents/{key}/wrapup registration이 `pgSaveWrapup`를 선택 · handler-put-api-agents-key-wrapup
- 계약 사용 · PUT /api/agents/{key}/wrapup · operation별 request/response/error/completion 계약 · handler-put-api-agents-key-wrapup
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgSaveWrapup · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/agents/{key}/wrapup/reset
POST /api/agents/{key}/wrapup/reset · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · POST /api/agents/{key}/wrapup/reset registration이 `pgResetWrapup`를 선택 · handler-post-api-agents-key-wrapup-reset
- 계약 사용 · POST /api/agents/{key}/wrapup/reset · operation별 request/response/error/completion 계약 · handler-post-api-agents-key-wrapup-reset
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgResetWrapup · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
PUT /api/agents/{key}/wrapup/task-timeout
PUT /api/agents/{key}/wrapup/task-timeout · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · PUT /api/agents/{key}/wrapup/task-timeout registration이 `pgSaveTaskTimeoutWrapup`를 선택 · handler-put-api-agents-key-wrapup-task-timeout
- 계약 사용 · PUT /api/agents/{key}/wrapup/task-timeout · operation별 request/response/error/completion 계약 · handler-put-api-agents-key-wrapup-task-timeout
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgSaveTaskTimeoutWrapup · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/agents/{key}/wrapup/task-timeout/reset
POST /api/agents/{key}/wrapup/task-timeout/reset · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · POST /api/agents/{key}/wrapup/task-timeout/reset registration이 `pgResetTaskTimeoutWrapup`를 선택 · handler-post-api-agents-key-wrapup-task-timeout-reset
- 계약 사용 · POST /api/agents/{key}/wrapup/task-timeout/reset · operation별 request/response/error/completion 계약 · handler-post-api-agents-key-wrapup-task-timeout-reset
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgResetTaskTimeoutWrapup · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/agents/{key}/triggers
GET /api/agents/{key}/triggers · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/triggers.go · agents family · GET /api/agents/{key}/triggers registration이 `pgListTriggers`를 선택 · handler-get-api-agents-key-triggers
- 계약 사용 · GET /api/agents/{key}/triggers · operation별 request/response/error/completion 계약 · handler-get-api-agents-key-triggers
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgListTriggers · server/triggers.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/agents/{key}/triggers
POST /api/agents/{key}/triggers · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/triggers.go · agents family · POST /api/agents/{key}/triggers registration이 `pgCreateTrigger`를 선택 · handler-post-api-agents-key-triggers
- 계약 사용 · POST /api/agents/{key}/triggers · operation별 request/response/error/completion 계약 · handler-post-api-agents-key-triggers
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgCreateTrigger · server/triggers.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/agents/{key}/prompts
GET /api/agents/{key}/prompts · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · GET /api/agents/{key}/prompts registration이 `pgListPromptVersions`를 선택 · handler-get-api-agents-key-prompts
- 계약 사용 · GET /api/agents/{key}/prompts · operation별 request/response/error/completion 계약 · handler-get-api-agents-key-prompts
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgListPromptVersions · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/agents/{key}/variables
GET /api/agents/{key}/variables · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · GET /api/agents/{key}/variables registration이 `pgPromptVars`를 선택 · handler-get-api-agents-key-variables
- 계약 사용 · GET /api/agents/{key}/variables · operation별 request/response/error/completion 계약 · handler-get-api-agents-key-variables
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgPromptVars · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/agents/{key}/prompt/preview
POST /api/agents/{key}/prompt/preview · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · POST /api/agents/{key}/prompt/preview registration이 `pgPreviewPrompt`를 선택 · handler-post-api-agents-key-prompt-preview
- 계약 사용 · POST /api/agents/{key}/prompt/preview · operation별 request/response/error/completion 계약 · handler-post-api-agents-key-prompt-preview
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgPreviewPrompt · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body JSON |
| status/error | 직접 관찰 200, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/agents/{key}/visibility
GET /api/agents/{key}/visibility · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · GET /api/agents/{key}/visibility registration이 `pgGetAgentVisibility`를 선택 · handler-get-api-agents-key-visibility
- 계약 사용 · GET /api/agents/{key}/visibility · operation별 request/response/error/completion 계약 · handler-get-api-agents-key-visibility
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgGetAgentVisibility · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
PUT /api/agents/{key}/visibility
PUT /api/agents/{key}/visibility · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · agents family · PUT /api/agents/{key}/visibility registration이 `pgSetAgentVisibility`를 선택 · handler-put-api-agents-key-visibility
- 계약 사용 · PUT /api/agents/{key}/visibility · operation별 request/response/error/completion 계약 · handler-put-api-agents-key-visibility
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgSetAgentVisibility · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/tools
GET /api/tools · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · tools family · GET /api/tools registration이 `pgListTools`를 선택 · handler-get-api-tools
- 계약 사용 · GET /api/tools · operation별 request/response/error/completion 계약 · handler-get-api-tools
이 대상을 사용하는 기능·모듈·계약 · 5개
- 의존 / 실행 · /dashboard · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-dashboard
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
- 의존 / 실행 · /system/intercept · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-intercept
- 의존 / 실행 · /system/tools · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-tools
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgListTools · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
PUT /api/tools/{key}
PUT /api/tools/{key} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · tools family · PUT /api/tools/{key} registration이 `pgUpdateTool`를 선택 · handler-put-api-tools-key
- 계약 사용 · PUT /api/tools/{key} · operation별 request/response/error/completion 계약 · handler-put-api-tools-key
이 대상을 사용하는 기능·모듈·계약 · 3개
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
- 의존 / 실행 · /system/tools · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-tools
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgUpdateTool · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/tools/custom
POST /api/tools/custom · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/customtool.go · tools family · POST /api/tools/custom registration이 `pgCreateCustomTool`를 선택 · handler-post-api-tools-custom
- 계약 사용 · POST /api/tools/custom · operation별 request/response/error/completion 계약 · handler-post-api-tools-custom
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/tools · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-tools
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgCreateCustomTool · server/customtool.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 409, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/tools/custom/test
POST /api/tools/custom/test · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/customtool.go · tools family · POST /api/tools/custom/test registration이 `pgTestCustomTool`를 선택 · handler-post-api-tools-custom-test
- 계약 사용 · POST /api/tools/custom/test · operation별 request/response/error/completion 계약 · handler-post-api-tools-custom-test
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/tools · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-tools
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgTestCustomTool · server/customtool.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
PUT /api/tools/custom/{key}
PUT /api/tools/custom/{key} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/customtool.go · tools family · PUT /api/tools/custom/{key} registration이 `pgUpdateCustomTool`를 선택 · handler-put-api-tools-custom-key
- 계약 사용 · PUT /api/tools/custom/{key} · operation별 request/response/error/completion 계약 · handler-put-api-tools-custom-key
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/tools · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-tools
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgUpdateCustomTool · server/customtool.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/tools/custom/{key}
DELETE /api/tools/custom/{key} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/customtool.go · tools family · DELETE /api/tools/custom/{key} registration이 `pgDeleteCustomTool`를 선택 · handler-delete-api-tools-custom-key
- 계약 사용 · DELETE /api/tools/custom/{key} · operation별 request/response/error/completion 계약 · handler-delete-api-tools-custom-key
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/tools · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-tools
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgDeleteCustomTool · server/customtool.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/tools/{key}/reset
POST /api/tools/{key}/reset · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · tools family · POST /api/tools/{key}/reset registration이 `pgResetTool`를 선택 · handler-post-api-tools-key-reset
- 계약 사용 · POST /api/tools/{key}/reset · operation별 request/response/error/completion 계약 · handler-post-api-tools-key-reset
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/tools · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-tools
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgResetTool · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path key · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/mcp
GET /api/mcp · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · mcp family · GET /api/mcp registration이 `pgListMCP`를 선택 · handler-get-api-mcp
- 계약 사용 · GET /api/mcp · operation별 request/response/error/completion 계약 · handler-get-api-mcp
이 대상을 사용하는 기능·모듈·계약 · 5개
- 의존 / 실행 · /dashboard · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-dashboard
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
- 의존 / 실행 · /system/mcp · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-mcp
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgListMCP · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/mcp
POST /api/mcp · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · mcp family · POST /api/mcp registration이 `pgSaveMCP`를 선택 · handler-post-api-mcp
- 계약 사용 · POST /api/mcp · operation별 request/response/error/completion 계약 · handler-post-api-mcp
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/mcp · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-mcp
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgSaveMCP · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/mcp/{id}
DELETE /api/mcp/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · mcp family · DELETE /api/mcp/{id} registration이 `pgDeleteMCP`를 선택 · handler-delete-api-mcp-id
- 계약 사용 · DELETE /api/mcp/{id} · operation별 request/response/error/completion 계약 · handler-delete-api-mcp-id
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/mcp · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-mcp
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgDeleteMCP · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/mcp/{id}/tools
GET /api/mcp/{id}/tools · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · mcp family · GET /api/mcp/{id}/tools registration이 `pgMCPTools`를 선택 · handler-get-api-mcp-id-tools
- 계약 사용 · GET /api/mcp/{id}/tools · operation별 request/response/error/completion 계약 · handler-get-api-mcp-id-tools
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/mcp · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-mcp
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgMCPTools · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/mcp/{id}/refresh
POST /api/mcp/{id}/refresh · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · mcp family · POST /api/mcp/{id}/refresh registration이 `pgRefreshMCP`를 선택 · handler-post-api-mcp-id-refresh
- 계약 사용 · POST /api/mcp/{id}/refresh · operation별 request/response/error/completion 계약 · handler-post-api-mcp-id-refresh
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/mcp · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-mcp
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgRefreshMCP · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500, 502, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · remote MCP discovery/refresh가 포함될 수 있으며 HTTP response가 해당 호출 완료 경계 |
GET /api/skills
GET /api/skills · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · GET /api/skills registration이 `fsListSkills`를 선택 · handler-get-api-skills
- 계약 사용 · GET /api/skills · operation별 request/response/error/completion 계약 · handler-get-api-skills
이 대상을 사용하는 기능·모듈·계약 · 4개
- 의존 / 실행 · /dashboard · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-dashboard
- 의존 / 실행 · /system/agents/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents-detail
- 의존 / 실행 · /system/agents · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-agents
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsListSkills · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/skills
POST /api/skills · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · POST /api/skills registration이 `fsCreateSkill`를 선택 · handler-post-api-skills
- 계약 사용 · POST /api/skills · operation별 request/response/error/completion 계약 · handler-post-api-skills
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsCreateSkill · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 201, 400, 401, 409, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/skills/upload
POST /api/skills/upload · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · POST /api/skills/upload registration이 `fsUploadSkill`를 선택 · handler-post-api-skills-upload
- 계약 사용 · POST /api/skills/upload · operation별 request/response/error/completion 계약 · handler-post-api-skills-upload
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsUploadSkill · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query overwrite · body multipart/form-data |
| status/error | 직접 관찰 201, 400, 401, 409, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/skills/{name}
DELETE /api/skills/{name} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · DELETE /api/skills/{name} registration이 `fsDeleteSkill`를 선택 · handler-delete-api-skills-name
- 계약 사용 · DELETE /api/skills/{name} · operation별 request/response/error/completion 계약 · handler-delete-api-skills-name
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsDeleteSkill · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path name · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/skills/missing
GET /api/skills/missing · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · GET /api/skills/missing registration이 `fsMissingSkills`를 선택 · handler-get-api-skills-missing
- 계약 사용 · GET /api/skills/missing · operation별 request/response/error/completion 계약 · handler-get-api-skills-missing
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsMissingSkills · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query limit · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/skills/{name}/usage
GET /api/skills/{name}/usage · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · GET /api/skills/{name}/usage registration이 `fsSkillUsage`를 선택 · handler-get-api-skills-name-usage
- 계약 사용 · GET /api/skills/{name}/usage · operation별 request/response/error/completion 계약 · handler-get-api-skills-name-usage
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsSkillUsage · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path name · query limit · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
PUT /api/skills/{name}/meta
PUT /api/skills/{name}/meta · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · PUT /api/skills/{name}/meta registration이 `fsUpdateSkillMeta`를 선택 · handler-put-api-skills-name-meta
- 계약 사용 · PUT /api/skills/{name}/meta · operation별 request/response/error/completion 계약 · handler-put-api-skills-name-meta
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsUpdateSkillMeta · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path name · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/skills/{name}/dirs
POST /api/skills/{name}/dirs · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · POST /api/skills/{name}/dirs registration이 `fsCreateDir`를 선택 · handler-post-api-skills-name-dirs
- 계약 사용 · POST /api/skills/{name}/dirs · operation별 request/response/error/completion 계약 · handler-post-api-skills-name-dirs
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsCreateDir · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path name · query - · body JSON |
| status/error | 직접 관찰 201, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/skills/{name}/files
GET /api/skills/{name}/files · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · GET /api/skills/{name}/files registration이 `fsListFiles`를 선택 · handler-get-api-skills-name-files
- 계약 사용 · GET /api/skills/{name}/files · operation별 request/response/error/completion 계약 · handler-get-api-skills-name-files
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsListFiles · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path name · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/skills/{name}/files/{file...}
GET /api/skills/{name}/files/{file...} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · GET /api/skills/{name}/files/{file...} registration이 `fsReadFile`를 선택 · handler-get-api-skills-name-files-file
- 계약 사용 · GET /api/skills/{name}/files/{file...} · operation별 request/response/error/completion 계약 · handler-get-api-skills-name-files-file
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsReadFile · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path name, file · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
PUT /api/skills/{name}/files/{file...}
PUT /api/skills/{name}/files/{file...} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · PUT /api/skills/{name}/files/{file...} registration이 `fsWriteFile`를 선택 · handler-put-api-skills-name-files-file
- 계약 사용 · PUT /api/skills/{name}/files/{file...} · operation별 request/response/error/completion 계약 · handler-put-api-skills-name-files-file
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsWriteFile · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path name, file · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/skills/{name}/files/{file...}
DELETE /api/skills/{name}/files/{file...} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · skills family · DELETE /api/skills/{name}/files/{file...} registration이 `fsDeletePath`를 선택 · handler-delete-api-skills-name-files-file
- 계약 사용 · DELETE /api/skills/{name}/files/{file...} · operation별 request/response/error/completion 계약 · handler-delete-api-skills-name-files-file
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | fsDeletePath · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path name, file · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/visibility/{kind}/{id}
GET /api/visibility/{kind}/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · visibility family · GET /api/visibility/{kind}/{id} registration이 `pgResourceVisibility`를 선택 · handler-get-api-visibility-kind-id
- 계약 사용 · GET /api/visibility/{kind}/{id} · operation별 request/response/error/completion 계약 · handler-get-api-visibility-kind-id
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /system/mcp · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-mcp
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgResourceVisibility · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path kind, id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/visibility/toggle
POST /api/visibility/toggle · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · visibility family · POST /api/visibility/toggle registration이 `pgToggleVisibility`를 선택 · handler-post-api-visibility-toggle
- 계약 사용 · POST /api/visibility/toggle · operation별 request/response/error/completion 계약 · handler-post-api-visibility-toggle
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/mcp · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-mcp
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgToggleVisibility · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/visibility/skill/{name}
GET /api/visibility/skill/{name} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · visibility family · GET /api/visibility/skill/{name} registration이 `pgSkillVisibility`를 선택 · handler-get-api-visibility-skill-name
- 계약 사용 · GET /api/visibility/skill/{name} · operation별 request/response/error/completion 계약 · handler-get-api-visibility-skill-name
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgSkillVisibility · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path name · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/visibility/skill/toggle
POST /api/visibility/skill/toggle · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · visibility family · POST /api/visibility/skill/toggle registration이 `pgToggleSkillVisibility`를 선택 · handler-post-api-visibility-skill-toggle
- 계약 사용 · POST /api/visibility/skill/toggle · operation별 request/response/error/completion 계약 · handler-post-api-visibility-skill-toggle
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/skills · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-skills
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgToggleSkillVisibility · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/llm/profiles
GET /api/llm/profiles · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · llm family · GET /api/llm/profiles registration이 `pgListProfiles`를 선택 · handler-get-api-llm-profiles
- 계약 사용 · GET /api/llm/profiles · operation별 request/response/error/completion 계약 · handler-get-api-llm-profiles
이 대상을 사용하는 기능·모듈·계약 · 6개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
- 의존 / 실행 · /dashboard · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-dashboard
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
- 의존 / 실행 · /function/tasks · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks
- 의존 / 실행 · /system/intercept · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-intercept
- 의존 / 실행 · /system/llm · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgListProfiles · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/llm/profiles
POST /api/llm/profiles · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · llm family · POST /api/llm/profiles registration이 `pgSaveProfile`를 선택 · handler-post-api-llm-profiles
- 계약 사용 · POST /api/llm/profiles · operation별 request/response/error/completion 계약 · handler-post-api-llm-profiles
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/llm · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgSaveProfile · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/llm/profiles/{id}
DELETE /api/llm/profiles/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · llm family · DELETE /api/llm/profiles/{id} registration이 `pgDeleteProfile`를 선택 · handler-delete-api-llm-profiles-id
- 계약 사용 · DELETE /api/llm/profiles/{id} · operation별 request/response/error/completion 계약 · handler-delete-api-llm-profiles-id
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/llm · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgDeleteProfile · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 409, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/llm/profiles/active
POST /api/llm/profiles/active · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · llm family · POST /api/llm/profiles/active registration이 `pgActivateProfile`를 선택 · handler-post-api-llm-profiles-active
- 계약 사용 · POST /api/llm/profiles/active · operation별 request/response/error/completion 계약 · handler-post-api-llm-profiles-active
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/llm · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgActivateProfile · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/llm/retry-policy
GET /api/llm/retry-policy · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · llm family · GET /api/llm/retry-policy registration이 `pgGetLLMRetryPolicy`를 선택 · handler-get-api-llm-retry-policy
- 계약 사용 · GET /api/llm/retry-policy · operation별 request/response/error/completion 계약 · handler-get-api-llm-retry-policy
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/llm · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgGetLLMRetryPolicy · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/llm/retry-policy
POST /api/llm/retry-policy · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · llm family · POST /api/llm/retry-policy registration이 `pgSaveLLMRetryPolicy`를 선택 · handler-post-api-llm-retry-policy
- 계약 사용 · POST /api/llm/retry-policy · operation별 request/response/error/completion 계약 · handler-post-api-llm-retry-policy
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/llm · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgSaveLLMRetryPolicy · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/llm/pool
GET /api/llm/pool · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · llm family · GET /api/llm/pool registration이 `pgLLMPoolStatus`를 선택 · handler-get-api-llm-pool
- 계약 사용 · GET /api/llm/pool · operation별 request/response/error/completion 계약 · handler-get-api-llm-pool
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/llm · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgLLMPoolStatus · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/llm/pool/reset
POST /api/llm/pool/reset · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · llm family · POST /api/llm/pool/reset registration이 `pgLLMPoolReset`를 선택 · handler-post-api-llm-pool-reset
- 계약 사용 · POST /api/llm/pool/reset · operation별 request/response/error/completion 계약 · handler-post-api-llm-pool-reset
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/llm · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgLLMPoolReset · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/llm/models
POST /api/llm/models · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server_mgmt.go · llm family · POST /api/llm/models registration이 `pgListModels`를 선택 · handler-post-api-llm-models
- 계약 사용 · POST /api/llm/models · operation별 request/response/error/completion 계약 · handler-post-api-llm-models
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /system/llm · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-system-llm
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | pgListModels · server/server_mgmt.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/conversations/{id}/side-questions
GET /api/conversations/{id}/side-questions · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/side_questions.go · conversations family · GET /api/conversations/{id}/side-questions registration이 `handleSideQuestions`를 선택 · handler-get-api-conversations-id-side-questions
- 계약 사용 · GET /api/conversations/{id}/side-questions · operation별 request/response/error/completion 계약 · handler-get-api-conversations-id-side-questions · handler-side-parent
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | handleSideQuestions · server/side_questions.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query before · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · history/current snapshot 조회가 응답 전에 끝남; before는 invalid/missing이면 0으로 처리 |
POST /api/conversations/{id}/side-questions
POST /api/conversations/{id}/side-questions · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/side_questions.go · conversations family · POST /api/conversations/{id}/side-questions registration이 `handleSideQuestions`를 선택 · handler-post-api-conversations-id-side-questions
- 계약 사용 · POST /api/conversations/{id}/side-questions · operation별 request/response/error/completion 계약 · handler-post-api-conversations-id-side-questions · handler-side-parent
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | handleSideQuestions · server/side_questions.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body JSON |
| status/error | 직접 관찰 200, 202, 400, 401, 404, 409, 429, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | 같은 client_request_id+question은 기존 request를 200으로 반환; 같은 ID의 다른 question은 409 · side-question session/request 시작; events/terminal request state가 완료 기준 |
DELETE /api/conversations/{id}/side-questions
DELETE /api/conversations/{id}/side-questions · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/side_questions.go · conversations family · DELETE /api/conversations/{id}/side-questions registration이 `handleSideQuestions`를 선택 · handler-delete-api-conversations-id-side-questions
- 계약 사용 · DELETE /api/conversations/{id}/side-questions · operation별 request/response/error/completion 계약 · handler-delete-api-conversations-id-side-questions · handler-side-parent
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | handleSideQuestions · server/side_questions.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · active run에 cancel을 요청하고 DB history clear 후 응답; run goroutine 종료까지 기다리지는 않음 |
GET /api/side-questions/{requestID}/events
GET /api/side-questions/{requestID}/events · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/side_questions.go · side-questions family · GET /api/side-questions/{requestID}/events registration이 `sideEvents`를 선택 · handler-get-api-side-questions-requestid-events
- 계약 사용 · GET /api/side-questions/{requestID}/events · operation별 request/response/error/completion 계약 · handler-get-api-side-questions-requestid-events
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | sideEvents · server/side_questions.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path requestID · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · SSE 연결 수립; event lifecycle은 stream별 cursor/메모리 상태를 확인 |
POST /api/side-questions/{requestID}/cancel
POST /api/side-questions/{requestID}/cancel · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/side_questions.go · side-questions family · POST /api/side-questions/{requestID}/cancel registration이 `cancelSideRequest`를 선택 · handler-post-api-side-questions-requestid-cancel
- 계약 사용 · POST /api/side-questions/{requestID}/cancel · operation별 request/response/error/completion 계약 · handler-post-api-side-questions-requestid-cancel
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | cancelSideRequest · server/side_questions.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path requestID · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · side-question session/request 시작; events/terminal request state가 완료 기준 |
이 페이지의 확인 한계
- route registration/auth/handler 직접 목적지는 전수 확인했다.
- field/schema/error/side-effect 의미는 별도 schema page의 C/P/U가 권위다.
- OpenAPI가 없고 실제 HTTP server는 실행하지 않았다. helper 내부·외부 서비스·DB 운영 상태는 정적 소스 이상으로 보장하지 않는다.