Documentation
¶
Index ¶
- Variables
- func BuildSystemPrompt(cfg *PromptConfig, agentCfg *agent.Config) string
- func CollectDeepBrowserArtifacts(ctx context.Context, reg *commands.CommandRegistry, targetURL string, ...) (string, error)
- func DirectScannerRuntimeFeatures(rest []string) (config.RuntimeFeatures, []string, error)
- func HasScannerFlag(args []string, long string) bool
- func NewRemoteREPLOpener(rt *AgentRuntime, mgr *tmux.Manager) pty.OpenFunc
- func ResolveIOANodeName(option *cfg.Option) string
- func RunAgentMode(ctx context.Context, option *cfg.Option, logger telemetry.Logger, ...) error
- func RunDirectScannerMode(ctx context.Context, option *cfg.Option, rest []string, ...) error
- func RunIOAClientCommand(ctx context.Context, mode cfg.RunMode, option *cfg.Option, ...) error
- func RunIOAServe(ctx context.Context, option *cfg.Option, logger telemetry.Logger) error
- func ShouldStreamScannerOutput(rest []string) bool
- func SystemPromptFunc(cfg *PromptConfig) agent.SystemPromptFunc
- type AgentRuntime
- type App
- type LoadedSkill
- type PromptConfig
- type RuntimeConfig
Constants ¶
This section is empty.
Variables ¶
var IOAClientCommandFunc func(ctx context.Context, mode cfg.RunMode, option *cfg.Option, args cfg.IOAClientArgs, logger telemetry.Logger) error
IOAClientCommandFunc dispatches IOA client CLI commands (spaces, messages, etc.). Set via init() from cmd/aiscan setup.
var IOAServeFunc func(ctx context.Context, option *cfg.Option, logger telemetry.Logger) error
IOAServeFunc starts the IOA HTTP server. Set via init() from cmd/aiscan setup.
var ScannerInitFunc func(ctx context.Context, a *App, rc cfg.RuntimeConfig, logger telemetry.Logger)
ScannerInitFunc initializes scanner engines and registers scanner commands. Set via init() from the package imported by cmd/aiscan.
var ScannerWithAgentFunc func(ctx context.Context, option *cfg.Option, application *App, scannerArgs []string, logger telemetry.Logger) error
ScannerWithAgentFunc runs a scanner command with AI agent assistance. Set via init() from the package imported by cmd/aiscan.
Functions ¶
func BuildSystemPrompt ¶
func BuildSystemPrompt(cfg *PromptConfig, agentCfg *agent.Config) string
BuildSystemPrompt assembles the system prompt from config.
func DirectScannerRuntimeFeatures ¶
func DirectScannerRuntimeFeatures(rest []string) (config.RuntimeFeatures, []string, error)
func HasScannerFlag ¶
func NewRemoteREPLOpener ¶
func NewRemoteREPLOpener(rt *AgentRuntime, mgr *tmux.Manager) pty.OpenFunc
func ResolveIOANodeName ¶
func RunAgentMode ¶
func RunDirectScannerMode ¶
func RunIOAClientCommand ¶
func RunIOAServe ¶
func SystemPromptFunc ¶
func SystemPromptFunc(cfg *PromptConfig) agent.SystemPromptFunc
SystemPromptFunc returns an agent.SystemPromptFunc that builds the system prompt dynamically on each turn.
Types ¶
type AgentRuntime ¶
type AgentRuntime struct {
App *App
NodeName string
SystemPrompt string
Option *cfg.Option
Config agent.Config
Bus *eventbus.Bus[agent.Event]
Output *tui.AgentOutput
ConfigFile string
ResumeMessages []agent.ChatMessage
// contains filtered or unexported fields
}
func NewAgentRuntime ¶
func NewAgentRuntime(ctx context.Context, option *cfg.Option, logger telemetry.Logger, rc *RuntimeConfig) (*AgentRuntime, error)
func (*AgentRuntime) Close ¶
func (rt *AgentRuntime) Close()
func (*AgentRuntime) ReloadProvider ¶ added in v0.3.0
ReloadProvider rebuilds the LLM provider from option and hot-swaps it into the running runtime: rt.App (used by the REPL and scan paths) and rt.Config (the template every new chat agent is cloned from). It returns the live provider and resolved model so callers can propagate the swap to already-running agents. On a build failure the runtime is left untouched and the error is returned, so a bad config push never knocks out a working provider.
func (*AgentRuntime) SetLogger ¶ added in v0.3.0
func (rt *AgentRuntime) SetLogger(logger telemetry.Logger)
type App ¶
type App struct {
Provider agent.Provider
ProviderConfig agent.ProviderConfig
ProviderFallbacks []agent.ProviderEntry
Commands *commands.CommandRegistry
Engines any
Skills *skills.Store
SkillDiagnostics []skills.Diagnostic
IOAClient protocols.ClientAPI
IOAStreamClient ioaclient.StreamAPI
DataBus *eventbus.Bus[output.ToolDataEvent]
SCOSidecar *output.SCOSidecar
// contains filtered or unexported fields
}
type LoadedSkill ¶
LoadedSkill is a skill whose full body is embedded directly into the prompt.