Documentation
¶
Index ¶
- func RegisterAdminAgentsCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
- func RegisterAdminCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
- func RegisterAdminSkillsCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
- func RegisterAgentsCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
- func RegisterAgentsEndpoints(api huma.API, pathPrefix string, registry service.RegistryService, ...)
- func RegisterAgentsPublishStatusEndpoints(api huma.API, pathPrefix string, registry service.RegistryService)
- func RegisterCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
- func RegisterDeploymentsEndpoints(api huma.API, basePath string, registry service.RegistryService)
- func RegisterEditEndpoints(api huma.API, pathPrefix string, registry service.RegistryService)
- func RegisterHealthEndpoint(api huma.API, pathPrefix string, cfg *config.Config, ...)
- func RegisterPingEndpoint(api huma.API, pathPrefix string)
- func RegisterPublishStatusEndpoints(api huma.API, pathPrefix string, registry service.RegistryService)
- func RegisterServersEndpoints(api huma.API, pathPrefix string, registry service.RegistryService, ...)
- func RegisterSkillsCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
- func RegisterSkillsEndpoints(api huma.API, pathPrefix string, registry service.RegistryService, ...)
- func RegisterSkillsPublishStatusEndpoints(api huma.API, pathPrefix string, registry service.RegistryService)
- func RegisterVersionEndpoint(api huma.API, pathPrefix string, versionInfo *VersionBody)
- type AgentDetailInput
- type AgentVersionDetailInput
- type AgentVersionsInput
- type CreateAgentInput
- type CreateServerInput
- type CreateSkillInput
- type DeploymentConfigUpdate
- type DeploymentInput
- type DeploymentRequest
- type DeploymentResponse
- type DeploymentsListInput
- type DeploymentsListResponse
- type EditServerInput
- type HealthBody
- type ListAgentsInput
- type ListServersInput
- type ListSkillsInput
- type PingBody
- type ServerDetailInput
- type ServerReadmeResponse
- type ServerVersionDetailInput
- type ServerVersionsInput
- type SkillDetailInput
- type SkillVersionDetailInput
- type SkillVersionsInput
- type VersionBody
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterAdminAgentsCreateEndpoint ¶
func RegisterAdminAgentsCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
RegisterAdminAgentsCreateEndpoint registers the admin agents create/update endpoint at /agents This endpoint creates or updates an agent in the registry (published defaults to false)
func RegisterAdminCreateEndpoint ¶
func RegisterAdminCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
RegisterAdminCreateEndpoint registers the admin create/update server endpoint at /servers This endpoint creates or updates a server in the registry (published defaults to false)
func RegisterAdminSkillsCreateEndpoint ¶
func RegisterAdminSkillsCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
RegisterAdminSkillsCreateEndpoint registers the admin skills create/update endpoint at /skills This endpoint creates or updates a skill in the registry (published defaults to false)
func RegisterAgentsCreateEndpoint ¶
func RegisterAgentsCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
RegisterAgentsCreateEndpoint registers the public agents create/update endpoint at /agents/publish This endpoint creates or updates an agent in the registry (published defaults to false)
func RegisterAgentsEndpoints ¶
func RegisterAgentsEndpoints(api huma.API, pathPrefix string, registry service.RegistryService, isAdmin bool)
RegisterAgentsEndpoints registers all agent-related endpoints with a custom path prefix isAdmin: if true, shows all resources; if false, only shows published resources
func RegisterAgentsPublishStatusEndpoints ¶
func RegisterAgentsPublishStatusEndpoints(api huma.API, pathPrefix string, registry service.RegistryService)
RegisterAgentsPublishStatusEndpoints registers the publish/unpublish status endpoints for agents These endpoints change the published status of existing agents
func RegisterCreateEndpoint ¶
func RegisterCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
RegisterCreateEndpoint registers the public create/update server endpoint at /publish This endpoint creates or updates a server in the registry (published defaults to false)
func RegisterDeploymentsEndpoints ¶
func RegisterDeploymentsEndpoints(api huma.API, basePath string, registry service.RegistryService)
RegisterDeploymentsEndpoints registers all deployment-related endpoints
func RegisterEditEndpoints ¶
func RegisterEditEndpoints(api huma.API, pathPrefix string, registry service.RegistryService)
RegisterEditEndpoints registers the edit endpoint with a custom path prefix
func RegisterHealthEndpoint ¶
func RegisterHealthEndpoint(api huma.API, pathPrefix string, cfg *config.Config, metrics *telemetry.Metrics)
RegisterHealthEndpoint registers the health check endpoint with a custom path prefix
func RegisterPingEndpoint ¶
RegisterPingEndpoint registers the ping endpoint with a custom path prefix
func RegisterPublishStatusEndpoints ¶
func RegisterPublishStatusEndpoints(api huma.API, pathPrefix string, registry service.RegistryService)
RegisterPublishStatusEndpoints registers the publish/unpublish status endpoints for servers These endpoints change the published status of existing servers
func RegisterServersEndpoints ¶
func RegisterServersEndpoints(api huma.API, pathPrefix string, registry service.RegistryService, isAdmin bool)
RegisterServersEndpoints registers all server-related endpoints with a custom path prefix isAdmin: if true, shows all resources; if false, only shows published resources
func RegisterSkillsCreateEndpoint ¶
func RegisterSkillsCreateEndpoint(api huma.API, pathPrefix string, registry service.RegistryService)
RegisterSkillsCreateEndpoint registers the public skills create/update endpoint at /skills/publish This endpoint creates or updates a skill in the registry (published defaults to false)
func RegisterSkillsEndpoints ¶
func RegisterSkillsEndpoints(api huma.API, pathPrefix string, registry service.RegistryService, isAdmin bool)
RegisterSkillsEndpoints registers all skill-related endpoints with a custom path prefix isAdmin: if true, shows all resources; if false, only shows published resources
func RegisterSkillsPublishStatusEndpoints ¶
func RegisterSkillsPublishStatusEndpoints(api huma.API, pathPrefix string, registry service.RegistryService)
RegisterSkillsPublishStatusEndpoints registers the publish/unpublish status endpoints for skills These endpoints change the published status of existing skills
func RegisterVersionEndpoint ¶
func RegisterVersionEndpoint(api huma.API, pathPrefix string, versionInfo *VersionBody)
RegisterVersionEndpoint registers the version endpoint with a custom path prefix
Types ¶
type AgentDetailInput ¶
type AgentDetailInput struct {
AgentName string `path:"agentName" json:"agentName" doc:"URL-encoded agent name" example:"com.example%2Fmy-agent"`
}
AgentDetailInput represents the input for getting agent details
type AgentVersionDetailInput ¶
type AgentVersionDetailInput struct {
AgentName string `path:"agentName" json:"agentName" doc:"URL-encoded agent name" example:"com.example%2Fmy-agent"`
Version string `path:"version" json:"version" doc:"URL-encoded agent version" example:"1.0.0"`
}
AgentVersionDetailInput represents the input for getting a specific version
type AgentVersionsInput ¶
type AgentVersionsInput struct {
AgentName string `path:"agentName" json:"agentName" doc:"URL-encoded agent name" example:"com.example%2Fmy-agent"`
}
AgentVersionsInput represents the input for listing all versions of an agent
type CreateAgentInput ¶
type CreateAgentInput struct {
Body agentmodels.AgentJSON `body:""`
}
CreateAgentInput represents the input for creating/updating an agent
type CreateServerInput ¶
type CreateServerInput struct {
Body apiv0.ServerJSON `body:""`
}
CreateServerInput represents the input for creating/updating a server
type CreateSkillInput ¶
type CreateSkillInput struct {
Body skillmodels.SkillJSON `body:""`
}
CreateSkillInput represents the input for creating/updating a skill
type DeploymentConfigUpdate ¶
type DeploymentConfigUpdate struct {
Config map[string]string `json:"config" doc:"Configuration key-value pairs to set"`
}
DeploymentConfigUpdate represents the input for updating deployment configuration
type DeploymentInput ¶
type DeploymentInput struct {
ServerName string `path:"serverName" json:"serverName" doc:"URL-encoded server name" example:"io.github.user%2Fweather"`
Version string `path:"version" json:"version" doc:"Version of the deployment to get" example:"1.0.0"`
ResourceType string `query:"resourceType" json:"resourceType" doc:"Resource type (mcp, agent)" example:"mcp" enum:"mcp,agent"`
}
DeploymentInput represents path parameters for deployment operations
type DeploymentRequest ¶
type DeploymentRequest struct {
ServerName string `json:"serverName" doc:"Server name to deploy" example:"io.github.user/weather"`
Version string `json:"version" doc:"Version to deploy (use 'latest' for latest version)" default:"latest" example:"1.0.0"`
Config map[string]string `json:"config,omitempty" doc:"Configuration key-value pairs (env vars, args, headers)"`
PreferRemote bool `json:"preferRemote,omitempty" doc:"Prefer remote deployment over local" default:"false"`
ResourceType string `json:"resourceType,omitempty" doc:"Type of resource to deploy (mcp, agent)" default:"mcp" example:"mcp" enum:"mcp,agent"`
Runtime string `json:"runtime,omitempty" doc:"Runtime target (local, kubernetes)" default:"local" example:"local" enum:"local,kubernetes"`
}
DeploymentRequest represents the input for deploying a server
type DeploymentResponse ¶
type DeploymentResponse struct {
Body models.Deployment
}
DeploymentResponse represents a deployment
type DeploymentsListInput ¶
type DeploymentsListInput struct {
ResourceType string `query:"resourceType" json:"resourceType,omitempty" doc:"Filter by resource type (mcp, agent)" example:"mcp" enum:"mcp,agent"`
Runtime string `query:"runtime" json:"runtime,omitempty" doc:"Filter by runtime (local, kubernetes)" example:"local" enum:"local,kubernetes"`
}
DeploymentsListInput represents query parameters for listing deployments
type DeploymentsListResponse ¶
type DeploymentsListResponse struct {
Body struct {
Deployments []models.Deployment `json:"deployments" doc:"List of deployed servers"`
}
}
DeploymentsListResponse represents a list of deployments
type EditServerInput ¶
type EditServerInput struct {
ServerName string `path:"serverName" doc:"URL-encoded server name" example:"com.example%2Fmy-server"`
Version string `path:"version" doc:"URL-encoded version to edit" example:"1.0.0"`
Status string `` /* 126-byte string literal not displayed */
Body apiv0.ServerJSON `body:""`
}
EditServerInput represents the input for editing a server
type HealthBody ¶
type HealthBody struct {
Status string `json:"status" example:"ok" doc:"Health status"`
GitHubClientID string `json:"github_client_id,omitempty" doc:"GitHub OAuth App Client ID"`
}
HealthBody represents the health check response body
type ListAgentsInput ¶
type ListAgentsInput struct {
Cursor string `query:"cursor" json:"cursor,omitempty" doc:"Pagination cursor" required:"false" example:"agent-cursor-123"`
Limit int `query:"limit" json:"limit,omitempty" doc:"Number of items per page" default:"30" minimum:"1" maximum:"100" example:"50"`
UpdatedSince string `` /* 167-byte string literal not displayed */
Search string `query:"search" json:"search,omitempty" doc:"Search agents by name (substring match)" required:"false" example:"filesystem"`
Version string `` /* 162-byte string literal not displayed */
Semantic bool `query:"semantic_search" json:"semantic_search,omitempty" doc:"Use semantic search for the search term"`
SemanticMatchThreshold float64 `` /* 150-byte string literal not displayed */
}
ListAgentsInput represents the input for listing agents
type ListServersInput ¶
type ListServersInput struct {
Cursor string `query:"cursor" json:"cursor,omitempty" doc:"Pagination cursor" required:"false" example:"server-cursor-123"`
Limit int `query:"limit" json:"limit,omitempty" doc:"Number of items per page" default:"30" minimum:"1" maximum:"100" example:"50"`
UpdatedSince string `` /* 168-byte string literal not displayed */
Search string `query:"search" json:"search,omitempty" doc:"Search servers by name (substring match)" required:"false" example:"filesystem"`
Version string `` /* 162-byte string literal not displayed */
Semantic bool `` /* 168-byte string literal not displayed */
SemanticMatchThreshold float64 `` /* 150-byte string literal not displayed */
}
ListServersInput represents the input for listing servers
type ListSkillsInput ¶
type ListSkillsInput struct {
Cursor string `query:"cursor" json:"cursor,omitempty" doc:"Pagination cursor" required:"false" example:"skill-cursor-123"`
Limit int `query:"limit" json:"limit,omitempty" doc:"Number of items per page" default:"30" minimum:"1" maximum:"100" example:"50"`
UpdatedSince string `` /* 167-byte string literal not displayed */
Search string `query:"search" json:"search,omitempty" doc:"Search skills by name (substring match)" required:"false" example:"filesystem"`
Version string `` /* 162-byte string literal not displayed */
}
ListSkillsInput represents the input for listing skills
type PingBody ¶
type PingBody struct {
Pong bool `json:"pong" example:"true" doc:"Ping response"`
}
PingBody represents the ping response body
type ServerDetailInput ¶
type ServerDetailInput struct {
ServerName string `path:"serverName" json:"serverName" doc:"URL-encoded server name" example:"com.example%2Fmy-server"`
}
ServerDetailInput represents the input for getting server details
type ServerReadmeResponse ¶
type ServerReadmeResponse struct {
Content string `json:"content"`
ContentType string `json:"content_type"`
SizeBytes int `json:"size_bytes"`
Sha256 string `json:"sha256"`
Version string `json:"version"`
FetchedAt time.Time `json:"fetched_at"`
}
ServerReadmeResponse is the payload for README fetch endpoints
type ServerVersionDetailInput ¶
type ServerVersionDetailInput struct {
ServerName string `path:"serverName" json:"serverName" doc:"URL-encoded server name" example:"com.example%2Fmy-server"`
Version string `path:"version" json:"version" doc:"URL-encoded server version" example:"1.0.0"`
All bool `query:"all" json:"all,omitempty" doc:"If true, return all versions of the server instead of a single version" default:"false"`
PublishedOnly bool `` /* 145-byte string literal not displayed */
}
ServerVersionDetailInput represents the input for getting a specific version
type ServerVersionsInput ¶
type ServerVersionsInput struct {
ServerName string `path:"serverName" json:"serverName" doc:"URL-encoded server name" example:"com.example%2Fmy-server"`
}
ServerVersionsInput represents the input for listing all versions of a server
type SkillDetailInput ¶
type SkillDetailInput struct {
SkillName string `path:"skillName" json:"skillName" doc:"URL-encoded skill name" example:"com.example%2Fmy-skill"`
}
SkillDetailInput represents the input for getting skill details
type SkillVersionDetailInput ¶
type SkillVersionDetailInput struct {
SkillName string `path:"skillName" json:"skillName" doc:"URL-encoded skill name" example:"com.example%2Fmy-skill"`
Version string `path:"version" json:"version" doc:"URL-encoded skill version" example:"1.0.0"`
}
SkillVersionDetailInput represents the input for getting a specific version
type SkillVersionsInput ¶
type SkillVersionsInput struct {
SkillName string `path:"skillName" json:"skillName" doc:"URL-encoded skill name" example:"com.example%2Fmy-skill"`
}
SkillVersionsInput represents the input for listing all versions of a skill
type VersionBody ¶
type VersionBody struct {
Version string `json:"version" example:"v1.0.0" doc:"Application version"`
GitCommit string `json:"git_commit" example:"abc123d" doc:"Git commit SHA"`
BuildTime string `json:"build_time" example:"2025-10-14T12:00:00Z" doc:"Build timestamp"`
}
VersionBody represents the version information