mirror of
https://github.com/Tencent/WeKnora.git
synced 2026-06-04 13:30:32 +08:00
- Introduced a new package for managing custom agents, including CRUD operations for agent creation, retrieval, updating, and deletion. - Implemented API endpoints for listing agents and retrieving agent placeholders. - Added data structures for agent configuration and requests, enhancing the overall agent management capabilities. - Enhanced the client with methods to interact with the new agent management features, improving user experience in managing agents. These changes significantly expand the application's functionality for handling custom agents, providing users with a comprehensive toolset for agent management.
35 lines
853 B
Go
35 lines
853 B
Go
package client
|
|
|
|
import (
|
|
"context"
|
|
"net/http"
|
|
)
|
|
|
|
// SkillInfo represents skill metadata
|
|
type SkillInfo struct {
|
|
Name string `json:"name"`
|
|
Description string `json:"description"`
|
|
}
|
|
|
|
// SkillListResponse represents the response from listing skills
|
|
type SkillListResponse struct {
|
|
Success bool `json:"success"`
|
|
Data []SkillInfo `json:"data"`
|
|
SkillsAvailable bool `json:"skills_available"`
|
|
}
|
|
|
|
// ListSkills lists all preloaded agent skills
|
|
func (c *Client) ListSkills(ctx context.Context) ([]SkillInfo, bool, error) {
|
|
resp, err := c.doRequest(ctx, http.MethodGet, "/api/v1/skills", nil, nil)
|
|
if err != nil {
|
|
return nil, false, err
|
|
}
|
|
|
|
var response SkillListResponse
|
|
if err := parseResponse(resp, &response); err != nil {
|
|
return nil, false, err
|
|
}
|
|
|
|
return response.Data, response.SkillsAvailable, nil
|
|
}
|