Project setup and onboarding workflow. Use when setting up the project, onboarding new developers, or troubleshooting environment issues.
View on GitHubplugins/setup/skills/setup/SKILL.md
February 1, 2026
Select agents to install to:
npx add-skill https://github.com/dohernandez/claude-skills/blob/main/plugins/setup/skills/setup/SKILL.md -a claude-code --skill setupInstallation paths:
.claude/skills/setup/# Setup
## Purpose
Guide developers through project setup and environment configuration. Discovers project structure and learns setup requirements for consistent onboarding.
## When to Use
- New developer onboarding
- Setting up a new environment file
- Adding a new project configuration
- Troubleshooting setup issues
## Modes
| Mode | Trigger | Purpose |
|------|---------|---------|
| **configure** | `/setup configure` | Auto-detect project type, prerequisites, setup commands |
| **learn** | `/setup learn` | Confirm and cache setup configuration |
| **guide** | `/setup` | Guide through setup steps (default) |
| **verify** | `/setup verify` | Verify setup is complete and working |
## Configure Mode
Auto-detect project setup requirements:
```
/setup configure
```
**Detects:**
- Project type (Node.js, Python, Go, Rust, etc.)
- Package manager (npm, yarn, pnpm, pip, cargo, etc.)
- Prerequisites (runtime versions, tools)
- Setup commands
- Test commands
- Environment file templates
**Detection sources:**
| File | Indicates |
|------|-----------|
| `package.json` | Node.js project |
| `pyproject.toml`, `requirements.txt` | Python project |
| `go.mod` | Go project |
| `Cargo.toml` | Rust project |
| `Gemfile` | Ruby project |
| `.env.example` | Environment template exists |
| `Taskfile.yaml` | Task runner available |
| `Makefile` | Make-based setup |
## Learn Mode
Confirm discovered configuration and save:
```
/setup learn
```
**Outputs:** `.claude/setup-cache.yaml`
```yaml
# Setup configuration cache
# Generated by: /setup learn
project:
type: nodejs
package_manager: npm
prerequisites:
- name: node
version: ">=18"
check: "node --version"
install: "brew install node"
- name: task
version: ">=3"
check: "task --version"
install: "brew install go-task/tap/go-task"
commands:
setup: "npm install"
test: "npm test"
lint: "npm run lint"
typecheck: "npx tsc --noEmit"
environment:
template: ".env.example"
target: ".env