refactor: remove auggie-specific code and use standard ACP protocol (#47)

- Remove ProtocolAuggie constant and AuggieAdapter
- Remove hooks system (HooksRegistry, AgentHooks, AuggieHooks)
- Remove PreGeneratedSessionID and SessionDir fields
- Change auggie-agent to use standard 'acp' protocol in agents.json
- Add model select dropdown to profile settings page
- Fix unused variable lint warnings

Auggie now uses the standard ACP protocol flow like other agents.
The --resume flag was found to not work in ACP mode, so the
workaround was unnecessary since session/new returns valid session IDs.
This commit is contained in:
João Salavisa
2026-01-19 22:41:00 +00:00
committed by GitHub
parent 8b8f8ff20b
commit 7e43534cd2
24 changed files with 556 additions and 345 deletions
@@ -89,6 +89,18 @@ func (c *Controller) ListAvailableAgents(ctx context.Context) (*dto.ListAvailabl
if displayName == "" {
displayName = def.Name
}
// Convert model entries
modelEntries := make([]dto.ModelEntryDTO, 0, len(def.ModelConfig.AvailableModels))
for _, model := range def.ModelConfig.AvailableModels {
modelEntries = append(modelEntries, dto.ModelEntryDTO{
ID: model.ID,
Name: model.Name,
Provider: model.Provider,
ContextWindow: model.ContextWindow,
IsDefault: model.IsDefault,
})
}
payload = append(payload, dto.AvailableAgentDTO{
Name: availability.Name,
DisplayName: displayName,
@@ -102,6 +114,10 @@ func (c *Controller) ListAvailableAgents(ctx context.Context) (*dto.ListAvailabl
SupportsShell: def.Capabilities.SupportsShell,
SupportsWorkspaceOnly: def.Capabilities.SupportsWorkspaceOnly,
},
ModelConfig: dto.ModelConfigDTO{
DefaultModel: def.ModelConfig.DefaultModel,
AvailableModels: modelEntries,
},
UpdatedAt: now,
})
}