Documentation
¶
Overview ¶
Package agents provides integration with various AI coding agents. Supports Claude Code, Cursor, Cline, and other AI assistants.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // Claude Code - uses ccusage for tracking ClaudeCode = Agent{ Name: "claude-code", DisplayName: "Claude Code", BinaryName: "claude", ConfigPath: "~/.claude/settings.json", DetectFunc: detectClaudeCode, SetupFunc: setupClaudeCode, StatusFunc: statusClaudeCode, } // Cursor - VS Code fork with AI Cursor = Agent{ Name: "cursor", DisplayName: "Cursor", BinaryName: "cursor", ConfigPath: "~/.cursor/settings.json", DetectFunc: detectCursor, SetupFunc: setupCursor, StatusFunc: statusCursor, } // Cline - VS Code extension Cline = Agent{ Name: "cline", DisplayName: "Cline", BinaryName: "code", ConfigPath: "~/.vscode/settings.json", DetectFunc: detectCline, SetupFunc: setupCline, StatusFunc: statusCline, } // Continue - open source AI assistant Continue = Agent{ Name: "continue", DisplayName: "Continue", BinaryName: "continue", ConfigPath: "~/.continue/config.json", DetectFunc: detectContinue, SetupFunc: setupContinue, StatusFunc: statusContinue, } // Aider - terminal-based AI pair programmer Aider = Agent{ Name: "aider", DisplayName: "Aider", BinaryName: "aider", ConfigPath: "~/.aider.conf.yml", DetectFunc: detectAider, SetupFunc: setupAider, StatusFunc: statusAider, } // Codex CLI - OpenAI's coding agent CodexCLI = Agent{ Name: "codex-cli", DisplayName: "Codex CLI", BinaryName: "codex", ConfigPath: "~/.codex/config.json", DetectFunc: detectCodexCLI, SetupFunc: setupCodexCLI, StatusFunc: statusCodexCLI, } // AdaL - SylphAI's AI Agent AdaL = Agent{ Name: "adal", DisplayName: "AdaL (SylphAI)", BinaryName: "adal", ConfigPath: "~/.adal/config", DetectFunc: detectAdaL, SetupFunc: setupAdaL, StatusFunc: statusAdaL, } // Kiro - AI coding agent Kiro = Agent{ Name: "kiro", DisplayName: "Kiro", BinaryName: "kiro", ConfigPath: "~/.kilorc", DetectFunc: detectKiro, SetupFunc: setupKiro, StatusFunc: statusKiro, } // Kilo Code - AI coding agent KiloCode = Agent{ Name: "kilo-code", DisplayName: "Kilo Code", BinaryName: "kilo", ConfigPath: "~/.kilorc", DetectFunc: detectKiloCode, SetupFunc: setupKiloCode, StatusFunc: statusKiloCode, } // Windsurf - Codeium's AI IDE Windsurf = Agent{ Name: "windsurf", DisplayName: "Windsurf", BinaryName: "windsurf", ConfigPath: "~/.windsurf/settings.json", DetectFunc: detectWindsurf, SetupFunc: setupWindsurf, StatusFunc: statusWindsurf, } // Replit Agent - Cloud-based AI agent ReplitAgent = Agent{ Name: "replit-agent", DisplayName: "Replit Agent", BinaryName: "replit", ConfigPath: ".replit", DetectFunc: detectReplitAgent, SetupFunc: setupReplitAgent, StatusFunc: statusReplitAgent, } // Gemini CLI - Google's Gemini CLI GeminiCLI = Agent{ Name: "gemini-cli", DisplayName: "Gemini CLI", BinaryName: "gemini", ConfigPath: "~/.gemini/settings.json", DetectFunc: detectGeminiCLI, SetupFunc: setupGeminiCLI, StatusFunc: statusGeminiCLI, } // OpenCode - Open source AI coding agent OpenCode = Agent{ Name: "opencode", DisplayName: "OpenCode", BinaryName: "opencode", ConfigPath: "~/.config/opencode/config.toml", DetectFunc: detectOpenCode, SetupFunc: setupOpenCode, StatusFunc: statusOpenCode, } // AllAgents is the list of supported agents AllAgents = []Agent{ ClaudeCode, Cursor, Cline, Continue, Aider, CodexCLI, AdaL, Kiro, KiloCode, Windsurf, ReplitAgent, GeminiCLI, OpenCode, } )
Known agents
Functions ¶
func InstallInstructions ¶
InstallInstructions returns installation instructions for an agent
func SetupAgent ¶
SetupAgent configures a specific agent for TokMan integration
Types ¶
type Agent ¶
type Agent struct {
Name string
DisplayName string
ConfigPath string
BinaryName string
DetectFunc func() bool
SetupFunc func() error
StatusFunc func() (*AgentStatus, error)
}
Agent represents an AI coding agent integration
type AgentStatus ¶
type AgentStatus struct {
Name string `json:"name"`
Installed bool `json:"installed"`
Configured bool `json:"configured"`
Version string `json:"version,omitempty"`
ConfigPath string `json:"config_path,omitempty"`
TokenUsage int64 `json:"token_usage,omitempty"`
LastActive string `json:"last_active,omitempty"`
ErrorMessage string `json:"error,omitempty"`
}
AgentStatus represents the current status of an agent integration
Click to show internal directories.
Click to hide internal directories.