| 9373 | static void cli_clients_print_list(FILE *out); |
| 9374 | |
| 9375 | int cbm_install_agent_configs(const char *home, const char *binary_path, bool force, bool dry_run) { |
| 9376 | g_agent_install_errors = 0; |
| 9377 | cbm_detected_agents_t agents = cbm_detect_agents(home); |
| 9378 | if (g_client_selection && !cli_clients_apply_selection(g_client_selection, &agents)) { |
| 9379 | return CLI_ERR; |
| 9380 | } |
| 9381 | if (!g_install_plan) { |
| 9382 | print_detected_agents(&agents, home); |
| 9383 | } |
| 9384 | |
| 9385 | if (agents.claude_code) { |
| 9386 | install_claude_code_config(home, binary_path, force, dry_run); |
| 9387 | } |
| 9388 | install_cli_agent_configs(&agents, home, binary_path, force, dry_run); |
| 9389 | install_editor_agent_configs(&agents, home, binary_path, force, dry_run); |
| 9390 | install_additional_agent_configs(&agents, home, binary_path, force, dry_run); |
| 9391 | bool inherit_claude_session = |
| 9392 | agents.claude_code && !dry_run && cbm_has_complete_claude_session_hooks(home); |
| 9393 | install_agent_client_registry(home, binary_path, inherit_claude_session, force, dry_run); |
| 9394 | return g_agent_install_errors == 0 ? CLI_OK : CLI_ERR; |
| 9395 | } |
| 9396 | |
| 9397 | static int cbm_install_agent_configs_with_previous(const char *home, const char *binary_path, |
| 9398 | const char *previous_managed_binary_path, |
no test coverage detected