---
name: shivdeepak/skillship:install
source: https://app.decimal.ai/s/shivdeepak-skillship-install@1/SKILL.md
source_sha256: 846f157f38ab
---

# skillship:install

Drive the `skillship install` CLI command to install a remote Agent Skill. Run
the CLI for the user; do not ask them to run commands manually.

## Workflow

Copy this checklist and track progress:

```
- [ ] 1. Identify the skill source (repo URL, GitHub shorthand, or local path)
- [ ] 2. Confirm the install target with the user
- [ ] 3. Install or package for upload
```

### Step 1 — Identify the skill source

Determine where the skill lives. Accepted formats:

```bash
owner/repo                          # GitHub shorthand (installs ALL skills under skills/)
owner/repo@skill-name               # filter to a specific skill by name
https://gitlab.com/org/repo/-/tree/main/skills/my-skill
git@github.com:org/repo.git
/local/path/to/skill-dir            # local directory
```

Remote sources are cloned (`git clone --depth 1`) to a temp directory; `git`
must be on PATH.

### Step 2 — Confirm the install target

Ask the user where to install (use AskQuestion). Targets:

| Target | Mechanism |
| --- | --- |
| `cursor`, `claude-code` | Filesystem install |
| `claude-web`, `claude-cowork` | Upload-only `.skill` zip |

### Step 3 — Install or package for upload

**Filesystem agents** (e.g. Cursor, Claude Code):

```bash
npx skillship@latest install <source> -a cursor -a claude-code
```

When a source resolves to multiple skills (e.g. a repo with sibling sub-skills),
`install` lists them and asks for confirmation, then prompts for global vs
project scope and copy vs symlink — unless those are pre-decided by flags:

- `-g`/`--global` installs for all projects instead of the current one (skips the
  scope prompt).
- `-c`/`--copy` copies files instead of symlinking (skips the copy prompt).
- `-y`/`--yes` skips every prompt and uses the provided flags plus defaults
  (project scope, symlink). Useful for non-interactive runs.

If the user has already told you the scope and copy preference, pass the
matching flags so no prompt is shown.

**Upload-only surfaces** (e.g. Claude Web / Cowork) — package the skill
locally first, then guide the user to upload:

```bash
npx skillship@latest package <local-dir>   # -> dist/<name>.skill
```

- Claude Web: Settings → Capabilities → Upload skill → enable toggle.
- Claude Cowork: Customize → Skills → Upload (desktop app only).