- All paths use ~/.elydora/{agentId}/ per-agent isolation
- Add copilot, letta plugins; split kiro into kirocli + kiroide
- Remove augment (SDK-only agent, not one-click)
- Fix filepath.Join usage (replace string concatenation)
- Fix stale comment referencing old ~/.elydora/agents/ path
- Uniform 8 agents: claudecode, cursor, gemini, kirocli, kiroide, opencode, copilot, letta
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
32 lines
895 B
Go
32 lines
895 B
Go
package plugins
|
|
|
|
// InstallConfig holds the configuration needed to install an agent plugin.
|
|
type InstallConfig struct {
|
|
AgentName string
|
|
OrgID string
|
|
AgentID string
|
|
PrivateKey string
|
|
KID string
|
|
Token string
|
|
BaseURL string
|
|
HookScript string // absolute path to the generated hook script
|
|
GuardScriptPath string // absolute path to the generated guard script (PreToolUse)
|
|
}
|
|
|
|
// PluginStatus describes the current state of a plugin installation.
|
|
type PluginStatus struct {
|
|
Installed bool
|
|
AgentName string
|
|
DisplayName string
|
|
HookConfigured bool
|
|
HookScriptExists bool
|
|
ConfigPath string
|
|
}
|
|
|
|
// AgentPlugin is the interface that every agent integration must implement.
|
|
type AgentPlugin interface {
|
|
Install(config InstallConfig) error
|
|
Uninstall(agentID string) error
|
|
Status() (PluginStatus, error)
|
|
}
|