Class: ShapeupCli::Commands::Setup

Inherits:
Base
  • Object
show all
Defined in:
lib/shapeup_cli/commands/setup.rb

Constant Summary collapse

SKILL_SOURCE =
File.expand_path("../../../skills/shapeup/SKILL.md", __dir__)

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#agent_help?, #initialize, run

Constructor Details

This class inherits a constructor from ShapeupCli::Commands::Base

Class Method Details

.metadataObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/shapeup_cli/commands/setup.rb', line 8

def self.
  {
    command: "setup",
    path: "shapeup setup",
    short: "Install ShapeUp skills into an AI agent",
    subcommands: [
      { name: "claude", short: "Install skill into Claude Code (~/.claude/skills/)", path: "shapeup setup claude" },
      { name: "cursor", short: "Install skill into Cursor (.cursor/skills/)", path: "shapeup setup cursor" },
      { name: "project", short: "Install skill into current project (.claude/skills/)", path: "shapeup setup project" }
    ],
    flags: [],
    examples: [
      "shapeup setup claude",
      "shapeup setup project",
      "shapeup setup cursor"
    ]
  }
end

Instance Method Details

#executeObject



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/shapeup_cli/commands/setup.rb', line 27

def execute
  target = positional_arg(0)

  case target
  when "claude"  then install_global("claude")
  when "cursor"  then install_global("cursor")
  when "project" then install_project
  else
    puts <<~HELP
      Usage: shapeup setup <target>

      Targets:
        claude    Install skill globally into ~/.claude/skills/
        cursor    Install skill globally into ~/.cursor/skills/
        project   Install skill into .claude/skills/ (current directory)

      This copies the ShapeUp SKILL.md so your AI agent knows how to
      use the ShapeUp CLI when triggered by relevant phrases.
    HELP
  end
end