feat: add skill API client
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
55
frontend/src/api/skill.ts
Normal file
55
frontend/src/api/skill.ts
Normal file
@@ -0,0 +1,55 @@
|
||||
import api from './index'
|
||||
import type { AxiosResponse } from 'axios'
|
||||
|
||||
export interface Skill {
|
||||
id: string
|
||||
name: string
|
||||
description: string | null
|
||||
instructions: string
|
||||
agent_type: string
|
||||
tools: string[]
|
||||
required_context: string[]
|
||||
output_format: string | null
|
||||
visibility: 'private' | 'team' | 'market'
|
||||
team_id: string | null
|
||||
is_active: boolean
|
||||
owner_id: string
|
||||
created_at: string
|
||||
updated_at: string
|
||||
}
|
||||
|
||||
export interface SkillCreate {
|
||||
name: string
|
||||
description?: string
|
||||
instructions: string
|
||||
agent_type: string
|
||||
tools?: string[]
|
||||
required_context?: string[]
|
||||
output_format?: string
|
||||
visibility?: 'private' | 'team' | 'market'
|
||||
team_id?: string
|
||||
is_active?: boolean
|
||||
}
|
||||
|
||||
export interface SkillUpdate {
|
||||
name?: string
|
||||
description?: string
|
||||
instructions?: string
|
||||
agent_type?: string
|
||||
tools?: string[]
|
||||
required_context?: string[]
|
||||
output_format?: string
|
||||
visibility?: 'private' | 'team' | 'market'
|
||||
team_id?: string
|
||||
is_active?: boolean
|
||||
}
|
||||
|
||||
export const skillApi = {
|
||||
list: (params?: { agent_type?: string; visibility?: string }): Promise<AxiosResponse<Skill[]>> => {
|
||||
return api.get('/api/skills', { params })
|
||||
},
|
||||
get: (id: string): Promise<AxiosResponse<Skill>> => api.get(`/api/skills/${id}`),
|
||||
create: (data: SkillCreate): Promise<AxiosResponse<Skill>> => api.post('/api/skills', data),
|
||||
update: (id: string, data: SkillUpdate): Promise<AxiosResponse<Skill>> => api.put(`/api/skills/${id}`, data),
|
||||
delete: (id: string): Promise<AxiosResponse<void>> => api.delete(`/api/skills/${id}`),
|
||||
}
|
||||
Reference in New Issue
Block a user