Documentation
¶
Index ¶
- func BuildInstructions(modelID string, data prompt.SectionData) string
- type Agent
- func (a *Agent) Cancel(id string)
- func (a *Agent) Close() error
- func (a *Agent) ContextStats(id string) (harness.ContextStats, bool)
- func (a *Agent) DeleteSession(_ context.Context, id string) error
- func (a *Agent) Effort(sessionID string) (string, []string)
- func (a *Agent) ExecSession(id string, execID int) (shell.ExecSessionInfo, bool)
- func (a *Agent) ExecSessions(id string) []shell.ExecSessionInfo
- func (a *Agent) FetchModels(ctx context.Context)
- func (a *Agent) HasSession(id string) bool
- func (a *Agent) HistorySnapshot(id string) code.HistorySnapshot
- func (a *Agent) HistoryVersion(id string) code.HistoryVersion
- func (a *Agent) ListSessions(_ context.Context) ([]code.SessionInfo, error)
- func (a *Agent) LoadSession(_ context.Context, id string) error
- func (a *Agent) LoadTurnQueue(sessionID string) (code.TurnQueueState, error)
- func (a *Agent) Messages(id string) []harness.Message
- func (a *Agent) Models(sessionID string) ([]model.Model, string)
- func (a *Agent) Modes(sessionID string) ([]code.Mode, string)
- func (a *Agent) Name() string
- func (a *Agent) NewSession(_ context.Context) (string, error)
- func (a *Agent) Recap(ctx context.Context, id string) (string, error)
- func (a *Agent) RoleModel(role string) (harness.ModelOption, bool)
- func (a *Agent) RunningTaskCount() int
- func (a *Agent) Save(id string) error
- func (a *Agent) SaveTurnQueue(sessionID string, state code.TurnQueueState) error
- func (a *Agent) Schedules(id string) schedule.Store
- func (a *Agent) Send(ctx context.Context, id string, input []harness.Content) (iter.Seq2[harness.Message, error], error)
- func (a *Agent) SessionsDir() string
- func (a *Agent) SetEffort(_ context.Context, sessionID, value string) error
- func (a *Agent) SetMode(_ context.Context, sessionID, modeID string) error
- func (a *Agent) SetModel(_ context.Context, sessionID, id string) error
- func (a *Agent) SetUI(ui code.UI)
- func (a *Agent) Steer(_ context.Context, id string, input code.TurnInput) error
- func (a *Agent) StopExecSession(id string, execID int) error
- func (a *Agent) Tasks(id string) *task.Registry
- func (a *Agent) Tools(id string) []tool.Tool
- func (a *Agent) TurnFeatures(string) code.TurnFeatures
- func (a *Agent) Usage(id string) harness.Usage
- func (a *Agent) Workspace() *code.Workspace
- type Options
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildInstructions ¶
func BuildInstructions(modelID string, data prompt.SectionData) string
Types ¶
type Agent ¶
type Agent struct {
// contains filtered or unexported fields
}
func New ¶
New constructs a built-in code agent. Options are optional so existing callers keep the default tool set; multiple values are combined.
func (*Agent) ContextStats ¶ added in v0.11.2
func (a *Agent) ContextStats(id string) (harness.ContextStats, bool)
func (*Agent) ExecSession ¶ added in v0.16.4
func (*Agent) ExecSessions ¶ added in v0.16.4
func (a *Agent) ExecSessions(id string) []shell.ExecSessionInfo
ExecSessions exposes commands that exec_command left running so web clients can present them with the session's other background work.
func (*Agent) FetchModels ¶ added in v0.8.2
func (*Agent) HasSession ¶
func (*Agent) HistorySnapshot ¶ added in v0.12.9
func (a *Agent) HistorySnapshot(id string) code.HistorySnapshot
func (*Agent) HistoryVersion ¶ added in v0.12.9
func (a *Agent) HistoryVersion(id string) code.HistoryVersion
func (*Agent) ListSessions ¶
func (*Agent) LoadTurnQueue ¶ added in v0.15.8
func (a *Agent) LoadTurnQueue(sessionID string) (code.TurnQueueState, error)
func (*Agent) RoleModel ¶ added in v0.14.10
func (a *Agent) RoleModel(role string) (harness.ModelOption, bool)
RoleModel resolves "main", "plan", or "utility" without a session. An empty role selects main; session-derived configs replace this with a resolver whose empty role follows the session's active mode.
func (*Agent) RunningTaskCount ¶ added in v0.11.2
RunningTaskCount sums running background agents across every live session, so quitting warns about agents outside the currently viewed session too.
func (*Agent) SaveTurnQueue ¶ added in v0.15.8
func (a *Agent) SaveTurnQueue(sessionID string, state code.TurnQueueState) error
func (*Agent) Schedules ¶ added in v0.12.19
Schedules exposes the session's scheduled tasks so UI surfaces can list them alongside its background agents.
func (*Agent) SessionsDir ¶
func (*Agent) SetModel ¶
SetModel applies to the session's current role: picking a model while in plan mode configures planning, otherwise coding.
func (*Agent) StopExecSession ¶ added in v0.16.4
func (*Agent) Tasks ¶ added in v0.11.2
Tasks exposes the session's background-agent registry so UI surfaces can list running agents and deliver completion notifications.
func (*Agent) TurnFeatures ¶ added in v0.10.9
func (a *Agent) TurnFeatures(string) code.TurnFeatures
type Options ¶ added in v0.15.9
type Options struct {
// RequireSessionContext disables single-client prompt routing fallbacks.
RequireSessionContext bool
IsolateSessionSettings bool
DisableShell bool
DisableWebSearch bool
DisableWebFetch bool
// Telemetry overrides the pipeline on the underlying agent.Config. A nil
// value inherits that config, including automatic standard OTEL environment
// configuration from agent.DefaultConfig.
Telemetry *telemetry.Telemetry
// ShutdownTelemetryOnClose transfers ownership of the selected telemetry
// pipeline to this Agent. The Agent closes associated workspace MCP sessions
// before shutting the pipeline down so their final metrics can be exported.
// Most embedders should leave ownership with the component that created the
// pipeline.
ShutdownTelemetryOnClose bool
}
Options controls the built-in tools exposed by an Agent. Environment variables are resolved once when the agent starts and are combined with the explicitly supplied options.