Files
agentic-coding-workflow/internal/acp/dto.go
T

49 lines
1.7 KiB
Go

package acp
import (
"github.com/google/uuid"
)
// AgentKindAdminDTO 是 admin 视图的完整字段。EnvKeys 仅返回 key 列表(不返回值)。
type AgentKindAdminDTO struct {
ID uuid.UUID `json:"id"`
Name string `json:"name"`
DisplayName string `json:"display_name"`
Description string `json:"description"`
BinaryPath string `json:"binary_path"`
Args []string `json:"args"`
EnvKeys []string `json:"env_keys"`
Enabled bool `json:"enabled"`
CreatedBy uuid.UUID `json:"created_by"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
}
// AgentKindPublicDTO 是普通用户视图,不暴露 binary_path / args / env_keys。
type AgentKindPublicDTO struct {
ID uuid.UUID `json:"id"`
Name string `json:"name"`
DisplayName string `json:"display_name"`
Enabled bool `json:"enabled"`
}
// CreateAgentKindReq / UpdateAgentKindReq 是 HTTP 请求体。
type CreateAgentKindReq struct {
Name string `json:"name"`
DisplayName string `json:"display_name"`
Description string `json:"description"`
BinaryPath string `json:"binary_path"`
Args []string `json:"args"`
Env map[string]string `json:"env"`
Enabled *bool `json:"enabled"`
}
type UpdateAgentKindReq struct {
DisplayName *string `json:"display_name,omitempty"`
Description *string `json:"description,omitempty"`
BinaryPath *string `json:"binary_path,omitempty"`
Args []string `json:"args,omitempty"`
Env map[string]string `json:"env,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
}