onboard
Use when setting up claude-sweatshop in a project for the first time.
Skill by POPFD
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/popfd-onboard
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/onboard
Tools it pre-approves 8
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
Bash(bash:*),Bash(sha256sum:*),Bash(gitadd:*),status:*),Read,Write,Glob
What's inside
- Skill name
onboard- Description
- Use when setting up claude-sweatshop in a project for the first time. Creates the .sweatshop/ directory, detects all toolchains, and populates memory.
- License
- MIT
- Allowed tools
- Bash(bash:*),, Bash(sha256sum:*),, Bash(git, add:*),, Bash(git, status:*),, Read,, Write,, Glob
- Instructions
- 244 lines in SKILL.md · view on GitHub
Before installing
- Pre-approves some shell commands
Agent Skills spec issues
- files: referenced but missing: scripts/init.sh
Files (1)
- SKILL.md
SKILL.md (first lines)
# Onboard this project
## Step 1 — Initialise the directory
Find the plugin's `scripts/init.sh` using Glob, then run it
with `bash <path>`. The script is idempotent: it only creates
files that do not already exist, so running it on an already-
onboarded project is safe. Confirm `.sweatshop/memory.json`
and `.sweatshop/domain.json` exist afterwards.
## Step 2 — Check for existing onboarding
Before detecting anything, read the two JSON files written by
init.sh and decide whether this project is already onboarded.
The data in these files persists across dev sessions and is
authoritative — do NOT clobber it without explicit user
consent.
A project is considered **already onboarded** if EITHER:
- `memory.json` contains a non-empty `toolchain` object, OR
- `domain.json` contains a `domain` object with a `type`
field set.
### If already onboarded
1. Summarise the existing configuration to the user:
- Toolchain commands currently cached (build / test /
lint) and the config file each was detected from.
- Domain type, focus areas, and whether it was
`user_refined`.
2. Ask the user to choose one of:
- **(a) keep as-is (default)** — skip remaining steps,
report and exit. Nothing is written.
- **(b) fill missing sections only** — run detection for
toolchains/domain entries that are absent, leave
populated entries untouched.
- **(c) re-detect everything (overwrite)** — run the
full detection flow and overwrite existing entries.
Preserve `domain.user_refined: true` across the
overwrite if it was set previously, unless the user
explicitly refines the new detection again.
3. Wait for an explicit choice before continuing. Do not
assume.
### If not yet onboarded
Proceed directly to Step 3.
## Step 3 — Detect toolchains
Run the detection logic for each toolchain below. For each one,
check for config files in the project root using the detection
order listed. Use the **first match** found. If nothing matches,
skip that toolchain and note it as "not detected".
### Build
Detection order:
1. Makefile / GNUmakefile -> make
2. Cargo.toml -> cargo build
3. package.json -> npm run build (or yarn/pnpm if lockfile present)
4. go.mod -> go build ./...
5. *.csproj / *.sln -> dotnet build
6. build.gradle / build.gradle.kts -> gradle build
7. pom.xml -> mvn compile
8. CMakeLists.txt -> cmake --build build
9. meson.build -> meson compile -C build
### Test
Detection order:
1. Makefile / GNUmakefile -> make test
2. Cargo.toml -> cargo test
3. package.json -> npm test (or yarn/pnpm if lockfile present)
4. go.mod -> go test ./...
5. *.csproj / *.sln -> dotnet test
6. build.gradle / build.gradle.kts -> gradle test
7. pom.xml -> mvn test
8. pytest.ini / pyproject.toml / setup.cfg -> pytest
9. requirements.txt with test files -> pytest
### Lint
Detection order:
1. Makefile / GNUmakefile -> make lint
2. Cargo.toml -> cargo clippy
3. package.json -> npm run lint (or yarn/pnpm if lockfile present)
4. go.mod -> golangci-lint run (fallback: go vet ./...)
5. *.csproj / *.sln -> dotnet format --verify-no-changes
6. build.gradle / build.gradle.kts -> gradle check
7. pom.xml -> mvn checkstyle:check
8. ruff.toml / pyproject.toml with ruff -> ruff check .
9. .flake8 / setup.cfg with flake8 -> flake8 .
10. .pylintrc -> pylint .
## Step 4 — Ask the user for the domain expert
The user drives this step. Before doing any analysis yourself,
ask them what kind of domain expert this project needs. A
short, open question works best:
> "What should the domain expert for this project be? For
> example: crypto/DeFi, high-performance systems, frontend/UX,
> ML/data, distributed systems, embedded, game engines, etc.
> You can also describe it in your own words — I'll shape the
> focus areas and review criteria around your answer."
Wait for an explicit answer. Do not guess. Treat whatever the
user says as authoritative for `domain.type`. Common shapes
of answers and how to handle them:
- **A named domain** (e.g. "crypto/DeFi", "frontend/UX") —
use it directly as `type`. Derive sensible `focus_areas`
and `review_criteria` for that domain (see examples below).
- **A free-form description** (e.g. "low-latency trading
engine, care about allocator behaviour and lock
contention") — use a short label for `type` and lift the
user's own phrasing into `focus_areas` / `review_criteria`.
- **"Not sure" / "you pick"** — only then fall back toFrom POPFD/claude-sweatshop, MIT.
More from POPFD/claude-sweatshop
- 0.496score
requesting-review
POPFD
Use when a plan or implementation step is ready for review.
SkillCFreshness: C★ 1Claude Code +9 - 0.496score
executing-plans
POPFD
Use when you have an approved plan to execute step by step with TDD, review gates, and atomic commits.
SkillCFreshness: C★ 1Claude Code +9 - 0.472score
commit-changes
POPFD
Use when the user asks to commit, save changes, or create a git commit.
SkillCFreshness: C★ 1Claude Code +9 - 0.468score
build
POPFD
Use when the user asks to build or compile the project.
SkillCFreshness: C★ 1Claude Code +9 - 0.467score
lint
POPFD
Use when the user asks to lint or check code style.
SkillCFreshness: C★ 1Claude Code +9 - 0.467score
writing-plans
POPFD
Use when you have a spec or requirements and need to break work into implementation steps with acceptance criteria.
SkillCFreshness: C★ 1Claude Code +9 - 0.432score
requirements-analysis
POPFD
Use when starting new features or significant changes.
SkillDFreshness: D★ 1Claude Code +9 - 0.432score
research
POPFD
Use when you need deep context about a codebase area, external references, or prior art before planning or making decisions.
SkillDFreshness: D★ 1Claude Code +9 - 0.429score
verification
POPFD
Use before claiming work is complete, fixed, or passing.
SkillDFreshness: D★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Apr 15, 2026 (6 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/POPFD/claude-sweatshop
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from POPFD
- 0.496score
requesting-review
POPFD
Use when a plan or implementation step is ready for review.
SkillCFreshness: C★ 1Claude Code +9 - 0.496score
executing-plans
POPFD
Use when you have an approved plan to execute step by step with TDD, review gates, and atomic commits.
SkillCFreshness: C★ 1Claude Code +9 - 0.472score
commit-changes
POPFD
Use when the user asks to commit, save changes, or create a git commit.
SkillCFreshness: C★ 1Claude Code +9 - 0.468score
build
POPFD
Use when the user asks to build or compile the project.
SkillCFreshness: C★ 1Claude Code +9 - 0.467score
lint
POPFD
Use when the user asks to lint or check code style.
SkillCFreshness: C★ 1Claude Code +9 - 0.467score
writing-plans
POPFD
Use when you have a spec or requirements and need to break work into implementation steps with acceptance criteria.
SkillCFreshness: C★ 1Claude Code +9
Cite this page
onboard skill. Agent Mart. https://agentmart.dev/skills/popfd-onboard (last updated 2026-10-24)