Class: Ace::Llm::Providers::Cli::Molecules::HealthChecker

Inherits:
Object
  • Object
show all
Defined in:
lib/ace/llm/providers/cli/molecules/health_checker.rb

Overview

Orchestrates provider detection and authentication checking

Constant Summary collapse

PROVIDERS =
{
  "claude" => {
    name: "Claude Code",
    provider: "claude",
    check_cmd: ["claude", "--version"],
    install_cmd: "npm install -g @anthropic-ai/claude-cli"
  },
  "codex" => {
    name: "Codex",
    provider: "codex",
    check_cmd: ["codex", "--version"],
    install_cmd: "npm install -g @openai/codex",
    install_url: "https://codex.ai"
  },
  "opencode" => {
    name: "OpenCode",
    provider: "opencode",
    check_cmd: ["opencode", "--version"],
    install_cmd: "npm install -g opencode-cli",
    install_url: "https://opencode.dev"
  },
  "codex-oss" => {
    name: "Codex OSS",
    provider: "codexoss",
    check_cmd: ["codex-oss", "--version"],
    install_cmd: "pip install codex-oss",
    install_url: "https://github.com/codex-oss/codex"
  }
}.freeze

Instance Method Summary collapse

Instance Method Details

#check_allArray<Hash>

Check all providers and return results

Returns:

  • (Array<Hash>)

    Results for each provider



45
46
47
48
49
# File 'lib/ace/llm/providers/cli/molecules/health_checker.rb', line 45

def check_all
  PROVIDERS.map do |cli_name, config|
    check_provider(cli_name, config)
  end
end