Documentation
¶
Index ¶
- type AiderAgent
- func (a *AiderAgent) Capabilities() agentx.Capabilities
- func (a *AiderAgent) CommandManager() agentx.CommandManager
- func (a *AiderAgent) ContextFiles() []string
- func (a *AiderAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *AiderAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
- func (a *AiderAgent) HookManager() agentx.HookManager
- func (a *AiderAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *AiderAgent) Name() string
- func (a *AiderAgent) ProjectConfigPath() string
- func (a *AiderAgent) Role() agentx.AgentRole
- func (a *AiderAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *AiderAgent) SetHookManager(hm agentx.HookManager)
- func (a *AiderAgent) SupportsXDGConfig() bool
- func (a *AiderAgent) Type() agentx.AgentType
- func (a *AiderAgent) URL() string
- func (a *AiderAgent) UserConfigPath(env agentx.Environment) (string, error)
- type AmpAgent
- func (a *AmpAgent) Capabilities() agentx.Capabilities
- func (a *AmpAgent) CommandManager() agentx.CommandManager
- func (a *AmpAgent) ContextFiles() []string
- func (a *AmpAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *AmpAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
- func (a *AmpAgent) HookManager() agentx.HookManager
- func (a *AmpAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *AmpAgent) Name() string
- func (a *AmpAgent) ProjectConfigPath() string
- func (a *AmpAgent) Role() agentx.AgentRole
- func (a *AmpAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *AmpAgent) SetHookManager(hm agentx.HookManager)
- func (a *AmpAgent) SupportsXDGConfig() bool
- func (a *AmpAgent) Type() agentx.AgentType
- func (a *AmpAgent) URL() string
- func (a *AmpAgent) UserConfigPath(env agentx.Environment) (string, error)
- type ClaudeCodeAgent
- func (a *ClaudeCodeAgent) Capabilities() agentx.Capabilities
- func (a *ClaudeCodeAgent) CommandManager() agentx.CommandManager
- func (a *ClaudeCodeAgent) ContextFiles() []string
- func (a *ClaudeCodeAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *ClaudeCodeAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
- func (a *ClaudeCodeAgent) HookManager() agentx.HookManager
- func (a *ClaudeCodeAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *ClaudeCodeAgent) Name() string
- func (a *ClaudeCodeAgent) ProjectConfigPath() string
- func (a *ClaudeCodeAgent) Role() agentx.AgentRole
- func (a *ClaudeCodeAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *ClaudeCodeAgent) SetHookManager(hm agentx.HookManager)
- func (a *ClaudeCodeAgent) SupportsXDGConfig() bool
- func (a *ClaudeCodeAgent) Type() agentx.AgentType
- func (a *ClaudeCodeAgent) URL() string
- func (a *ClaudeCodeAgent) UserConfigPath(env agentx.Environment) (string, error)
- type ClineAgent
- func (a *ClineAgent) Capabilities() agentx.Capabilities
- func (a *ClineAgent) CommandManager() agentx.CommandManager
- func (a *ClineAgent) ContextFiles() []string
- func (a *ClineAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *ClineAgent) DetectVersion(_ context.Context, _ agentx.Environment) string
- func (a *ClineAgent) HookManager() agentx.HookManager
- func (a *ClineAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *ClineAgent) Name() string
- func (a *ClineAgent) ProjectConfigPath() string
- func (a *ClineAgent) Role() agentx.AgentRole
- func (a *ClineAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *ClineAgent) SetHookManager(hm agentx.HookManager)
- func (a *ClineAgent) SupportsXDGConfig() bool
- func (a *ClineAgent) Type() agentx.AgentType
- func (a *ClineAgent) URL() string
- func (a *ClineAgent) UserConfigPath(env agentx.Environment) (string, error)
- type CodePuppyAgent
- func (a *CodePuppyAgent) Capabilities() agentx.Capabilities
- func (a *CodePuppyAgent) CommandManager() agentx.CommandManager
- func (a *CodePuppyAgent) ContextFiles() []string
- func (a *CodePuppyAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *CodePuppyAgent) DetectVersion(_ context.Context, _ agentx.Environment) string
- func (a *CodePuppyAgent) HookManager() agentx.HookManager
- func (a *CodePuppyAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *CodePuppyAgent) Name() string
- func (a *CodePuppyAgent) ProjectConfigPath() string
- func (a *CodePuppyAgent) Role() agentx.AgentRole
- func (a *CodePuppyAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *CodePuppyAgent) SetHookManager(hm agentx.HookManager)
- func (a *CodePuppyAgent) SupportsXDGConfig() bool
- func (a *CodePuppyAgent) Type() agentx.AgentType
- func (a *CodePuppyAgent) URL() string
- func (a *CodePuppyAgent) UserConfigPath(env agentx.Environment) (string, error)
- type CodyAgent
- func (a *CodyAgent) Capabilities() agentx.Capabilities
- func (a *CodyAgent) CommandManager() agentx.CommandManager
- func (a *CodyAgent) ContextFiles() []string
- func (a *CodyAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *CodyAgent) DetectVersion(_ context.Context, _ agentx.Environment) string
- func (a *CodyAgent) HookManager() agentx.HookManager
- func (a *CodyAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *CodyAgent) Name() string
- func (a *CodyAgent) ProjectConfigPath() string
- func (a *CodyAgent) Role() agentx.AgentRole
- func (a *CodyAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *CodyAgent) SetHookManager(hm agentx.HookManager)
- func (a *CodyAgent) SupportsXDGConfig() bool
- func (a *CodyAgent) Type() agentx.AgentType
- func (a *CodyAgent) URL() string
- func (a *CodyAgent) UserConfigPath(env agentx.Environment) (string, error)
- type ContinueAgent
- func (a *ContinueAgent) Capabilities() agentx.Capabilities
- func (a *ContinueAgent) CommandManager() agentx.CommandManager
- func (a *ContinueAgent) ContextFiles() []string
- func (a *ContinueAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *ContinueAgent) DetectVersion(_ context.Context, _ agentx.Environment) string
- func (a *ContinueAgent) HookManager() agentx.HookManager
- func (a *ContinueAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *ContinueAgent) Name() string
- func (a *ContinueAgent) ProjectConfigPath() string
- func (a *ContinueAgent) Role() agentx.AgentRole
- func (a *ContinueAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *ContinueAgent) SetHookManager(hm agentx.HookManager)
- func (a *ContinueAgent) SupportsXDGConfig() bool
- func (a *ContinueAgent) Type() agentx.AgentType
- func (a *ContinueAgent) URL() string
- func (a *ContinueAgent) UserConfigPath(env agentx.Environment) (string, error)
- type CopilotAgent
- func (a *CopilotAgent) Capabilities() agentx.Capabilities
- func (a *CopilotAgent) CommandManager() agentx.CommandManager
- func (a *CopilotAgent) ContextFiles() []string
- func (a *CopilotAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *CopilotAgent) DetectVersion(_ context.Context, _ agentx.Environment) string
- func (a *CopilotAgent) HookManager() agentx.HookManager
- func (a *CopilotAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *CopilotAgent) Name() string
- func (a *CopilotAgent) ProjectConfigPath() string
- func (a *CopilotAgent) Role() agentx.AgentRole
- func (a *CopilotAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *CopilotAgent) SetHookManager(hm agentx.HookManager)
- func (a *CopilotAgent) SupportsXDGConfig() bool
- func (a *CopilotAgent) Type() agentx.AgentType
- func (a *CopilotAgent) URL() string
- func (a *CopilotAgent) UserConfigPath(env agentx.Environment) (string, error)
- type CursorAgent
- func (a *CursorAgent) Capabilities() agentx.Capabilities
- func (a *CursorAgent) CommandManager() agentx.CommandManager
- func (a *CursorAgent) ContextFiles() []string
- func (a *CursorAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *CursorAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
- func (a *CursorAgent) HookManager() agentx.HookManager
- func (a *CursorAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *CursorAgent) Name() string
- func (a *CursorAgent) ProjectConfigPath() string
- func (a *CursorAgent) Role() agentx.AgentRole
- func (a *CursorAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *CursorAgent) SetHookManager(hm agentx.HookManager)
- func (a *CursorAgent) SupportsXDGConfig() bool
- func (a *CursorAgent) Type() agentx.AgentType
- func (a *CursorAgent) URL() string
- func (a *CursorAgent) UserConfigPath(env agentx.Environment) (string, error)
- type DroidAgent
- func (a *DroidAgent) Capabilities() agentx.Capabilities
- func (a *DroidAgent) CommandManager() agentx.CommandManager
- func (a *DroidAgent) ContextFiles() []string
- func (a *DroidAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *DroidAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
- func (a *DroidAgent) HookManager() agentx.HookManager
- func (a *DroidAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *DroidAgent) Name() string
- func (a *DroidAgent) ProjectConfigPath() string
- func (a *DroidAgent) Role() agentx.AgentRole
- func (a *DroidAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *DroidAgent) SetHookManager(hm agentx.HookManager)
- func (a *DroidAgent) SupportsXDGConfig() bool
- func (a *DroidAgent) Type() agentx.AgentType
- func (a *DroidAgent) URL() string
- func (a *DroidAgent) UserConfigPath(env agentx.Environment) (string, error)
- type GooseAgent
- func (a *GooseAgent) Capabilities() agentx.Capabilities
- func (a *GooseAgent) CommandManager() agentx.CommandManager
- func (a *GooseAgent) ContextFiles() []string
- func (a *GooseAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *GooseAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
- func (a *GooseAgent) HookManager() agentx.HookManager
- func (a *GooseAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *GooseAgent) Name() string
- func (a *GooseAgent) ProjectConfigPath() string
- func (a *GooseAgent) Role() agentx.AgentRole
- func (a *GooseAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *GooseAgent) SetHookManager(hm agentx.HookManager)
- func (a *GooseAgent) SupportsXDGConfig() bool
- func (a *GooseAgent) Type() agentx.AgentType
- func (a *GooseAgent) URL() string
- func (a *GooseAgent) UserConfigPath(env agentx.Environment) (string, error)
- type KiroAgent
- func (a *KiroAgent) Capabilities() agentx.Capabilities
- func (a *KiroAgent) CommandManager() agentx.CommandManager
- func (a *KiroAgent) ContextFiles() []string
- func (a *KiroAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *KiroAgent) DetectVersion(_ context.Context, _ agentx.Environment) string
- func (a *KiroAgent) HookManager() agentx.HookManager
- func (a *KiroAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *KiroAgent) Name() string
- func (a *KiroAgent) ProjectConfigPath() string
- func (a *KiroAgent) Role() agentx.AgentRole
- func (a *KiroAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *KiroAgent) SetHookManager(hm agentx.HookManager)
- func (a *KiroAgent) SupportsXDGConfig() bool
- func (a *KiroAgent) Type() agentx.AgentType
- func (a *KiroAgent) URL() string
- func (a *KiroAgent) UserConfigPath(env agentx.Environment) (string, error)
- type OpenCodeAgent
- func (a *OpenCodeAgent) Capabilities() agentx.Capabilities
- func (a *OpenCodeAgent) CommandManager() agentx.CommandManager
- func (a *OpenCodeAgent) ContextFiles() []string
- func (a *OpenCodeAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *OpenCodeAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
- func (a *OpenCodeAgent) HookManager() agentx.HookManager
- func (a *OpenCodeAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *OpenCodeAgent) Name() string
- func (a *OpenCodeAgent) ProjectConfigPath() string
- func (a *OpenCodeAgent) Role() agentx.AgentRole
- func (a *OpenCodeAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *OpenCodeAgent) SetHookManager(hm agentx.HookManager)
- func (a *OpenCodeAgent) SupportsXDGConfig() bool
- func (a *OpenCodeAgent) Type() agentx.AgentType
- func (a *OpenCodeAgent) URL() string
- func (a *OpenCodeAgent) UserConfigPath(env agentx.Environment) (string, error)
- type WindsurfAgent
- func (a *WindsurfAgent) Capabilities() agentx.Capabilities
- func (a *WindsurfAgent) CommandManager() agentx.CommandManager
- func (a *WindsurfAgent) ContextFiles() []string
- func (a *WindsurfAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *WindsurfAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
- func (a *WindsurfAgent) HookManager() agentx.HookManager
- func (a *WindsurfAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
- func (a *WindsurfAgent) Name() string
- func (a *WindsurfAgent) ProjectConfigPath() string
- func (a *WindsurfAgent) Role() agentx.AgentRole
- func (a *WindsurfAgent) SetCommandManager(cm agentx.CommandManager)
- func (a *WindsurfAgent) SetHookManager(hm agentx.HookManager)
- func (a *WindsurfAgent) SupportsXDGConfig() bool
- func (a *WindsurfAgent) Type() agentx.AgentType
- func (a *WindsurfAgent) URL() string
- func (a *WindsurfAgent) UserConfigPath(env agentx.Environment) (string, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AiderAgent ¶
type AiderAgent struct {
// contains filtered or unexported fields
}
AiderAgent implements Agent for Aider (https://aider.chat).
func (*AiderAgent) Capabilities ¶
func (a *AiderAgent) Capabilities() agentx.Capabilities
Capabilities returns Aider's supported features.
func (*AiderAgent) CommandManager ¶
func (a *AiderAgent) CommandManager() agentx.CommandManager
func (*AiderAgent) ContextFiles ¶
func (a *AiderAgent) ContextFiles() []string
ContextFiles returns the context/instruction files Aider supports.
func (*AiderAgent) Detect ¶
func (a *AiderAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if Aider is the active agent.
Detection methods:
- AIDER=1 or AIDER_AGENT=1
- AGENT_ENV=aider
- Running from aider command
func (*AiderAgent) DetectVersion ¶ added in v0.2.0
func (a *AiderAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
DetectVersion attempts to determine the installed Aider version. Runs: aider --version
func (*AiderAgent) HookManager ¶
func (a *AiderAgent) HookManager() agentx.HookManager
func (*AiderAgent) IsInstalled ¶
func (a *AiderAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if Aider is installed on the system. Checks: aider binary in PATH or config directory exists.
func (*AiderAgent) Name ¶
func (a *AiderAgent) Name() string
func (*AiderAgent) ProjectConfigPath ¶
func (a *AiderAgent) ProjectConfigPath() string
ProjectConfigPath returns the Aider project configuration directory.
func (*AiderAgent) Role ¶ added in v0.2.0
func (a *AiderAgent) Role() agentx.AgentRole
func (*AiderAgent) SetCommandManager ¶
func (a *AiderAgent) SetCommandManager(cm agentx.CommandManager)
func (*AiderAgent) SetHookManager ¶
func (a *AiderAgent) SetHookManager(hm agentx.HookManager)
func (*AiderAgent) SupportsXDGConfig ¶
func (a *AiderAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns false as Aider uses ~/.aider instead of XDG paths.
func (*AiderAgent) Type ¶
func (a *AiderAgent) Type() agentx.AgentType
func (*AiderAgent) URL ¶
func (a *AiderAgent) URL() string
func (*AiderAgent) UserConfigPath ¶
func (a *AiderAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Aider user configuration directory.
type AmpAgent ¶
type AmpAgent struct {
// contains filtered or unexported fields
}
AmpAgent implements Agent for Amp by Sourcegraph (https://ampcode.com).
func (*AmpAgent) Capabilities ¶
func (a *AmpAgent) Capabilities() agentx.Capabilities
Capabilities returns Amp's supported features.
func (*AmpAgent) CommandManager ¶
func (a *AmpAgent) CommandManager() agentx.CommandManager
func (*AmpAgent) ContextFiles ¶
ContextFiles returns the context/instruction files Amp supports.
func (*AmpAgent) Detect ¶
Detect checks if Amp is the active agent.
Detection methods:
- AMP_AGENT=1 or AMP=1
- AMP_THREAD_URL is set (present in all Amp sessions)
- AGENT_ENV=amp
func (*AmpAgent) DetectVersion ¶ added in v0.2.0
DetectVersion attempts to determine the installed Amp version. Runs: amp --version
func (*AmpAgent) HookManager ¶
func (a *AmpAgent) HookManager() agentx.HookManager
func (*AmpAgent) IsInstalled ¶
IsInstalled checks if Amp is installed on the system. Checks: amp binary in PATH or config directory exists.
func (*AmpAgent) ProjectConfigPath ¶
ProjectConfigPath returns empty as Amp is primarily user-level configuration.
func (*AmpAgent) SetCommandManager ¶
func (a *AmpAgent) SetCommandManager(cm agentx.CommandManager)
func (*AmpAgent) SetHookManager ¶
func (a *AmpAgent) SetHookManager(hm agentx.HookManager)
func (*AmpAgent) SupportsXDGConfig ¶
SupportsXDGConfig returns true as Amp uses ~/.config/amp (XDG-compliant).
func (*AmpAgent) UserConfigPath ¶
func (a *AmpAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Amp user configuration directory (~/.config/amp).
type ClaudeCodeAgent ¶
type ClaudeCodeAgent struct {
// contains filtered or unexported fields
}
ClaudeCodeAgent implements Agent for Claude Code.
func NewClaudeCodeAgent ¶
func NewClaudeCodeAgent() *ClaudeCodeAgent
NewClaudeCodeAgent creates a new Claude Code agent.
func (*ClaudeCodeAgent) Capabilities ¶
func (a *ClaudeCodeAgent) Capabilities() agentx.Capabilities
Capabilities returns Claude Code's supported features.
func (*ClaudeCodeAgent) CommandManager ¶
func (a *ClaudeCodeAgent) CommandManager() agentx.CommandManager
CommandManager returns the command manager for Claude Code.
func (*ClaudeCodeAgent) ContextFiles ¶
func (a *ClaudeCodeAgent) ContextFiles() []string
ContextFiles returns the context/instruction files Claude Code supports.
func (*ClaudeCodeAgent) Detect ¶
func (a *ClaudeCodeAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if Claude Code is the active agent.
Detection methods:
- CLAUDECODE=1 (set by Claude Code)
- CLAUDE_CODE_ENTRYPOINT (set by Claude Code, e.g., "cli")
- CLAUDE_CODE_SESSION_ID (set by Claude Code for session tracking)
- AGENT_ENV=claude-code or claudecode or claude
Note on hook timing: Claude Code runs SessionStart/PreCompact hooks BEFORE setting CLAUDECODE=1 in the subprocess environment. This means hooks that run agent detection may fail even though they're running inside Claude Code. CLAUDE_CODE_ENTRYPOINT appears to be set earlier, providing a fallback. For maximum reliability, hooks should also set AGENT_ENV explicitly:
"command": "AGENT_ENV=claude-code <your-command>"
func (*ClaudeCodeAgent) DetectVersion ¶ added in v0.2.0
func (a *ClaudeCodeAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
DetectVersion attempts to determine the installed Claude Code version. Runs: claude --version
func (*ClaudeCodeAgent) HookManager ¶
func (a *ClaudeCodeAgent) HookManager() agentx.HookManager
HookManager returns the hook manager for Claude Code.
func (*ClaudeCodeAgent) IsInstalled ¶
func (a *ClaudeCodeAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if Claude Code is installed on the system. Checks: claude binary in PATH, or ~/.claude config directory exists.
func (*ClaudeCodeAgent) Name ¶
func (a *ClaudeCodeAgent) Name() string
func (*ClaudeCodeAgent) ProjectConfigPath ¶
func (a *ClaudeCodeAgent) ProjectConfigPath() string
ProjectConfigPath returns the Claude Code project configuration directory.
func (*ClaudeCodeAgent) Role ¶ added in v0.2.0
func (a *ClaudeCodeAgent) Role() agentx.AgentRole
func (*ClaudeCodeAgent) SetCommandManager ¶
func (a *ClaudeCodeAgent) SetCommandManager(cm agentx.CommandManager)
SetCommandManager sets the command manager (used during registration).
func (*ClaudeCodeAgent) SetHookManager ¶
func (a *ClaudeCodeAgent) SetHookManager(hm agentx.HookManager)
SetHookManager sets the hook manager (used during registration).
func (*ClaudeCodeAgent) SupportsXDGConfig ¶
func (a *ClaudeCodeAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns false as Claude Code uses ~/.claude instead of XDG paths.
func (*ClaudeCodeAgent) Type ¶
func (a *ClaudeCodeAgent) Type() agentx.AgentType
func (*ClaudeCodeAgent) URL ¶
func (a *ClaudeCodeAgent) URL() string
func (*ClaudeCodeAgent) UserConfigPath ¶
func (a *ClaudeCodeAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Claude Code user configuration directory (~/.claude).
type ClineAgent ¶
type ClineAgent struct {
// contains filtered or unexported fields
}
ClineAgent implements Agent for Cline (formerly Claude Dev). Cline is a VS Code extension for AI-assisted coding. https://github.com/cline/cline
func (*ClineAgent) Capabilities ¶
func (a *ClineAgent) Capabilities() agentx.Capabilities
Capabilities returns Cline's supported features.
func (*ClineAgent) CommandManager ¶
func (a *ClineAgent) CommandManager() agentx.CommandManager
func (*ClineAgent) ContextFiles ¶
func (a *ClineAgent) ContextFiles() []string
ContextFiles returns the context/instruction files Cline supports.
func (*ClineAgent) Detect ¶
func (a *ClineAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if Cline is the active agent.
Detection methods:
- CLINE=1 or CLINE_AGENT=1
- AGENT_ENV=cline
- VS Code extension context (heuristic)
func (*ClineAgent) DetectVersion ¶ added in v0.2.0
func (a *ClineAgent) DetectVersion(_ context.Context, _ agentx.Environment) string
DetectVersion returns empty string as Cline is a VS Code extension without a standalone CLI for version detection.
func (*ClineAgent) HookManager ¶
func (a *ClineAgent) HookManager() agentx.HookManager
HookManager returns the hook manager for Cline.
func (*ClineAgent) IsInstalled ¶
func (a *ClineAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if Cline is installed. Checks for VS Code extension storage directory.
func (*ClineAgent) Name ¶
func (a *ClineAgent) Name() string
func (*ClineAgent) ProjectConfigPath ¶
func (a *ClineAgent) ProjectConfigPath() string
ProjectConfigPath returns the Cline project configuration directory.
func (*ClineAgent) Role ¶ added in v0.2.0
func (a *ClineAgent) Role() agentx.AgentRole
func (*ClineAgent) SetCommandManager ¶
func (a *ClineAgent) SetCommandManager(cm agentx.CommandManager)
func (*ClineAgent) SetHookManager ¶
func (a *ClineAgent) SetHookManager(hm agentx.HookManager)
SetHookManager sets the hook manager.
func (*ClineAgent) SupportsXDGConfig ¶
func (a *ClineAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns true on Linux as VS Code follows XDG on Linux.
func (*ClineAgent) Type ¶
func (a *ClineAgent) Type() agentx.AgentType
func (*ClineAgent) URL ¶
func (a *ClineAgent) URL() string
func (*ClineAgent) UserConfigPath ¶
func (a *ClineAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Cline user configuration directory. Cline stores config in VS Code's extension storage.
type CodePuppyAgent ¶
type CodePuppyAgent struct {
// contains filtered or unexported fields
}
CodePuppyAgent implements Agent for Code Puppy.
func NewCodePuppyAgent ¶
func NewCodePuppyAgent() *CodePuppyAgent
NewCodePuppyAgent creates a new Code Puppy agent.
func (*CodePuppyAgent) Capabilities ¶
func (a *CodePuppyAgent) Capabilities() agentx.Capabilities
Capabilities returns Code Puppy's supported features.
func (*CodePuppyAgent) CommandManager ¶
func (a *CodePuppyAgent) CommandManager() agentx.CommandManager
func (*CodePuppyAgent) ContextFiles ¶
func (a *CodePuppyAgent) ContextFiles() []string
ContextFiles returns the context/instruction files Code Puppy supports.
func (*CodePuppyAgent) Detect ¶
func (a *CodePuppyAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if Code Puppy is the active agent.
Detection methods:
- CODE_PUPPY=1 or CODE_PUPPY_AGENT=1
- AGENT_ENV=code-puppy or codepuppy
func (*CodePuppyAgent) DetectVersion ¶ added in v0.2.0
func (a *CodePuppyAgent) DetectVersion(_ context.Context, _ agentx.Environment) string
DetectVersion returns empty string as Code Puppy's version detection is not yet implemented.
func (*CodePuppyAgent) HookManager ¶
func (a *CodePuppyAgent) HookManager() agentx.HookManager
func (*CodePuppyAgent) IsInstalled ¶
func (a *CodePuppyAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if Code Puppy is installed on the system. Checks: codepuppy binary in PATH or config directory exists.
func (*CodePuppyAgent) Name ¶
func (a *CodePuppyAgent) Name() string
func (*CodePuppyAgent) ProjectConfigPath ¶
func (a *CodePuppyAgent) ProjectConfigPath() string
ProjectConfigPath returns the Code Puppy project configuration directory.
func (*CodePuppyAgent) Role ¶ added in v0.2.0
func (a *CodePuppyAgent) Role() agentx.AgentRole
func (*CodePuppyAgent) SetCommandManager ¶
func (a *CodePuppyAgent) SetCommandManager(cm agentx.CommandManager)
func (*CodePuppyAgent) SetHookManager ¶
func (a *CodePuppyAgent) SetHookManager(hm agentx.HookManager)
func (*CodePuppyAgent) SupportsXDGConfig ¶
func (a *CodePuppyAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns true as Code Puppy uses ~/.config/code-puppy.
func (*CodePuppyAgent) Type ¶
func (a *CodePuppyAgent) Type() agentx.AgentType
func (*CodePuppyAgent) URL ¶
func (a *CodePuppyAgent) URL() string
func (*CodePuppyAgent) UserConfigPath ¶
func (a *CodePuppyAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Code Puppy user configuration directory.
type CodyAgent ¶
type CodyAgent struct {
// contains filtered or unexported fields
}
CodyAgent implements Agent for Sourcegraph Cody.
func (*CodyAgent) Capabilities ¶
func (a *CodyAgent) Capabilities() agentx.Capabilities
Capabilities returns Cody's supported features.
func (*CodyAgent) CommandManager ¶
func (a *CodyAgent) CommandManager() agentx.CommandManager
func (*CodyAgent) ContextFiles ¶
ContextFiles returns the context/instruction files Cody supports.
func (*CodyAgent) Detect ¶
Detect checks if Cody is the active agent.
Detection methods:
- CODY_AGENT=1
- AGENT_ENV=cody
func (*CodyAgent) DetectVersion ¶ added in v0.2.0
DetectVersion returns empty string as Cody is primarily a VS Code extension.
func (*CodyAgent) HookManager ¶
func (a *CodyAgent) HookManager() agentx.HookManager
func (*CodyAgent) IsInstalled ¶
IsInstalled checks if Cody is installed on the system. Checks: cody binary in PATH or config directory exists.
func (*CodyAgent) ProjectConfigPath ¶
ProjectConfigPath returns the Cody project configuration directory.
func (*CodyAgent) SetCommandManager ¶
func (a *CodyAgent) SetCommandManager(cm agentx.CommandManager)
func (*CodyAgent) SetHookManager ¶
func (a *CodyAgent) SetHookManager(hm agentx.HookManager)
func (*CodyAgent) SupportsXDGConfig ¶
SupportsXDGConfig returns true as Cody uses ~/.config/cody.
func (*CodyAgent) UserConfigPath ¶
func (a *CodyAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Cody user configuration directory.
type ContinueAgent ¶
type ContinueAgent struct {
// contains filtered or unexported fields
}
ContinueAgent implements Agent for Continue (https://continue.dev).
func NewContinueAgent ¶
func NewContinueAgent() *ContinueAgent
NewContinueAgent creates a new Continue agent.
func (*ContinueAgent) Capabilities ¶
func (a *ContinueAgent) Capabilities() agentx.Capabilities
Capabilities returns Continue's supported features.
func (*ContinueAgent) CommandManager ¶
func (a *ContinueAgent) CommandManager() agentx.CommandManager
func (*ContinueAgent) ContextFiles ¶
func (a *ContinueAgent) ContextFiles() []string
ContextFiles returns the context/instruction files Continue supports.
func (*ContinueAgent) Detect ¶
func (a *ContinueAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if Continue is the active agent.
Detection methods:
- CONTINUE_AGENT=1
- AGENT_ENV=continue
func (*ContinueAgent) DetectVersion ¶ added in v0.2.0
func (a *ContinueAgent) DetectVersion(_ context.Context, _ agentx.Environment) string
DetectVersion returns empty string as Continue is primarily an IDE extension.
func (*ContinueAgent) HookManager ¶
func (a *ContinueAgent) HookManager() agentx.HookManager
func (*ContinueAgent) IsInstalled ¶
func (a *ContinueAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if Continue is installed on the system. Checks: continue binary in PATH or config directory exists.
func (*ContinueAgent) Name ¶
func (a *ContinueAgent) Name() string
func (*ContinueAgent) ProjectConfigPath ¶
func (a *ContinueAgent) ProjectConfigPath() string
ProjectConfigPath returns the Continue project configuration directory.
func (*ContinueAgent) Role ¶ added in v0.2.0
func (a *ContinueAgent) Role() agentx.AgentRole
func (*ContinueAgent) SetCommandManager ¶
func (a *ContinueAgent) SetCommandManager(cm agentx.CommandManager)
func (*ContinueAgent) SetHookManager ¶
func (a *ContinueAgent) SetHookManager(hm agentx.HookManager)
func (*ContinueAgent) SupportsXDGConfig ¶
func (a *ContinueAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns false as Continue uses ~/.continue instead of XDG paths.
func (*ContinueAgent) Type ¶
func (a *ContinueAgent) Type() agentx.AgentType
func (*ContinueAgent) URL ¶
func (a *ContinueAgent) URL() string
func (*ContinueAgent) UserConfigPath ¶
func (a *ContinueAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Continue user configuration directory.
type CopilotAgent ¶
type CopilotAgent struct {
// contains filtered or unexported fields
}
CopilotAgent implements Agent for GitHub Copilot.
func NewCopilotAgent ¶
func NewCopilotAgent() *CopilotAgent
NewCopilotAgent creates a new GitHub Copilot agent.
func (*CopilotAgent) Capabilities ¶
func (a *CopilotAgent) Capabilities() agentx.Capabilities
Capabilities returns Copilot's supported features. Note: Copilot's agent mode has different capabilities than the autocomplete.
func (*CopilotAgent) CommandManager ¶
func (a *CopilotAgent) CommandManager() agentx.CommandManager
func (*CopilotAgent) ContextFiles ¶
func (a *CopilotAgent) ContextFiles() []string
ContextFiles returns the context/instruction files Copilot supports.
func (*CopilotAgent) Detect ¶
func (a *CopilotAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if GitHub Copilot is the active agent.
Detection methods:
- COPILOT_AGENT=1 (future standard)
- AGENT_ENV=copilot or github-copilot
Note: Copilot agent mode runs in GitHub's backend, so local detection may not always work. When running in Copilot's cloud environment, detection will rely on AGENT_ENV being explicitly set.
func (*CopilotAgent) DetectVersion ¶ added in v0.2.0
func (a *CopilotAgent) DetectVersion(_ context.Context, _ agentx.Environment) string
DetectVersion returns empty string as Copilot is a VS Code extension without a standalone CLI for version detection.
func (*CopilotAgent) HookManager ¶
func (a *CopilotAgent) HookManager() agentx.HookManager
HookManager returns the hook manager for Copilot. Returns nil as Copilot doesn't support hooks yet.
func (*CopilotAgent) IsInstalled ¶
func (a *CopilotAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if GitHub Copilot is installed on the system. Checks: gh copilot extension or config directory exists.
func (*CopilotAgent) Name ¶
func (a *CopilotAgent) Name() string
func (*CopilotAgent) ProjectConfigPath ¶
func (a *CopilotAgent) ProjectConfigPath() string
ProjectConfigPath returns the GitHub Copilot project configuration directory.
func (*CopilotAgent) Role ¶ added in v0.2.0
func (a *CopilotAgent) Role() agentx.AgentRole
func (*CopilotAgent) SetCommandManager ¶
func (a *CopilotAgent) SetCommandManager(cm agentx.CommandManager)
func (*CopilotAgent) SetHookManager ¶
func (a *CopilotAgent) SetHookManager(hm agentx.HookManager)
SetHookManager sets the hook manager.
func (*CopilotAgent) SupportsXDGConfig ¶
func (a *CopilotAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns true as Copilot uses ~/.config/github-copilot.
func (*CopilotAgent) Type ¶
func (a *CopilotAgent) Type() agentx.AgentType
func (*CopilotAgent) URL ¶
func (a *CopilotAgent) URL() string
func (*CopilotAgent) UserConfigPath ¶
func (a *CopilotAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the GitHub Copilot user configuration directory.
type CursorAgent ¶
type CursorAgent struct {
// contains filtered or unexported fields
}
CursorAgent implements Agent for Cursor.
func (*CursorAgent) Capabilities ¶
func (a *CursorAgent) Capabilities() agentx.Capabilities
Capabilities returns Cursor's supported features.
func (*CursorAgent) CommandManager ¶
func (a *CursorAgent) CommandManager() agentx.CommandManager
func (*CursorAgent) ContextFiles ¶
func (a *CursorAgent) ContextFiles() []string
ContextFiles returns the context/instruction files Cursor supports.
func (*CursorAgent) Detect ¶
func (a *CursorAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if Cursor is the active agent.
Detection methods:
- CURSOR_AGENT=1 (future standard)
- AGENT_ENV=cursor
- Running from cursor CLI (heuristic)
func (*CursorAgent) DetectVersion ¶ added in v0.2.0
func (a *CursorAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
DetectVersion attempts to determine the installed Cursor version. Reads ~/.cursor/package.json for the version field.
func (*CursorAgent) HookManager ¶
func (a *CursorAgent) HookManager() agentx.HookManager
HookManager returns the hook manager for Cursor.
func (*CursorAgent) IsInstalled ¶
func (a *CursorAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if Cursor is installed on the system. Checks: cursor binary in PATH, macOS app bundle, or ~/.cursor config directory.
func (*CursorAgent) Name ¶
func (a *CursorAgent) Name() string
func (*CursorAgent) ProjectConfigPath ¶
func (a *CursorAgent) ProjectConfigPath() string
ProjectConfigPath returns the Cursor project configuration directory.
func (*CursorAgent) Role ¶ added in v0.2.0
func (a *CursorAgent) Role() agentx.AgentRole
func (*CursorAgent) SetCommandManager ¶
func (a *CursorAgent) SetCommandManager(cm agentx.CommandManager)
func (*CursorAgent) SetHookManager ¶
func (a *CursorAgent) SetHookManager(hm agentx.HookManager)
SetHookManager sets the hook manager.
func (*CursorAgent) SupportsXDGConfig ¶
func (a *CursorAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns false as Cursor uses ~/.cursor instead of XDG paths.
func (*CursorAgent) Type ¶
func (a *CursorAgent) Type() agentx.AgentType
func (*CursorAgent) URL ¶
func (a *CursorAgent) URL() string
func (*CursorAgent) UserConfigPath ¶
func (a *CursorAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Cursor user configuration directory (~/.cursor).
type DroidAgent ¶
type DroidAgent struct {
// contains filtered or unexported fields
}
DroidAgent implements Agent for Factory Droid. Droid is Factory.ai's terminal-based coding agent. https://factory.ai/
func (*DroidAgent) Capabilities ¶
func (a *DroidAgent) Capabilities() agentx.Capabilities
Capabilities returns Droid's supported features.
func (*DroidAgent) CommandManager ¶
func (a *DroidAgent) CommandManager() agentx.CommandManager
func (*DroidAgent) ContextFiles ¶
func (a *DroidAgent) ContextFiles() []string
ContextFiles returns the context/instruction files Droid supports.
func (*DroidAgent) Detect ¶
func (a *DroidAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if Droid is the active agent.
Detection methods:
- DROID=1 or DROID_AGENT=1
- FACTORY_DROID=1
- AGENT_ENV=droid or AGENT_ENV=factory-droid
- Running from droid CLI (heuristic)
func (*DroidAgent) DetectVersion ¶ added in v0.2.0
func (a *DroidAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
DetectVersion attempts to determine the installed Droid version. Runs: droid --version
func (*DroidAgent) HookManager ¶
func (a *DroidAgent) HookManager() agentx.HookManager
HookManager returns the hook manager for Droid.
func (*DroidAgent) IsInstalled ¶
func (a *DroidAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if Droid is installed. Checks for droid binary in PATH or config directory.
func (*DroidAgent) Name ¶
func (a *DroidAgent) Name() string
func (*DroidAgent) ProjectConfigPath ¶
func (a *DroidAgent) ProjectConfigPath() string
ProjectConfigPath returns the Droid project configuration directory.
func (*DroidAgent) Role ¶ added in v0.2.0
func (a *DroidAgent) Role() agentx.AgentRole
func (*DroidAgent) SetCommandManager ¶
func (a *DroidAgent) SetCommandManager(cm agentx.CommandManager)
func (*DroidAgent) SetHookManager ¶
func (a *DroidAgent) SetHookManager(hm agentx.HookManager)
SetHookManager sets the hook manager.
func (*DroidAgent) SupportsXDGConfig ¶
func (a *DroidAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns true as Droid follows XDG paths.
func (*DroidAgent) Type ¶
func (a *DroidAgent) Type() agentx.AgentType
func (*DroidAgent) URL ¶
func (a *DroidAgent) URL() string
func (*DroidAgent) UserConfigPath ¶
func (a *DroidAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Droid user configuration directory.
type GooseAgent ¶
type GooseAgent struct {
// contains filtered or unexported fields
}
GooseAgent implements Agent for Goose by Block (https://block.github.io/goose/).
func (*GooseAgent) Capabilities ¶
func (a *GooseAgent) Capabilities() agentx.Capabilities
Capabilities returns Goose's supported features.
func (*GooseAgent) CommandManager ¶
func (a *GooseAgent) CommandManager() agentx.CommandManager
func (*GooseAgent) ContextFiles ¶
func (a *GooseAgent) ContextFiles() []string
ContextFiles returns the context/instruction files Goose supports.
func (*GooseAgent) Detect ¶
func (a *GooseAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if Goose is the active agent.
Detection methods:
- GOOSE_AGENT=1 or GOOSE=1
- AGENT_ENV=goose
- Running from goose command (heuristic)
func (*GooseAgent) DetectVersion ¶ added in v0.2.0
func (a *GooseAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
DetectVersion attempts to determine the installed Goose version. Runs: goose --version
func (*GooseAgent) HookManager ¶
func (a *GooseAgent) HookManager() agentx.HookManager
func (*GooseAgent) IsInstalled ¶
func (a *GooseAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if Goose is installed on the system. Checks: goose binary in PATH or config directory exists.
func (*GooseAgent) Name ¶
func (a *GooseAgent) Name() string
func (*GooseAgent) ProjectConfigPath ¶
func (a *GooseAgent) ProjectConfigPath() string
ProjectConfigPath returns empty as Goose is primarily user-level configuration.
func (*GooseAgent) Role ¶ added in v0.2.0
func (a *GooseAgent) Role() agentx.AgentRole
func (*GooseAgent) SetCommandManager ¶
func (a *GooseAgent) SetCommandManager(cm agentx.CommandManager)
func (*GooseAgent) SetHookManager ¶
func (a *GooseAgent) SetHookManager(hm agentx.HookManager)
func (*GooseAgent) SupportsXDGConfig ¶
func (a *GooseAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns true as Goose uses ~/.config/goose.
func (*GooseAgent) Type ¶
func (a *GooseAgent) Type() agentx.AgentType
func (*GooseAgent) URL ¶
func (a *GooseAgent) URL() string
func (*GooseAgent) UserConfigPath ¶
func (a *GooseAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Goose user configuration directory. Goose uses XDG-compliant paths (~/.config/goose).
type KiroAgent ¶
type KiroAgent struct {
// contains filtered or unexported fields
}
KiroAgent implements Agent for Kiro (AWS).
func (*KiroAgent) Capabilities ¶
func (a *KiroAgent) Capabilities() agentx.Capabilities
Capabilities returns Kiro's supported features.
func (*KiroAgent) CommandManager ¶
func (a *KiroAgent) CommandManager() agentx.CommandManager
func (*KiroAgent) ContextFiles ¶
ContextFiles returns the context/instruction files Kiro supports. Kiro is backwards compatible with Amazon Q rules.
func (*KiroAgent) Detect ¶
Detect checks if Kiro is the active agent.
Detection methods:
- KIRO_AGENT=1 or KIRO=1
- AGENT_ENV=kiro
func (*KiroAgent) DetectVersion ¶ added in v0.2.0
DetectVersion returns empty string as Kiro's version detection is not yet implemented.
func (*KiroAgent) HookManager ¶
func (a *KiroAgent) HookManager() agentx.HookManager
func (*KiroAgent) IsInstalled ¶
IsInstalled checks if Kiro is installed on the system. Checks: kiro binary in PATH, macOS app bundle, or config directory.
func (*KiroAgent) ProjectConfigPath ¶
ProjectConfigPath returns the Kiro project configuration directory.
func (*KiroAgent) SetCommandManager ¶
func (a *KiroAgent) SetCommandManager(cm agentx.CommandManager)
func (*KiroAgent) SetHookManager ¶
func (a *KiroAgent) SetHookManager(hm agentx.HookManager)
func (*KiroAgent) SupportsXDGConfig ¶
SupportsXDGConfig returns false as Kiro uses ~/.kiro instead of XDG paths.
func (*KiroAgent) UserConfigPath ¶
func (a *KiroAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Kiro user configuration directory.
type OpenCodeAgent ¶
type OpenCodeAgent struct {
// contains filtered or unexported fields
}
OpenCodeAgent implements Agent for OpenCode (https://opencode.ai).
func NewOpenCodeAgent ¶
func NewOpenCodeAgent() *OpenCodeAgent
NewOpenCodeAgent creates a new OpenCode agent.
func (*OpenCodeAgent) Capabilities ¶
func (a *OpenCodeAgent) Capabilities() agentx.Capabilities
Capabilities returns OpenCode's supported features.
func (*OpenCodeAgent) CommandManager ¶
func (a *OpenCodeAgent) CommandManager() agentx.CommandManager
func (*OpenCodeAgent) ContextFiles ¶
func (a *OpenCodeAgent) ContextFiles() []string
ContextFiles returns the context/instruction files OpenCode supports.
func (*OpenCodeAgent) Detect ¶
func (a *OpenCodeAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if OpenCode is the active agent.
Detection methods:
- OPENCODE=1 or OPENCODE_AGENT=1
- AGENT_ENV=opencode
func (*OpenCodeAgent) DetectVersion ¶ added in v0.2.0
func (a *OpenCodeAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
DetectVersion attempts to determine the installed OpenCode version. Runs: opencode --version
func (*OpenCodeAgent) HookManager ¶
func (a *OpenCodeAgent) HookManager() agentx.HookManager
func (*OpenCodeAgent) IsInstalled ¶
func (a *OpenCodeAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if OpenCode is installed on the system. Checks: opencode binary in PATH or config directory exists.
func (*OpenCodeAgent) Name ¶
func (a *OpenCodeAgent) Name() string
func (*OpenCodeAgent) ProjectConfigPath ¶
func (a *OpenCodeAgent) ProjectConfigPath() string
ProjectConfigPath returns the OpenCode project configuration directory.
func (*OpenCodeAgent) Role ¶ added in v0.2.0
func (a *OpenCodeAgent) Role() agentx.AgentRole
func (*OpenCodeAgent) SetCommandManager ¶
func (a *OpenCodeAgent) SetCommandManager(cm agentx.CommandManager)
func (*OpenCodeAgent) SetHookManager ¶
func (a *OpenCodeAgent) SetHookManager(hm agentx.HookManager)
func (*OpenCodeAgent) SupportsXDGConfig ¶
func (a *OpenCodeAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns false as OpenCode uses ~/.opencode instead of XDG paths.
func (*OpenCodeAgent) Type ¶
func (a *OpenCodeAgent) Type() agentx.AgentType
func (*OpenCodeAgent) URL ¶
func (a *OpenCodeAgent) URL() string
func (*OpenCodeAgent) UserConfigPath ¶
func (a *OpenCodeAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the OpenCode user configuration directory.
type WindsurfAgent ¶
type WindsurfAgent struct {
// contains filtered or unexported fields
}
WindsurfAgent implements Agent for Windsurf (Codeium).
func NewWindsurfAgent ¶
func NewWindsurfAgent() *WindsurfAgent
NewWindsurfAgent creates a new Windsurf agent.
func (*WindsurfAgent) Capabilities ¶
func (a *WindsurfAgent) Capabilities() agentx.Capabilities
Capabilities returns Windsurf's supported features.
func (*WindsurfAgent) CommandManager ¶
func (a *WindsurfAgent) CommandManager() agentx.CommandManager
func (*WindsurfAgent) ContextFiles ¶
func (a *WindsurfAgent) ContextFiles() []string
ContextFiles returns the context/instruction files Windsurf supports.
func (*WindsurfAgent) Detect ¶
func (a *WindsurfAgent) Detect(ctx context.Context, env agentx.Environment) (bool, error)
Detect checks if Windsurf is the active agent.
Detection methods:
- WINDSURF_AGENT=1 (future standard)
- CODEIUM_AGENT=1 (alternative)
- AGENT_ENV=windsurf or codeium
func (*WindsurfAgent) DetectVersion ¶ added in v0.2.0
func (a *WindsurfAgent) DetectVersion(ctx context.Context, env agentx.Environment) string
DetectVersion attempts to determine the installed Windsurf version. Reads ~/.codeium/windsurf/package.json for the version field.
func (*WindsurfAgent) HookManager ¶
func (a *WindsurfAgent) HookManager() agentx.HookManager
HookManager returns the hook manager for Windsurf.
func (*WindsurfAgent) IsInstalled ¶
func (a *WindsurfAgent) IsInstalled(ctx context.Context, env agentx.Environment) (bool, error)
IsInstalled checks if Windsurf is installed on the system. Checks: windsurf binary in PATH, macOS app bundle, or config directory.
func (*WindsurfAgent) Name ¶
func (a *WindsurfAgent) Name() string
func (*WindsurfAgent) ProjectConfigPath ¶
func (a *WindsurfAgent) ProjectConfigPath() string
ProjectConfigPath returns the Windsurf project configuration directory.
func (*WindsurfAgent) Role ¶ added in v0.2.0
func (a *WindsurfAgent) Role() agentx.AgentRole
func (*WindsurfAgent) SetCommandManager ¶
func (a *WindsurfAgent) SetCommandManager(cm agentx.CommandManager)
func (*WindsurfAgent) SetHookManager ¶
func (a *WindsurfAgent) SetHookManager(hm agentx.HookManager)
SetHookManager sets the hook manager.
func (*WindsurfAgent) SupportsXDGConfig ¶
func (a *WindsurfAgent) SupportsXDGConfig() bool
SupportsXDGConfig returns false as Windsurf uses ~/.codeium instead of XDG paths.
func (*WindsurfAgent) Type ¶
func (a *WindsurfAgent) Type() agentx.AgentType
func (*WindsurfAgent) URL ¶
func (a *WindsurfAgent) URL() string
func (*WindsurfAgent) UserConfigPath ¶
func (a *WindsurfAgent) UserConfigPath(env agentx.Environment) (string, error)
UserConfigPath returns the Windsurf user configuration directory (~/.codeium).