Agents with anything to uninstall: adapter-reported installs (hooks in agent config) plus agents with an integration receipt (package files).
(registry: &AgentRegistry, repo_root: &std::path::Path)
| 81 | /// Agents with anything to uninstall: adapter-reported installs (hooks in |
| 82 | /// agent config) plus agents with an integration receipt (package files). |
| 83 | fn agents_with_installs(registry: &AgentRegistry, repo_root: &std::path::Path) -> Vec<String> { |
| 84 | let mut names: Vec<String> = registry |
| 85 | .installed(repo_root) |
| 86 | .iter() |
| 87 | .map(|s| s.to_string()) |
| 88 | .collect(); |
| 89 | for name in atomic_agent::integrations::registered_integrations() { |
| 90 | if names.iter().any(|n| n == &name) { |
| 91 | continue; |
| 92 | } |
| 93 | if let Ok(Some(_)) = atomic_agent::integrations::Receipt::load(&name) { |
| 94 | names.push(name); |
| 95 | } |
| 96 | } |
| 97 | names |
| 98 | } |
| 99 | |
| 100 | impl Command for Disable { |
| 101 | fn run(&self) -> CliResult<()> { |