Documentation
¶
Index ¶
- type CreateSessionInput
- type CreateSessionOutput
- type ListSessionsInput
- type ListSessionsOutput
- type MessageOutput
- type PublishMessageInput
- type PublishMessageOutput
- type ReadInboxInput
- type ReadMessagesInput
- type ReadMessagesOutput
- type Server
- type SessionInfoOutput
- type SessionStatusInput
- type SubscribeInput
- type SubscribeOutput
- type TodoAddInput
- type TodoBlockInput
- type TodoClaimInput
- type TodoClaimOutput
- type TodoDoneInput
- type TodoItemOutput
- type TodoListInput
- type TodoListOutput
- type TodoReopenInput
- type TodoUpdateInput
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CreateSessionInput ¶
type CreateSessionInput struct {
Name string `json:"name" jsonschema:"Human-readable session name"`
Agent string `json:"agent,omitempty" jsonschema:"Agent type (e.g. claude, codex, agy). Defaults to configured default."`
Repo string `json:"repo,omitempty" jsonschema:"Path to the git repository"`
Base string `json:"base,omitempty" jsonschema:"Base branch to create worktree from"`
Prompt string `json:"prompt,omitempty" jsonschema:"Initial prompt to send to the agent"`
Model string `json:"model,omitempty" jsonschema:"Model for the agent to use (expands {model} in agent args)"`
NoRepo bool `json:"no_repo,omitempty" jsonschema:"Create session without a git worktree"`
InPlace bool `json:"in_place,omitempty" jsonschema:"Run agent directly in repo without creating a worktree"`
AllowConcurrent bool `json:"allow_concurrent,omitempty" jsonschema:"Allow multiple in-place sessions on same repo"`
}
type CreateSessionOutput ¶
type ListSessionsInput ¶
type ListSessionsInput struct{}
type ListSessionsOutput ¶
type ListSessionsOutput struct {
Sessions []SessionInfoOutput `json:"sessions"`
}
type MessageOutput ¶
type MessageOutput struct {
ID string `json:"id"`
Seq int64 `json:"seq"`
Stream string `json:"stream"`
SenderID string `json:"sender_id"`
SenderName string `json:"sender_name,omitempty"`
Body string `json:"body"`
ThreadID string `json:"thread_id,omitempty"`
ReplyTo string `json:"reply_to,omitempty"`
CreatedAt string `json:"created_at"`
// System marks an automated daemon-authored notification (e.g. PR/CI
// notices) rather than a session/human message. It is not a replyable
// session. See issue #887.
System bool `json:"system,omitempty"`
}
type PublishMessageInput ¶
type PublishMessageInput struct {
Topic string `json:"topic" jsonschema:"Topic/stream name to publish to"`
Body string `json:"body" jsonschema:"Message body"`
Sender string `json:"sender,omitempty" jsonschema:"Sender name for attribution"`
ThreadID string `json:"thread_id,omitempty" jsonschema:"Thread ID for threaded conversations"`
ReplyTo string `json:"reply_to,omitempty" jsonschema:"Topic where replies should be sent"`
}
type PublishMessageOutput ¶
type ReadInboxInput ¶ added in v0.54.0
type ReadMessagesInput ¶
type ReadMessagesInput struct {
Topic string `json:"topic" jsonschema:"Topic/stream name to read from"`
Subscriber string `json:"subscriber,omitempty" jsonschema:"Subscriber ID for tracking read position"`
All bool `json:"all,omitempty" jsonschema:"Read all messages instead of only unread"`
ThreadID string `json:"thread_id,omitempty" jsonschema:"Filter to a specific thread"`
Ack bool `json:"ack,omitempty" jsonschema:"Acknowledge messages after reading"`
}
type ReadMessagesOutput ¶
type ReadMessagesOutput struct {
Messages []MessageOutput `json:"messages"`
}
type SessionInfoOutput ¶
type SessionInfoOutput struct {
ID string `json:"id"`
Name string `json:"name"`
RepoPath string `json:"repo_path,omitempty"`
RepoName string `json:"repo_name,omitempty"`
WorktreePath string `json:"worktree_path,omitempty"`
Branch string `json:"branch,omitempty"`
Agent string `json:"agent"`
AgentSessionID string `json:"agent_session_id,omitempty"`
Model string `json:"model,omitempty"`
Status string `json:"status"`
AgentStatus string `json:"agent_status,omitempty"`
ExitCode *int `json:"exit_code,omitempty"`
CreatedAt string `json:"created_at"`
LastAttachedAt string `json:"last_attached_at,omitempty"`
Dirty bool `json:"dirty,omitempty"`
UnpushedCount int `json:"unpushed_count,omitempty"`
}
type SessionStatusInput ¶
type SessionStatusInput struct {
Session string `json:"session" jsonschema:"Session name or ID"`
}
type SubscribeInput ¶
type SubscribeInput struct {
Topic string `json:"topic" jsonschema:"Topic/stream name to subscribe to"`
Subscriber string `json:"subscriber,omitempty" jsonschema:"Subscriber ID for tracking read position"`
ThreadID string `json:"thread_id,omitempty" jsonschema:"Filter to a specific thread"`
Ack bool `json:"ack,omitempty" jsonschema:"Acknowledge the message after receiving it"`
}
type SubscribeOutput ¶
type SubscribeOutput struct {
Message MessageOutput `json:"message"`
}
type TodoAddInput ¶ added in v0.69.0
type TodoAddInput struct {
Title string `json:"title" jsonschema:"Short description of the work item"`
Tags []string `json:"tags,omitempty" jsonschema:"Optional tags to categorise the item"`
ParentID string `json:"parent_id,omitempty" jsonschema:"Optional parent item ID to nest this under"`
Note string `json:"note,omitempty" jsonschema:"Optional freeform note with more detail"`
Scenario string `json:"scenario,omitempty" jsonschema:"Add to a named scenario's list instead of this session's subtree"`
Session string `json:"session,omitempty" jsonschema:"Add to a specific session's subtree instead of this session's own"`
}
type TodoBlockInput ¶ added in v0.69.0
type TodoClaimInput ¶ added in v0.69.0
type TodoClaimInput struct {
ID string `json:"id,omitempty" jsonschema:"Item ID to claim. Leave empty to claim the next unclaimed item in scope."`
Scenario string `json:"scenario,omitempty" jsonschema:"Claim from a named scenario's list instead of this session's subtree"`
Session string `json:"session,omitempty" jsonschema:"Claim from a specific session's subtree instead of this session's own"`
}
type TodoClaimOutput ¶ added in v0.69.0
type TodoClaimOutput struct {
Claimed bool `json:"claimed"`
Item TodoItemOutput `json:"item"`
}
type TodoDoneInput ¶ added in v0.69.0
type TodoDoneInput struct {
ID string `json:"id" jsonschema:"Item ID to mark done"`
}
type TodoItemOutput ¶ added in v0.69.0
type TodoItemOutput struct {
ID string `json:"id"`
Title string `json:"title"`
Status string `json:"status"`
Scope string `json:"scope,omitempty"`
Owner string `json:"owner,omitempty"`
Assignee string `json:"assignee,omitempty"`
ParentID string `json:"parent_id,omitempty"`
Note string `json:"note,omitempty"`
Tags []string `json:"tags,omitempty"`
}
type TodoListInput ¶ added in v0.69.0
type TodoListInput struct {
Scenario string `json:"scenario,omitempty" jsonschema:"Target a named scenario's list instead of this session's subtree"`
Session string `json:"session,omitempty" jsonschema:"Target a specific session's subtree instead of this session's own"`
Status string `json:"status,omitempty" jsonschema:"Filter by status (todo, in-progress, done, blocked)"`
Tag string `json:"tag,omitempty" jsonschema:"Filter to items carrying this tag"`
}
type TodoListOutput ¶ added in v0.69.0
type TodoListOutput struct {
Items []TodoItemOutput `json:"items"`
}
type TodoReopenInput ¶ added in v0.69.0
type TodoReopenInput struct {
ID string `json:"id" jsonschema:"Item ID to reopen (move back to todo)"`
}
type TodoUpdateInput ¶ added in v0.69.0
Click to show internal directories.
Click to hide internal directories.