Documentation
¶
Index ¶
- Variables
- func AddProjectPlugin(ctx context.Context, serverAddr, authToken string, ...) (*contract.ProjectPluginMutationResult, error)
- func Chat(ctx context.Context, serverAddr, authToken, initialMessage string) error
- func CreateAutomation(ctx context.Context, serverAddr, authToken string, ...) (*contract.Automation, error)
- func DeleteAutomation(ctx context.Context, serverAddr, authToken, publicID string, ...) error
- func DetailProject(ctx context.Context, serverAddr, authToken, publicID string) (*contract.ProjectDetail, error)
- func GetAutomation(ctx context.Context, serverAddr, authToken, publicID string, ...) (*contract.Automation, error)
- func GetDigitalAssistantByID(ctx context.Context, serverAddr, authToken string, id uint) (*contract.DigitalAssistantDetail, error)
- func GetDigitalAssistantByPublicID(ctx context.Context, serverAddr, authToken string, publicID string) (*contract.DigitalAssistantDetail, error)
- func GetPresignUploadURL(ctx context.Context, serverAddr, authToken, bucket, key string) (string, error)
- func GetProject(ctx context.Context, serverAddr, authToken, publicID string) (*contract.Project, error)
- func GetSession(ctx context.Context, serverAddr, authToken, sessionID string) (*contract.Session, error)
- func GetSessionMessages(ctx context.Context, serverAddr, authToken, sessionID string, ...) (*contract.MessageList, error)
- func GetTask(ctx context.Context, serverAddr, authToken, publicID string) (*contract.Task, error)
- func ListAutomations(ctx context.Context, serverAddr, authToken string, ...) (*contract.AutomationList, error)
- func ListOrganizationPlugins(ctx context.Context, serverAddr, authToken string, ...) (*contract.ListPluginsResponse, error)
- func ListProjectFiles(ctx context.Context, ...) ([]contract.FileTreeNode, error)
- func ListProjectPlugins(ctx context.Context, serverAddr, authToken string, ...) ([]contract.ProjectPlugin, error)
- func ListProjects(ctx context.Context, serverAddr, authToken string, ...) (*contract.ProjectList, error)
- func ListSessions(ctx context.Context, serverAddr, authToken string, ...) (*contract.SessionList, error)
- func ListTasks(ctx context.Context, serverAddr, authToken string, ...) (*contract.TaskList, error)
- func PreferredCLIName(available []CLIToolStatus) string
- func RemoveProjectPlugin(ctx context.Context, serverAddr, authToken string, ...) (*contract.ProjectPluginMutationResult, error)
- func ResolveUserName(ctx context.Context, serverAddr, authToken string, uin uint) string
- func UpdateAutomation(ctx context.Context, serverAddr, authToken, publicID string, ...) (*contract.Automation, error)
- type CLIToolSpec
- type CLIToolStatus
- type StorageConfig
Constants ¶
This section is empty.
Variables ¶
var BuiltinCLITools = []CLIToolSpec{ { Name: "claude", DisplayName: "Claude Code", Binary: "claude", InstallCmd: "npm install -g @anthropic-ai/claude-code", DetectCmd: "claude --version", VersionRegex: `Claude CLI[,:]? v?(\d+\.\d+\.\d+)`, Default: true, }, { Name: "codex", DisplayName: "Codex CLI", Binary: "codex", InstallCmd: "npm install -g @openai/codex", DetectCmd: "codex --version", VersionRegex: `(\d+\.\d+\.\d+)`, Default: false, }, { Name: "opencode", DisplayName: "OpenCode", Binary: "opencode", InstallCmd: "npm install -g opencode-ai", DetectCmd: "opencode --version", VersionRegex: `(\d+\.\d+\.\d+)`, Default: false, }, }
BuiltinCLITools lists the external AI coding CLIs Leros can detect.
Functions ¶
func AddProjectPlugin ¶ added in v0.4.1
func AddProjectPlugin( ctx context.Context, serverAddr, authToken string, req *contract.UpdateProjectPluginRequest, ) (*contract.ProjectPluginMutationResult, error)
AddProjectPlugin associates one organization plugin with a project.
func CreateAutomation ¶ added in v0.4.1
func CreateAutomation(ctx context.Context, serverAddr, authToken string, req *contract.CreateAutomationRequest, targetUserID ...*uint) (*contract.Automation, error)
CreateAutomation 调用服务端 CreateAutomation API 并返回新建自动化。
func DeleteAutomation ¶ added in v0.4.1
func DetailProject ¶
func DetailProject(ctx context.Context, serverAddr, authToken, publicID string) (*contract.ProjectDetail, error)
DetailProject 调用服务端 DetailProject API 并返回解析后的结果。
func GetAutomation ¶ added in v0.4.1
func GetAutomation(ctx context.Context, serverAddr, authToken, publicID string, targetUserID ...*uint) (*contract.Automation, error)
GetAutomation 调用服务端 GetAutomation API 并返回自动化详情。
func GetDigitalAssistantByID ¶
func GetDigitalAssistantByID(ctx context.Context, serverAddr, authToken string, id uint) (*contract.DigitalAssistantDetail, error)
GetDigitalAssistantByID 调用服务端 GetDigitalAssistant API 并返回解析后的结果。
func GetDigitalAssistantByPublicID ¶ added in v0.1.26
func GetDigitalAssistantByPublicID(ctx context.Context, serverAddr, authToken string, publicID string) (*contract.DigitalAssistantDetail, error)
GetDigitalAssistantByPublicID 通过 PublicID 调用服务端 GetDigitalAssistant API。
func GetPresignUploadURL ¶ added in v0.1.17
func GetPresignUploadURL(ctx context.Context, serverAddr, authToken, bucket, key string) (string, error)
GetPresignUploadURL fetches a presigned upload URL for the given bucket and key.
func GetProject ¶
func GetProject(ctx context.Context, serverAddr, authToken, publicID string) (*contract.Project, error)
GetProject 调用服务端 GetProject API 并返回解析后的结果。
func GetSession ¶
func GetSession(ctx context.Context, serverAddr, authToken, sessionID string) (*contract.Session, error)
GetSession 调用服务端 GetSession API 并返回解析后的结果。
func GetSessionMessages ¶
func GetSessionMessages(ctx context.Context, serverAddr, authToken, sessionID string, page, perPage int) (*contract.MessageList, error)
GetSessionMessages 调用服务端 GetSessionMessages API 并返回解析后的结果。
func ListAutomations ¶ added in v0.4.1
func ListAutomations(ctx context.Context, serverAddr, authToken string, req *contract.ListAutomationsRequest, targetUserID ...*uint) (*contract.AutomationList, error)
ListAutomations 调用服务端 ListAutomations API 并返回自动化列表。
func ListOrganizationPlugins ¶ added in v0.4.1
func ListOrganizationPlugins( ctx context.Context, serverAddr, authToken string, req *contract.ListPluginsRequest, ) (*contract.ListPluginsResponse, error)
ListOrganizationPlugins lists organization-owned plugins through the typed REST API.
func ListProjectFiles ¶ added in v0.1.19
func ListProjectFiles(ctx context.Context, serverAddr, authToken, projectID, resourceType, taskID string) ([]contract.FileTreeNode, error)
ListProjectFiles 调用服务端项目文件树接口,按 project + resource_type + task 过滤。
func ListProjectPlugins ¶ added in v0.4.1
func ListProjectPlugins( ctx context.Context, serverAddr, authToken string, req *contract.ListProjectPluginsRequest, ) ([]contract.ProjectPlugin, error)
ListProjectPlugins lists plugins currently associated with a project.
func ListProjects ¶
func ListProjects(ctx context.Context, serverAddr, authToken string, req *contract.ListProjectsRequest) (*contract.ProjectList, error)
ListProjects 调用服务端 ListProjects API 并返回解析后的结果。
func ListSessions ¶
func ListSessions(ctx context.Context, serverAddr, authToken string, req *contract.ListSessionsRequest) (*contract.SessionList, error)
ListSessions 调用服务端 ListSessions API 并返回解析后的结果。
func ListTasks ¶
func ListTasks(ctx context.Context, serverAddr, authToken string, req *contract.ListTasksRequest) (*contract.TaskList, error)
ListTasks 调用服务端 ListTasks API 并返回解析后的结果。
func PreferredCLIName ¶ added in v0.1.22
func PreferredCLIName(available []CLIToolStatus) string
PreferredCLIName chooses the preferred installed runtime from detected CLI status.
func RemoveProjectPlugin ¶ added in v0.4.1
func RemoveProjectPlugin( ctx context.Context, serverAddr, authToken string, req *contract.UpdateProjectPluginRequest, ) (*contract.ProjectPluginMutationResult, error)
RemoveProjectPlugin removes one project plugin association.
func ResolveUserName ¶
ResolveUserName 通过 Uin 解析用户名称。
func UpdateAutomation ¶ added in v0.4.1
func UpdateAutomation(ctx context.Context, serverAddr, authToken, publicID string, req *contract.UpdateAutomationRequest, targetUserID ...*uint) (*contract.Automation, error)
UpdateAutomation 调用服务端 UpdateAutomation API 并返回更新后的自动化。
Types ¶
type CLIToolSpec ¶ added in v0.1.22
type CLIToolSpec struct {
Name string
DisplayName string
Binary string
InstallCmd string
DetectCmd string
VersionRegex string
Default bool
}
CLIToolSpec describes a built-in external AI coding CLI.
func GetCLIToolSpec ¶ added in v0.1.22
func GetCLIToolSpec(name string) *CLIToolSpec
GetCLIToolSpec returns the built-in CLI spec with the given runtime name.
type CLIToolStatus ¶ added in v0.1.22
type CLIToolStatus struct {
Name string `json:"name"`
DisplayName string `json:"display_name"`
Binary string `json:"binary"`
Installed bool `json:"installed"`
Version string `json:"version,omitempty"`
Path string `json:"path,omitempty"`
InstallCmd string `json:"install_cmd"`
Default bool `json:"is_default"`
}
CLIToolStatus reports whether a built-in CLI is available in the current environment.
func DiscoverAvailableCLI ¶ added in v0.1.22
func DiscoverAvailableCLI() []CLIToolStatus
DiscoverAvailableCLI detects all built-in CLI tools from the current PATH.
func GetCLIStatusSummary ¶ added in v0.1.22
func GetCLIStatusSummary() []CLIToolStatus
GetCLIStatusSummary returns the current detection status for all built-in CLI runtimes.
type StorageConfig ¶ added in v0.1.17
StorageConfig represents storage configuration returned by the server.
func GetStorageConfig ¶ added in v0.1.17
func GetStorageConfig(ctx context.Context, serverAddr, authToken string) (*StorageConfig, error)
GetStorageConfig fetches the storage configuration from the server.