Class: SpaceArchitect::CLI::Architect::InstallSkills

Inherits:
Dry::CLI::Command
  • Object
show all
Includes:
GlobalOptions, Helpers
Defined in:
lib/space_architect/cli/architect.rb

Instance Method Summary collapse

Methods included from Helpers

#display_date, #handle_errors, #project_config, #render, #setup_terminal, #state, #store, #terminal

Methods included from GlobalOptions

included

Instance Method Details

#call(provider: "claude", project: false, force: false, dry_run: false, **opts) ⇒ Object



361
362
363
364
365
366
367
368
369
370
371
372
373
# File 'lib/space_architect/cli/architect.rb', line 361

def call(provider: "claude", project: false, force: false, dry_run: false, **opts)
  setup_terminal(**opts.slice(:color, :colors))
  handle_errors do
    result = SkillInstaller.install(provider, project: project, force: force,
                                     env: project_config.env, dry_run: dry_run)
    verb = dry_run ? "Would install" : "Installed"
    terminal.say "#{verb} skills for #{provider}#{terminal.path(result[:dest_root])}"
    result[:skills].each do |s|
      terminal.say "  #{s[:name]}: #{terminal.style_skill_action(s[:action])} (#{terminal.path(s[:path])})"
    end
    CLI.record_outcome(Outcome.new(exit_code: 0))
  end
end