Documentation
¶
Index ¶
- Constants
- func EventCostUSD(event RuntimeEvent) (float64, bool)
- func EventDeltaText(event RuntimeEvent) string
- func EventErrorText(event RuntimeEvent) string
- func EventFinalText(event RuntimeEvent) string
- func EventMode(event RuntimeEvent) string
- func EventPayloadString(event RuntimeEvent, key string) string
- func IsRequestEvent(event RuntimeEvent) bool
- func IsTerminalTurnEvent(event RuntimeEvent) bool
- func IsTurnCompletedEvent(event RuntimeEvent) bool
- func IsTurnErroredEvent(event RuntimeEvent) bool
- func PayloadString(payload map[string]any, key string) string
- type AttentionAction
- type AttentionItem
- type AttentionStatus
- type AuthProbe
- type ClaudeModelOptions
- type CodexModelOptions
- type CostBreakdown
- type GeminiModelOptions
- type HarnessEvent
- type InteractionStatus
- type ModelAlias
- type ModelRegistry
- type ModelSelection
- type OpenCodeModelOptions
- type Ownership
- type PendingRequest
- type PiModelOptions
- type PlanStep
- type PromotedThread
- type ProviderKind
- type RequestAnswer
- type RequestKind
- type RequestOption
- type RequestQuestion
- type RequestStatus
- type RequestToolContext
- type RespondAction
- type RuntimeBackendRegistry
- type RuntimeCapabilities
- type RuntimeDescriptor
- type RuntimeEvent
- type RuntimeModel
- type RuntimeModelCapabilities
- type RuntimeModelOption
- type RuntimeProbe
- type RuntimeProviderRegistry
- type RuntimeSession
- type SessionState
- type SessionStatus
- type SystemDescriptor
- type ThreadEvent
- type ThreadKind
- type ThreadMetadata
- type ThreadRead
- type ThreadTurn
- type ThreadTurnStatus
- type TokenUsage
- type TokenUsageBreakdown
- type TrackedSession
- type TrackedThread
- type Transport
Constants ¶
View Source
const ( ControlPlaneSchemaVersion = "agentic-control.control-plane.v1" HarnessSchemaVersion = "agentic-control.harness.v1" WireProtocolVersion = "agentic-control.rpc.v1" )
View Source
const ( EventAssistantMessageDelta = "assistant.message.delta" EventAssistantThoughtDelta = "assistant.thought.delta" EventTurnStarted = "turn.started" EventTurnCompleted = "turn.completed" EventTurnErrored = "turn.errored" EventTurnInterrupted = "turn.interrupted" EventTurnPlanUpdated = "turn.plan.updated" EventThreadTokenUsageUpdated = "thread.token-usage.updated" EventToolStarted = "tool.started" EventToolProgress = "tool.progress" EventToolCompleted = "tool.completed" EventToolErrored = "tool.errored" EventSessionStarted = "session.started" EventSessionStopped = "session.stopped" EventSessionErrored = "session.errored" EventSessionModeChanged = "session.mode.changed" EventRequestOpened = "request.opened" EventRequestResponded = "request.responded" EventRequestResolved = "request.resolved" EventRequestClosed = "request.closed" EventRuntimeEvent = "runtime.event" EventRuntimeDecodeError = "runtime.decode_error" EventRuntimeStderr = "runtime.stderr" )
View Source
const ( EventSpeechTTSRequested = "speech.tts.requested" EventSpeechTTSStarted = "speech.tts.started" EventSpeechTTSCompleted = "speech.tts.completed" EventSpeechTTSCancelled = "speech.tts.cancelled" EventSpeechTTSFailed = "speech.tts.failed" EventSpeechSTTStarted = "speech.stt.started" EventSpeechSTTPartial = "speech.stt.partial" EventSpeechSTTFinal = "speech.stt.final" EventSpeechSTTCancelled = "speech.stt.cancelled" EventSpeechSTTFailed = "speech.stt.failed" EventAppOpenRequested = "app.open.requested" EventAppOpenCompleted = "app.open.completed" EventAppOpenFailed = "app.open.failed" EventScreenObserveRequested = "screen.observe.requested" EventScreenObserveCompleted = "screen.observe.completed" EventScreenObserveFailed = "screen.observe.failed" EventScreenClickRequested = "screen.click.requested" EventScreenClickCompleted = "screen.click.completed" EventScreenClickFailed = "screen.click.failed" EventInsertTargetsRequested = "insert.targets.requested" EventInsertTargetsCompleted = "insert.targets.completed" EventInsertTargetsFailed = "insert.targets.failed" EventSpeechInsertRequested = "speech.insert.requested" EventSpeechInsertStarted = "speech.insert.started" EventSpeechInsertCompleted = "speech.insert.completed" EventSpeechInsertFailed = "speech.insert.failed" EventAttentionItemCreated = "attention.item.created" EventAttentionItemUpdated = "attention.item.updated" EventAttentionItemCompleted = "attention.item.completed" EventAttentionItemFailed = "attention.item.failed" )
Variables ¶
This section is empty.
Functions ¶
func EventCostUSD ¶ added in v0.5.0
func EventCostUSD(event RuntimeEvent) (float64, bool)
func EventDeltaText ¶ added in v0.4.5
func EventDeltaText(event RuntimeEvent) string
func EventErrorText ¶ added in v0.4.5
func EventErrorText(event RuntimeEvent) string
func EventFinalText ¶ added in v0.4.5
func EventFinalText(event RuntimeEvent) string
func EventMode ¶ added in v0.5.0
func EventMode(event RuntimeEvent) string
func EventPayloadString ¶ added in v0.4.5
func EventPayloadString(event RuntimeEvent, key string) string
func IsRequestEvent ¶ added in v0.4.5
func IsRequestEvent(event RuntimeEvent) bool
func IsTerminalTurnEvent ¶ added in v0.4.5
func IsTerminalTurnEvent(event RuntimeEvent) bool
func IsTurnCompletedEvent ¶ added in v0.4.5
func IsTurnCompletedEvent(event RuntimeEvent) bool
func IsTurnErroredEvent ¶ added in v0.4.5
func IsTurnErroredEvent(event RuntimeEvent) bool
Types ¶
type AttentionAction ¶ added in v0.5.0
type AttentionAction string
const ( AttentionActionSpeak AttentionAction = "speak" AttentionActionAsk AttentionAction = "ask" AttentionActionInsert AttentionAction = "insert" AttentionActionSummarise AttentionAction = "summarise" AttentionActionIgnore AttentionAction = "ignore" AttentionActionDefer AttentionAction = "defer" )
type AttentionItem ¶ added in v0.5.0
type AttentionItem struct {
SchemaVersion string `json:"schema_version"`
ID string `json:"id"`
Status AttentionStatus `json:"status"`
Action AttentionAction `json:"action"`
Source string `json:"source,omitempty"`
Runtime string `json:"runtime,omitempty"`
SessionID string `json:"session_id,omitempty"`
TurnID string `json:"turn_id,omitempty"`
Priority int `json:"priority,omitempty"`
Text string `json:"text,omitempty"`
SpeakableText string `json:"speakable_text,omitempty"`
Target map[string]any `json:"target,omitempty"`
Voice string `json:"voice,omitempty"`
InterruptPolicy string `json:"interrupt_policy,omitempty"`
Metadata map[string]any `json:"metadata,omitempty"`
Result map[string]any `json:"result,omitempty"`
Error string `json:"error,omitempty"`
CreatedAtMS int64 `json:"created_at_ms"`
UpdatedAtMS int64 `json:"updated_at_ms"`
}
type AttentionStatus ¶ added in v0.5.0
type AttentionStatus string
const ( AttentionStatusQueued AttentionStatus = "queued" AttentionStatusReady AttentionStatus = "ready" AttentionStatusActive AttentionStatus = "active" AttentionStatusCompleted AttentionStatus = "completed" AttentionStatusSpoken AttentionStatus = "spoken" AttentionStatusInserted AttentionStatus = "inserted" AttentionStatusMuted AttentionStatus = "muted" AttentionStatusDeferred AttentionStatus = "deferred" AttentionStatusCancelled AttentionStatus = "cancelled" AttentionStatusFailed AttentionStatus = "failed" )
type ClaudeModelOptions ¶ added in v0.5.0
type CodexModelOptions ¶ added in v0.5.0
type CostBreakdown ¶ added in v0.5.0
type GeminiModelOptions ¶ added in v0.5.0
type HarnessEvent ¶
type HarnessEvent struct {
SchemaVersion string `json:"schema_version"`
RecordedAtMS int64 `json:"recorded_at_ms"`
Runtime string `json:"runtime"`
Provenance string `json:"provenance"`
NativeEventName string `json:"native_event_name"`
EventType string `json:"event_type"`
Summary string `json:"summary"`
SessionID *string `json:"session_id,omitempty"`
TurnID *string `json:"turn_id,omitempty"`
ToolCallID *string `json:"tool_call_id,omitempty"`
ToolName *string `json:"tool_name,omitempty"`
Command *string `json:"command,omitempty"`
PromptText *string `json:"prompt_text,omitempty"`
CWD *string `json:"cwd,omitempty"`
Model *string `json:"model,omitempty"`
TranscriptPath *string `json:"transcript_path,omitempty"`
SessionSource *string `json:"session_source,omitempty"`
PermissionMode *string `json:"permission_mode,omitempty"`
Reason *string `json:"reason,omitempty"`
ExitCode *int `json:"exit_code,omitempty"`
StopHookActive *bool `json:"stop_hook_active,omitempty"`
RuntimePID *int `json:"runtime_pid,omitempty"`
Bindings map[string]string `json:"bindings,omitempty"`
}
type InteractionStatus ¶ added in v0.5.0
type InteractionStatus struct {
SchemaVersion string `json:"schema_version,omitempty"`
Service string `json:"service,omitempty"`
Endpoint string `json:"endpoint,omitempty"`
Transport string `json:"transport,omitempty"`
Available bool `json:"available"`
Methods []string `json:"methods,omitempty"`
Capabilities map[string]bool `json:"capabilities,omitempty"`
LastError string `json:"last_error,omitempty"`
}
type ModelAlias ¶ added in v0.5.0
type ModelRegistry ¶ added in v0.5.0
type ModelRegistry struct {
SchemaVersion string `json:"schema_version"`
Backends []RuntimeBackendRegistry `json:"backends,omitempty"`
}
type ModelSelection ¶ added in v0.5.0
type ModelSelection struct {
Provider ProviderKind `json:"provider"`
Model string `json:"model"`
Codex *CodexModelOptions `json:"codex,omitempty"`
Claude *ClaudeModelOptions `json:"claude,omitempty"`
Gemini *GeminiModelOptions `json:"gemini,omitempty"`
OpenCode *OpenCodeModelOptions `json:"opencode,omitempty"`
Pi *PiModelOptions `json:"pi,omitempty"`
}
type OpenCodeModelOptions ¶ added in v0.5.0
type PendingRequest ¶
type PendingRequest struct {
SchemaVersion string `json:"schema_version"`
RequestID string `json:"request_id"`
SessionID string `json:"session_id"`
Runtime string `json:"runtime"`
Kind RequestKind `json:"kind"`
NativeMethod string `json:"native_method"`
Status RequestStatus `json:"status"`
Summary string `json:"summary,omitempty"`
TurnID string `json:"turn_id,omitempty"`
CreatedAtMS int64 `json:"created_at_ms"`
Tool *RequestToolContext `json:"tool,omitempty"`
Options []RequestOption `json:"options,omitempty"`
Questions []RequestQuestion `json:"questions,omitempty"`
Extensions map[string]any `json:"extensions,omitempty"`
}
type PiModelOptions ¶ added in v0.5.0
type PiModelOptions struct{}
type PromotedThread ¶ added in v0.5.0
type PromotedThread struct {
RunID string `json:"run_id"`
WorkerID string `json:"worker_id"`
Thread TrackedThread `json:"thread"`
}
type ProviderKind ¶ added in v0.5.0
type ProviderKind string
const ( ProviderKindCodex ProviderKind = "codex" ProviderKindClaude ProviderKind = "claude" ProviderKindGemini ProviderKind = "gemini" ProviderKindOpenCode ProviderKind = "opencode" ProviderKindPi ProviderKind = "pi" )
type RequestAnswer ¶
type RequestKind ¶
type RequestKind string
const ( RequestApprovalTool RequestKind = "approval.tool" RequestApprovalCommand RequestKind = "approval.command" RequestApprovalFileChange RequestKind = "approval.file_change" RequestApprovalPermissions RequestKind = "approval.permissions" RequestUserInputTool RequestKind = "user_input.tool" RequestUserInputMCP RequestKind = "user_input.mcp" RequestGeneric RequestKind = "request" )
type RequestOption ¶
type RequestQuestion ¶
type RequestQuestion struct {
ID string `json:"id"`
Prompt string `json:"prompt"`
Description string `json:"description,omitempty"`
Required bool `json:"required,omitempty"`
Options []RequestOption `json:"options,omitempty"`
}
type RequestStatus ¶
type RequestStatus string
const ( RequestStatusOpen RequestStatus = "open" RequestStatusResponded RequestStatus = "responded" RequestStatusResolved RequestStatus = "resolved" RequestStatusClosed RequestStatus = "closed" )
func RequestStatusFromEvent ¶ added in v0.4.5
func RequestStatusFromEvent(event RuntimeEvent) RequestStatus
type RequestToolContext ¶
type RespondAction ¶
type RespondAction string
const ( RespondActionAllow RespondAction = "allow" RespondActionDeny RespondAction = "deny" RespondActionSubmit RespondAction = "submit" RespondActionCancel RespondAction = "cancel" RespondActionChoose RespondAction = "choose" )
type RuntimeBackendRegistry ¶ added in v0.5.0
type RuntimeBackendRegistry struct {
Backend string `json:"backend"`
DisplayName string `json:"display_name,omitempty"`
Installed bool `json:"installed"`
SupportsSession bool `json:"supports_session"`
ModelSource string `json:"model_source,omitempty"`
DefaultModel string `json:"default_model,omitempty"`
DefaultProvider string `json:"default_provider,omitempty"`
Aliases []ModelAlias `json:"aliases,omitempty"`
Providers []RuntimeProviderRegistry `json:"providers,omitempty"`
Models []RuntimeModel `json:"models,omitempty"`
Issues []string `json:"issues,omitempty"`
}
type RuntimeCapabilities ¶
type RuntimeCapabilities struct {
StartSession bool `json:"start_session"`
ResumeSession bool `json:"resume_session"`
SendInput bool `json:"send_input"`
Interrupt bool `json:"interrupt"`
Respond bool `json:"respond"`
StopSession bool `json:"stop_session"`
ListSessions bool `json:"list_sessions"`
StreamEvents bool `json:"stream_events"`
ApprovalRequests bool `json:"approval_requests"`
UserInputRequests bool `json:"user_input_requests"`
ImmediateProviderSession bool `json:"immediate_provider_session"`
ResumeByProviderID bool `json:"resume_by_provider_id"`
AdoptExternalSessions bool `json:"adopt_external_sessions"`
}
type RuntimeDescriptor ¶
type RuntimeDescriptor struct {
SchemaVersion string `json:"schema_version"`
Runtime string `json:"runtime"`
Ownership Ownership `json:"ownership"`
Transport Transport `json:"transport"`
Capabilities RuntimeCapabilities `json:"capabilities"`
Probe *RuntimeProbe `json:"probe,omitempty"`
}
func NewRuntimeDescriptor ¶
func NewRuntimeDescriptor( runtime string, ownership Ownership, transport Transport, capabilities RuntimeCapabilities, ) RuntimeDescriptor
type RuntimeEvent ¶
type RuntimeEvent struct {
SchemaVersion string `json:"schema_version"`
EventID string `json:"event_id"`
RecordedAtMS int64 `json:"recorded_at_ms"`
Runtime string `json:"runtime"`
SessionID string `json:"session_id"`
ProviderSessionID string `json:"provider_session_id,omitempty"`
Transport Transport `json:"transport"`
Ownership Ownership `json:"ownership"`
EventType string `json:"event_type"`
NativeEventName string `json:"native_event_name,omitempty"`
Summary string `json:"summary"`
TurnID string `json:"turn_id,omitempty"`
RequestID string `json:"request_id,omitempty"`
SessionState *SessionState `json:"session_state,omitempty"`
Payload map[string]any `json:"payload,omitempty"`
Request *PendingRequest `json:"request,omitempty"`
}
func NewRuntimeEvent ¶
func NewRuntimeEvent( session RuntimeSession, eventType string, nativeEventName string, turnID string, summary string, payload map[string]any, ) RuntimeEvent
type RuntimeModel ¶ added in v0.4.7
type RuntimeModelCapabilities ¶ added in v0.4.7
type RuntimeModelCapabilities struct {
ReasoningEffortLevels []RuntimeModelOption `json:"reasoning_effort_levels,omitempty"`
ContextWindowOptions []RuntimeModelOption `json:"context_window_options,omitempty"`
VariantOptions []RuntimeModelOption `json:"variant_options,omitempty"`
AgentOptions []RuntimeModelOption `json:"agent_options,omitempty"`
PromptInjectedEfforts []string `json:"prompt_injected_efforts,omitempty"`
SupportsFastMode bool `json:"supports_fast_mode,omitempty"`
SupportsThinkingToggle bool `json:"supports_thinking_toggle,omitempty"`
SupportsThinkingLevel bool `json:"supports_thinking_level,omitempty"`
SupportsThinkingBudget bool `json:"supports_thinking_budget,omitempty"`
SupportedThinkingLevels []string `json:"supported_thinking_levels,omitempty"`
SupportedThinkingBudgets []int `json:"supported_thinking_budgets,omitempty"`
}
type RuntimeModelOption ¶ added in v0.4.7
type RuntimeProbe ¶ added in v0.4.7
type RuntimeProbe struct {
Installed bool `json:"installed"`
Status string `json:"status"`
Version string `json:"version,omitempty"`
BinaryPath string `json:"binary_path,omitempty"`
Auth AuthProbe `json:"auth,omitempty"`
Models []RuntimeModel `json:"models,omitempty"`
ModelSource string `json:"model_source,omitempty"`
Message string `json:"message,omitempty"`
ProbedAtMS int64 `json:"probed_at_ms,omitempty"`
}
type RuntimeProviderRegistry ¶ added in v0.5.0
type RuntimeProviderRegistry struct {
Provider string `json:"provider"`
DisplayName string `json:"display_name,omitempty"`
DefaultModel string `json:"default_model,omitempty"`
Models []RuntimeModel `json:"models,omitempty"`
}
type RuntimeSession ¶
type RuntimeSession struct {
SchemaVersion string `json:"schema_version"`
SessionID string `json:"session_id"`
Runtime string `json:"runtime"`
Ownership Ownership `json:"ownership"`
Transport Transport `json:"transport"`
Status SessionStatus `json:"status"`
ProviderSessionID string `json:"provider_session_id,omitempty"`
ActiveTurnID string `json:"active_turn_id,omitempty"`
CWD string `json:"cwd,omitempty"`
Model string `json:"model,omitempty"`
Mode string `json:"mode,omitempty"`
Usage TokenUsage `json:"usage,omitempty"`
CostUSD float64 `json:"cost_usd,omitempty"`
Title string `json:"title,omitempty"`
CreatedAtMS int64 `json:"created_at_ms"`
UpdatedAtMS int64 `json:"updated_at_ms"`
LastActivityAtMS int64 `json:"last_activity_at_ms,omitempty"`
LastError string `json:"last_error,omitempty"`
Metadata map[string]any `json:"metadata,omitempty"`
}
func (RuntimeSession) State ¶
func (session RuntimeSession) State() *SessionState
type SessionState ¶
type SessionState struct {
Status SessionStatus `json:"status,omitempty"`
ActiveTurnID string `json:"active_turn_id,omitempty"`
LastError string `json:"last_error,omitempty"`
CWD string `json:"cwd,omitempty"`
Model string `json:"model,omitempty"`
Mode string `json:"mode,omitempty"`
Usage TokenUsage `json:"usage,omitempty"`
CostUSD float64 `json:"cost_usd,omitempty"`
Title string `json:"title,omitempty"`
}
type SessionStatus ¶
type SessionStatus string
const ( SessionStarting SessionStatus = "starting" SessionIdle SessionStatus = "idle" SessionRunning SessionStatus = "running" SessionWaitingApproval SessionStatus = "waiting_approval" SessionWaitingUserInput SessionStatus = "waiting_user_input" SessionInterrupted SessionStatus = "interrupted" SessionStopped SessionStatus = "stopped" SessionErrored SessionStatus = "errored" )
type SystemDescriptor ¶
type SystemDescriptor struct {
SchemaVersion string `json:"schema_version"`
WireProtocolVersion string `json:"wire_protocol_version"`
Methods []string `json:"methods"`
Runtimes []RuntimeDescriptor `json:"runtimes"`
Interaction *InteractionStatus `json:"interaction,omitempty"`
}
type ThreadEvent ¶ added in v0.5.0
type ThreadEvent struct {
ID int64 `json:"id"`
ThreadID string `json:"thread_id"`
RecordedAtMS int64 `json:"recorded_at_ms,omitempty"`
EventType string `json:"event_type,omitempty"`
Summary string `json:"summary,omitempty"`
TurnID string `json:"turn_id,omitempty"`
RequestID string `json:"request_id,omitempty"`
Event RuntimeEvent `json:"event"`
}
type ThreadKind ¶ added in v0.5.0
type ThreadKind string
const ( ThreadKindOrchestrationTarget ThreadKind = "orchestration_target" ThreadKindOrchestrationReducer ThreadKind = "orchestration_reducer" ThreadKindCourtWorker ThreadKind = "court_worker" )
type ThreadMetadata ¶ added in v0.5.0
type ThreadMetadata struct {
Kind ThreadKind `json:"kind,omitempty"`
Workflow string `json:"workflow,omitempty"`
WorkflowMode string `json:"workflow_mode,omitempty"`
Task string `json:"task,omitempty"`
TargetLabel string `json:"target_label,omitempty"`
ReductionMode string `json:"reduction_mode,omitempty"`
PromotedFromRunID string `json:"promoted_from_run_id,omitempty"`
PromotedFromWorkerID string `json:"promoted_from_worker_id,omitempty"`
PromotedFromRoleID string `json:"promoted_from_role_id,omitempty"`
PromotedAsBase bool `json:"promoted_as_base,omitempty"`
CourtRunID string `json:"court_run_id,omitempty"`
CourtWorkerID string `json:"court_worker_id,omitempty"`
CourtRoleID string `json:"court_role_id,omitempty"`
CourtRoleKind string `json:"court_role_kind,omitempty"`
CourtAgent string `json:"court_agent,omitempty"`
CourtBackend string `json:"court_backend,omitempty"`
ForkMode string `json:"fork_mode,omitempty"`
ForkedFromThreadID string `json:"forked_from_thread_id,omitempty"`
ForkedFromProviderSessionID string `json:"forked_from_provider_session_id,omitempty"`
RollbackMode string `json:"rollback_mode,omitempty"`
RollbackTurns int `json:"rollback_turns,omitempty"`
RollbackFromThreadID string `json:"rollback_from_thread_id,omitempty"`
RollbackFromProviderSessionID string `json:"rollback_from_provider_session_id,omitempty"`
}
type ThreadRead ¶ added in v0.5.0
type ThreadRead struct {
Thread TrackedThread `json:"thread"`
Turns []ThreadTurn `json:"turns,omitempty"`
EventCount int `json:"event_count,omitempty"`
}
type ThreadTurn ¶ added in v0.5.0
type ThreadTurn struct {
TurnID string `json:"turn_id"`
Status ThreadTurnStatus `json:"status"`
Summary string `json:"summary,omitempty"`
AssistantText string `json:"assistant_text,omitempty"`
StartedAtMS int64 `json:"started_at_ms,omitempty"`
CompletedAtMS int64 `json:"completed_at_ms,omitempty"`
EventCount int `json:"event_count,omitempty"`
RequestIDs []string `json:"request_ids,omitempty"`
}
type ThreadTurnStatus ¶ added in v0.5.0
type ThreadTurnStatus string
const ( ThreadTurnRunning ThreadTurnStatus = "running" ThreadTurnCompleted ThreadTurnStatus = "completed" ThreadTurnErrored ThreadTurnStatus = "errored" ThreadTurnInterrupted ThreadTurnStatus = "interrupted" )
type TokenUsage ¶ added in v0.4.7
type TokenUsage struct {
InputTokens int64 `json:"input_tokens,omitempty"`
OutputTokens int64 `json:"output_tokens,omitempty"`
ReasoningTokens int64 `json:"reasoning_tokens,omitempty"`
CachedTokens int64 `json:"cached_tokens,omitempty"`
TotalTokens int64 `json:"total_tokens,omitempty"`
}
func EventTokenUsage ¶ added in v0.5.0
func EventTokenUsage(event RuntimeEvent) (TokenUsage, bool)
type TokenUsageBreakdown ¶ added in v0.5.0
type TokenUsageBreakdown struct {
Key string `json:"key"`
Usage TokenUsage `json:"usage"`
}
type TrackedSession ¶ added in v0.5.0
type TrackedSession struct {
Session RuntimeSession `json:"session"`
StartedAtMS int64 `json:"started_at_ms,omitempty"`
EndedAtMS int64 `json:"ended_at_ms,omitempty"`
LastEventType string `json:"last_event_type,omitempty"`
UsageByModel []TokenUsageBreakdown `json:"usage_by_model,omitempty"`
UsageByMode []TokenUsageBreakdown `json:"usage_by_mode,omitempty"`
CostByModel []CostBreakdown `json:"cost_by_model,omitempty"`
CostByMode []CostBreakdown `json:"cost_by_mode,omitempty"`
}
type TrackedThread ¶ added in v0.5.0
type TrackedThread struct {
ThreadID string `json:"thread_id"`
ParentThreadID string `json:"parent_thread_id,omitempty"`
Name string `json:"name,omitempty"`
Archived bool `json:"archived"`
Metadata ThreadMetadata `json:"metadata,omitempty"`
TrackedSession TrackedSession `json:"tracked_session"`
}
Click to show internal directories.
Click to hide internal directories.