This commit is contained in:
2026-06-09 21:19:30 +08:00
parent 8b41ff9360
commit 0484e79978
66 changed files with 4043 additions and 533 deletions
+27
View File
@@ -10,6 +10,7 @@ export interface AgentKindAdmin {
args: string[]
env_keys: string[]
enabled: boolean
tool_allowlist: string[]
created_by: string
created_at: string
updated_at: string
@@ -36,6 +37,7 @@ export interface CreateAgentKindReq {
args?: string[]
env?: Record<string, string>
enabled?: boolean
tool_allowlist?: string[]
}
export interface UpdateAgentKindReq {
@@ -45,6 +47,18 @@ export interface UpdateAgentKindReq {
args?: string[]
env?: Record<string, string>
enabled?: boolean
tool_allowlist?: string[]
}
// PermissionRequest mirrors backend PermissionRequestDTO.
export interface PermissionRequest {
id: string
session_id: string
tool_name: string
tool_call: unknown
options: { id: string; name?: string }[]
status: string
created_at: string
}
// AcpSession mirrors the backend session DTO returned by /api/v1/acp/sessions.
@@ -90,6 +104,8 @@ export interface AcpEvent {
| 'session_terminated'
| 'slow_consumer_disconnect'
| 'client_error'
| 'permission_request'
| 'permission_resolved'
method?: string
payload: unknown
truncated: boolean
@@ -121,6 +137,17 @@ export const acpApi = {
request<void>(`/api/v1/acp/sessions/${enc(id)}`, { method: 'DELETE' }),
events: (id: string, since: number) =>
request<AcpEvent[]>(`/api/v1/acp/sessions/${enc(id)}/events?since=${since}`),
permissions: (id: string) =>
request<PermissionRequest[]>(`/api/v1/acp/sessions/${enc(id)}/permissions`),
},
permissions: {
approve: (reqID: string, optionId?: string) =>
request<void>(`/api/v1/acp/permissions/${enc(reqID)}/approve`, {
method: 'POST',
body: optionId ? { option_id: optionId } : {},
}),
deny: (reqID: string) =>
request<void>(`/api/v1/acp/permissions/${enc(reqID)}/deny`, { method: 'POST' }),
},
}