Documentation
¶
Index ¶
- type Agent
- type AgentStatus
- type AgentsListResponse
- type Command
- type CommandStatus
- type CommandType
- type CommandsListResponse
- type CreateAgentRequest
- type CreateCommandRequest
- type CreateEventRequest
- type CreateTaskRequest
- type CreateTodoRequest
- type ErrorDetail
- type ErrorResponse
- type Event
- type EventType
- type EventsListResponse
- type FleetStatus
- type ListResponse
- type RecentUpdatesResponse
- type Task
- type TaskPriority
- type TaskStatus
- type TasksListResponse
- type TodoItem
- type TodosListResponse
- type UpdateAgentRequest
- type UpdateCommandRequest
- type UpdateTaskRequest
- type UpdateTodoRequest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Agent ¶
type Agent struct {
ID string `json:"id" db:"id"`
Name string `json:"name" db:"name"`
Status string `json:"status" db:"status"` // active|idle|waiting_feedback|error
CurrentTask *string `json:"current_task" db:"current_task"`
Worktree string `json:"worktree" db:"worktree"`
FilesChanged int `json:"files_changed" db:"files_changed"`
LinesAdded int `json:"lines_added" db:"lines_added"`
LinesRemoved int `json:"lines_removed" db:"lines_removed"`
LastCommit *time.Time `json:"last_commit" db:"last_commit"`
Progress int `json:"progress" db:"progress"` // 0-100
PendingQuestion *string `json:"pending_question" db:"pending_question"`
CreatedAt time.Time `json:"created_at" db:"created_at"`
UpdatedAt time.Time `json:"updated_at" db:"updated_at"`
}
Agent represents an AI coding agent
type AgentStatus ¶
type AgentStatus string
AgentStatus represents valid agent status values
const ( AgentStatusActive AgentStatus = "active" AgentStatusIdle AgentStatus = "idle" AgentStatusWaitingFeedback AgentStatus = "waiting_feedback" AgentStatusError AgentStatus = "error" )
type AgentsListResponse ¶
type AgentsListResponse struct {
Agents []Agent `json:"agents"`
ListResponse
}
AgentsListResponse represents the response for listing agents
type Command ¶
type Command struct {
ID string `json:"id" db:"id"`
AgentID string `json:"agent_id" db:"agent_id"`
Content string `json:"content" db:"content"`
Type string `json:"type" db:"type"` // instruction|feedback|question
Response *string `json:"response" db:"response"`
Status string `json:"status" db:"status"` // sent|acknowledged|completed
SentAt time.Time `json:"sent_at" db:"sent_at"`
RespondedAt *time.Time `json:"responded_at" db:"responded_at"`
}
Command represents a command sent to an agent
type CommandStatus ¶
type CommandStatus string
CommandStatus represents valid command status values
const ( CommandStatusSent CommandStatus = "sent" CommandStatusAcknowledged CommandStatus = "acknowledged" CommandStatusCompleted CommandStatus = "completed" )
type CommandType ¶
type CommandType string
CommandType represents valid command types
const ( CommandTypeInstruction CommandType = "instruction" CommandTypeFeedback CommandType = "feedback" CommandTypeQuestion CommandType = "question" )
type CommandsListResponse ¶
type CommandsListResponse struct {
Commands []Command `json:"commands"`
}
CommandsListResponse represents the response for listing commands
type CreateAgentRequest ¶
type CreateAgentRequest struct {
Name string `json:"name" validate:"required"`
Worktree string `json:"worktree" validate:"required"`
}
CreateAgentRequest represents the request body for creating an agent
type CreateCommandRequest ¶
type CreateCommandRequest struct {
Content string `json:"content" validate:"required"`
Type string `json:"type" validate:"required"`
}
CreateCommandRequest represents the request body for creating a command
type CreateEventRequest ¶
type CreateEventRequest struct {
Type string `json:"type" validate:"required"`
Message string `json:"message" validate:"required"`
Metadata map[string]interface{} `json:"metadata,omitempty"`
}
CreateEventRequest represents the request body for creating an event
type CreateTaskRequest ¶
type CreateTaskRequest struct {
Title string `json:"title" validate:"required"`
Description string `json:"description" validate:"required"`
Priority string `json:"priority" validate:"required"`
AssignedAgentID *string `json:"assigned_agent_id,omitempty"`
}
CreateTaskRequest represents the request body for creating a task
type CreateTodoRequest ¶
type CreateTodoRequest struct {
Text string `json:"text" validate:"required"`
Order int `json:"order,omitempty"`
}
CreateTodoRequest represents the request body for creating a todo item
type ErrorDetail ¶
type ErrorDetail struct {
Code string `json:"code"`
Message string `json:"message"`
Details interface{} `json:"details,omitempty"`
}
ErrorDetail represents error details
type ErrorResponse ¶
type ErrorResponse struct {
Error ErrorDetail `json:"error"`
}
ErrorResponse represents an error response
type Event ¶
type Event struct {
ID string `json:"id" db:"id"`
AgentID string `json:"agent_id" db:"agent_id"`
Type string `json:"type" db:"type"` // start|commit|question|success|error|info|command
Message string `json:"message" db:"message"`
Metadata map[string]interface{} `json:"metadata" db:"metadata"`
Timestamp time.Time `json:"timestamp" db:"timestamp"`
}
Event represents an event in the agent's activity log
type EventsListResponse ¶
type EventsListResponse struct {
Events []Event `json:"events"`
ListResponse
}
EventsListResponse represents the response for listing events
type FleetStatus ¶
type FleetStatus struct {
TotalAgents int `json:"total_agents"`
ActiveAgents int `json:"active_agents"`
PendingTasks int `json:"pending_tasks"`
AgentsNeedingFeedback int `json:"agents_needing_feedback"`
TotalFilesChanged int `json:"total_files_changed"`
TotalCommitsToday int `json:"total_commits_today"`
}
FleetStatus represents the overall status of the agent fleet
type ListResponse ¶
type ListResponse struct {
Total int `json:"total"`
Limit int `json:"limit"`
Offset int `json:"offset"`
}
ListResponse represents a paginated list response
type RecentUpdatesResponse ¶
type RecentUpdatesResponse struct {
Updates []Event `json:"updates"`
}
RecentUpdatesResponse represents the response for recent updates
type Task ¶
type Task struct {
ID string `json:"id" db:"id"`
Title string `json:"title" db:"title"`
Description string `json:"description" db:"description"`
AssignedAgentID *string `json:"assigned_agent_id" db:"assigned_agent_id"`
Status string `json:"status" db:"status"` // pending|assigned|in_progress|completed|failed
Priority string `json:"priority" db:"priority"` // low|medium|high|urgent
CreatedAt time.Time `json:"created_at" db:"created_at"`
AssignedAt *time.Time `json:"assigned_at" db:"assigned_at"`
CompletedAt *time.Time `json:"completed_at" db:"completed_at"`
}
Task represents a task that can be assigned to agents
type TaskPriority ¶
type TaskPriority string
TaskPriority represents valid task priority values
const ( TaskPriorityLow TaskPriority = "low" TaskPriorityMedium TaskPriority = "medium" TaskPriorityHigh TaskPriority = "high" TaskPriorityUrgent TaskPriority = "urgent" )
type TaskStatus ¶
type TaskStatus string
TaskStatus represents valid task status values
const ( TaskStatusPending TaskStatus = "pending" TaskStatusAssigned TaskStatus = "assigned" TaskStatusInProgress TaskStatus = "in_progress" TaskStatusCompleted TaskStatus = "completed" TaskStatusFailed TaskStatus = "failed" )
type TasksListResponse ¶
type TasksListResponse struct {
Tasks []Task `json:"tasks"`
ListResponse
}
TasksListResponse represents the response for listing tasks
type TodoItem ¶
type TodoItem struct {
ID string `json:"id" db:"id"`
AgentID string `json:"agent_id" db:"agent_id"`
Text string `json:"text" db:"text"`
Completed bool `json:"completed" db:"completed"`
Current bool `json:"current" db:"current"`
Order int `json:"order" db:"order_num"`
CreatedAt time.Time `json:"created_at" db:"created_at"`
CompletedAt *time.Time `json:"completed_at" db:"completed_at"`
}
TodoItem represents a task item in an agent's todo list
type TodosListResponse ¶
type TodosListResponse struct {
Todos []TodoItem `json:"todos"`
}
TodosListResponse represents the response for listing todos
type UpdateAgentRequest ¶
type UpdateAgentRequest struct {
Name *string `json:"name,omitempty"`
Status *string `json:"status,omitempty"`
CurrentTask *string `json:"current_task,omitempty"`
Worktree *string `json:"worktree,omitempty"`
FilesChanged *int `json:"files_changed,omitempty"`
LinesAdded *int `json:"lines_added,omitempty"`
LinesRemoved *int `json:"lines_removed,omitempty"`
Progress *int `json:"progress,omitempty"`
PendingQuestion *string `json:"pending_question,omitempty"`
}
UpdateAgentRequest represents the request body for updating an agent
type UpdateCommandRequest ¶
type UpdateCommandRequest struct {
Response *string `json:"response,omitempty"`
Status *string `json:"status,omitempty"`
}
UpdateCommandRequest represents the request body for updating a command
type UpdateTaskRequest ¶
type UpdateTaskRequest struct {
Title *string `json:"title,omitempty"`
Description *string `json:"description,omitempty"`
Status *string `json:"status,omitempty"`
Priority *string `json:"priority,omitempty"`
AssignedAgentID *string `json:"assigned_agent_id,omitempty"`
}
UpdateTaskRequest represents the request body for updating a task
type UpdateTodoRequest ¶
type UpdateTodoRequest struct {
Text *string `json:"text,omitempty"`
Completed *bool `json:"completed,omitempty"`
Current *bool `json:"current,omitempty"`
}
UpdateTodoRequest represents the request body for updating a todo item