Basecamp
basecamp/basecamp-cli
Interact with Basecamp through the Basecamp CLI. An agent skill from basecamp/basecamp-cli.
Build lean, opinionated products using the 37signals philosophy from "Getting Real", "Rework", and "Shape Up".
$ npx skills add wondelai/skills --skill 37signals-way -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install wondelai/skills 37signals-way --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/37signals-way .claude/skills/37signals-way && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "37signals-way" agent skill from https://github.com/wondelai/skills/tree/main/37signals-way into .claude/skills/37signals-way/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "37signals-way", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/wondelai/skills/tree/main/37signals-wayType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add wondelai/skills --skill 37signals-way -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install wondelai/skills 37signals-way --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/37signals-way .agents/skills/37signals-way && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "37signals-way" agent skill from https://github.com/wondelai/skills/tree/main/37signals-way into .agents/skills/37signals-way/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "37signals-way", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add wondelai/skills --skill 37signals-way -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install wondelai/skills 37signals-way --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/37signals-way .cursor/skills/37signals-way && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "37signals-way" agent skill from https://github.com/wondelai/skills/tree/main/37signals-way into .cursor/skills/37signals-way/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "37signals-way", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/wondelai/skills.git --path 37signals-way--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add wondelai/skills --skill 37signals-way -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install wondelai/skills 37signals-way --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/37signals-way .gemini/skills/37signals-way && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "37signals-way" agent skill from https://github.com/wondelai/skills/tree/main/37signals-way into .gemini/skills/37signals-way/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "37signals-way", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install wondelai/skills 37signals-wayInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add wondelai/skills --skill 37signals-way -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/37signals-way .github/skills/37signals-way && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "37signals-way" agent skill from https://github.com/wondelai/skills/tree/main/37signals-way into .github/skills/37signals-way/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "37signals-way", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add wondelai/skills --skill 37signals-way -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install wondelai/skills 37signals-way --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/37signals-way .opencode/skills/37signals-way && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "37signals-way" agent skill from https://github.com/wondelai/skills/tree/main/37signals-way into .opencode/skills/37signals-way/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "37signals-way", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
37signals-wayBuild lean, opinionated products using the 37signals philosophy from "Getting Real", "Rework", and "Shape Up".
37signals Way is an agent skill from wondelai/skills. Build lean, opinionated products using the 37signals philosophy from "Getting Real", "Rework", and "Shape Up". Use when the user mentions "Getting Real", "Rework", "Shape Up", "37signals", "Basecamp method", "six-week cycles", "fixed time variable scope", "appetite vs estimates", "betting table", "breadboarding", "fat marker sketch", "build less", "underdo the competition", "opinionated software", "we have too many meetings", "how do we ship faster", or "stop overbuilding". Also trigger when cutting scope to ship…
Its SKILL.md is about 3.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files, including reference files (for example `references/betting-cycles.md`, `references/build-less.md` and `references/case-studies.md`).
It works with Basecamp. The repository describes itself as: Wondel.ai Agent Skills — Business, Marketing, UX & Coding Frameworks from Bestselling Books. 50 skills + 12 guided journeys for Claude Code, Codex, Cursor & other agentskills.io… The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit c172996. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
amazon.combasecamp.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
37signals Way loads about 3.7k tokens when it runs, and up to ~28k if it reads all its reference files. Until then it costs about 183 tokens; SKILL.md has 1,867 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from wondelai/skills at commit c172996, republished under its MIT licence (© wondelai). 1,867 words, ~3,710 tokens.
.claude/skills/37signals-way/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.A system for building profitable software without bloat, bureaucracy, or burnout, distilled from three books: Getting Real (build less), Rework (say no by default), and Shape Up (fix time, flex scope). Use it to shape work, bet on six-week cycles, run small autonomous teams, and ship on a predictable cadence.
Build less. The best products do fewer things exceptionally well — simplicity is the destination, not the starting point. Traditional development adds; the 37signals way subtracts: build half a product (not a half-assed product), say no by default, fix the time and flex the scope. Constraints are what make great work possible — six weeks, three people, and a shaped pitch force you to find the essential version.
Goal: 10/10. Rate product plans, feature scopes, and team processes 0-10 against these principles. Report the current score and the specific changes needed to reach 10/10.
Core concept: Win through deliberate omission — fewer features, fewer preferences, fewer moving parts, each done better than competitors do theirs. Build software you need yourself and solve problems you understand deeply.
Why it works: Every feature carries maintenance, cognitive, and opportunity costs forever, usually for a fraction of users. Building less keeps the product focused, the codebase manageable, and the team small.
Key insights:
Product applications:
| Context | Application | Example |
|---|---|---|
| Feature prioritization | Default answer is no | Reporting dashboard requested → ship CSV export covering 90% of use cases |
| MVP scoping | Cut until it hurts, then cut more | Drop user accounts for v1; use email magic links |
| Competitive strategy | Underdo, don't outdo | Competitor has 50 integrations; ship 3 that work flawlessly |
See references/build-less.md when deciding what to cut — curation tactics, the constraints-as-feature argument, and worked scope-cut examples.
Core concept: Before work reaches a team, a senior person who bridges product and technical worlds makes it rough (room to maneuver), solved (main elements figured out), and bounded (scope limited by appetite).
Why it works: Raw ideas waste team time; detailed specs turn teams into ticket-takers. Shaping removes the biggest unknowns while leaving design freedom, and appetite ("how much time is this worth?") replaces estimation ("how long will this take?") — bounded investment instead of open-ended commitment.
Key insights:
Product applications:
| Context | Application | Example |
|---|---|---|
| Feature design | Breadboard before mockup | "Invite teammate": Settings → invite form → email sent → accept link → dashboard |
| Scope definition | Set appetite first | "A 2-week appetite problem, not a 6-week one" shapes which solution fits |
| Risk management | Call out rabbit holes upfront | "Permissions could get complex — limit to owner/member for v1" |
Ethical boundary: Set appetites that reflect the problem's genuine value — never artificially small to pressure teams.
See references/shaping-work.md when drafting a pitch — the five-element pitch format, a worked breadboard, fat-marker rules, the rabbit-hole pattern table, good/bad no-go examples, and a 6-step shaping procedure.
Core concept: Replace backlogs and roadmaps with a betting table: senior stakeholders bet shaped pitches into six-week cycles, separated by two-week cool-downs. Unfinished work hits the circuit breaker — it does not automatically continue.
Why it works: Backlogs grow forever, create false progress, and dilute focus; limited cycle slots force real prioritization. The circuit breaker kills zombie projects, and cool-downs prevent the burnout of continuous sprinting.
Key insights:
Product applications:
| Context | Application | Example |
|---|---|---|
| Roadmap replacement | Bet each cycle | 3-4 shaped pitches every 6 weeks instead of a 12-month roadmap |
| Risk management | Circuit breaker kills zombies | 70% done at week 6? It doesn't ship — re-shape and re-bet if it still matters |
| Capacity planning | Cool-down between cycles | Two weeks for bugs, tech debt, exploration, recovery |
Ethical boundary: Apply the circuit breaker honestly — to kill zombies, not politically inconvenient projects; the point is focus, not unsustainable pressure.
See references/betting-cycles.md when running a betting table or planning a cycle — how the table decides, structuring the six-week/two-week rhythm, applying the circuit breaker, and the case against backlogs.
Core concept: Three-person teams (one designer, one or two programmers) work a shaped pitch autonomously — no standups, no PMs hovering. They discover their own tasks and track progress on hill charts.
Why it works: Three people can have a conversation; ten need a meeting. Teams that discover tasks from a shaped pitch develop real problem understanding, and hill charts tell the truth: uphill = still figuring out, downhill = executing known work.
Key insights:
Product applications:
| Context | Application | Example |
|---|---|---|
| Team structure | Three people max, no PM | One designer + two programmers per 6-week bet |
| Progress tracking | Hill charts, not burndowns | "Invitations" uphill (permissions unclear); "Email templates" downhill (executing) |
| Communication | Async-first, write it up | A written update or 5-minute video instead of a 30-minute meeting |
Ethical boundary: Autonomy requires genuinely manageable scope — if a team consistently works overtime to hit six weeks, fix the shaping, not the team.
See references/small-teams-execution.md when a team is mid-build — reading and updating hill charts, slicing scopes, async communication norms, and getting real with working HTML.
Core concept: Great software makes choices instead of burying users in preferences — every preference is a decision the team could not or would not make. The same honesty applies to copy: say what you mean, skip buzzwords, teach what you know openly.
Why it works: Every added preference splits the product into more states to design, test, and support, and pushes a decision onto users who lack the context to make it well; sensible defaults reduce cognitive load and create cohesion. Clear copy builds trust where marketing-speak erodes it, and teaching openly attracts customers who share your values.
Key insights:
Product applications:
| Context | Application | Example |
|---|---|---|
| Feature requests | Default no, no false promises | "Thanks for the suggestion. We're not planning this right now." |
| UI copy | Plain language | "Your file is saved" not "Your asset has been successfully persisted to the cloud" |
| Error messages | Honest and helpful | "We couldn't send that email. Check the address and try again." |
| Preferences | Eliminate; choose defaults | Detect timezone from the browser; ship one good theme |
| Marketing | Honest positioning | "Basecamp is not for everyone. Here's who it's for and who it's not for." |
See references/opinionated-software.md when responding to feature requests or removing settings, and references/ux-ui-copy.md when writing interface copy, empty states, or error messages.
| Mistake | Why It Fails | Fix |
|---|---|---|
| Maintaining a backlog | Grows forever; false progress; diluted focus | Abolish it; bet on shaped pitches each cycle |
| Estimating instead of setting appetite | Estimates grow to fill time and invite negotiation | Ask "how much time is this problem worth?" |
| Pixel-perfect mockups before shaping | Too concrete too early; invites bikeshedding | Breadboards and fat marker sketches first |
| Extending a six-week cycle | Zombie projects teach teams deadlines are fake | Circuit breaker: not done means not shipped |
| Adding preferences instead of deciding | Complexity for all users to serve a few | Pick the best default and ship it |
| Daily standups and status meetings | Interrupt maker flow; reporting overhead | Hill charts for visibility; async updates |
| Saying yes to good feature requests | Good features still add non-essential complexity | Default to no; bet only on what matters this cycle |
| Planning multiple cycles ahead | Stale commitments reduce responsiveness | Plan one cycle at a time |
| Question | If No | Action |
|---|---|---|
| Is there a fixed time constraint on this work? | Scope expands indefinitely | Set a six-week (or smaller) appetite first |
| Is the work shaped (rough, solved, bounded)? | Scope problems surface mid-build | Define problem, appetite, solution, rabbit holes, no-gos |
| Can a team of 2-3 people do this? | Too big | Break into independent six-week bets |
| Said no to at least 5 things this cycle? | Building too much | Cut ruthlessly at the betting table |
| Is the team figuring out its own tasks? | Micromanagement; team not empowered | Hand off shaped pitches, not task lists |
| Tracking progress with hill charts? | False precision masks uncertainty | Switch to uphill (figuring out) vs. downhill (executing) |
| Is there a cool-down after this cycle? | Burnout; no cleanup time | Schedule two unstructured weeks between cycles |
| Does the software have a clear opinion here? | Decisions deferred to users via preferences | Pick the best default; remove the setting |
See references/case-studies.md for end-to-end worked scenarios when you want a model to follow — adopting Shape Up, resisting feature creep, and replacing status meetings with hill charts.
Jason Fried is co-founder and CEO of 37signals (Basecamp, HEY) and a leading advocate for calm companies and product simplicity. David Heinemeier Hansson (DHH) is 37signals co-founder and creator of Ruby on Rails, extracted from Basecamp's codebase; together they wrote Getting Real, Rework, Remote, and It Doesn't Have to Be Crazy at Work. Ryan Singer spent 15+ years shaping product at 37signals and codified the methodology in Shape Up.
© wondelai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 7 other files (references) in 37signals-way of wondelai/skills.
Open the folder on GitHubat commit c172996
37signals Way next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| 37signals Way this skillwondelai/skills | 2.4k | — | ~3.7k | Automated safety check: Pass | MIT | |
| Basecampbasecamp/basecamp-cli | 288 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Fizzy CLIbasecamp/fizzy-cli | 244 | — | ~10k | Automated safety check: Pass | MIT | |
| Basecamp Connectbasecamp/basecamp-cli | 288 | — | ~9.6k | Automated safety check: Pass | MIT | |
| Basecamp Doctorbasecamp/basecamp-cli | 288 | — | ~699 | Automated safety check: Pass | MIT | |
| Dhh Rails Styledavekilleen/Dex | 494 | 1 repos | ~1.7k | Automated safety check: Pass | MIT |
basecamp/basecamp-cli
Interact with Basecamp through the Basecamp CLI. An agent skill from basecamp/basecamp-cli.
basecamp/fizzy-cli
Operates Fizzy boards, cards, comments and other resources from the command line, with rules for card numbers, output filtering and checking setup.
basecamp/basecamp-cli
Drive your own Claude Code session from Basecamp. An agent skill from basecamp/basecamp-cli.
basecamp/basecamp-cli
Diagnose Basecamp CLI, authentication, and agent-plugin health.
davekilleen/Dex
This skill should be used when writing Ruby and Rails code in DHH's distinctive 37signals style.
spencerbull/omarchy-omapilot
Search and update Basecamp projects through OmaPilot's typed tools.
wondelai/skills
Navigate the technology adoption lifecycle from early adopters to mainstream market.
wondelai/skills
Apply foundational design principles: affordances, signifiers, constraints, feedback, and conceptual models.
wondelai/skills
Run a structured 5-day process to prototype, test, and validate product ideas with real users.
wondelai/skills
Design habit-forming product loops using the Hook Model (Trigger, Action, Variable Reward, Investment).
wondelai/skills
Diagnose and fix retention problems using behavior design (B=MAP).
wondelai/skills
Design products and pricing around validated willingness to pay, from Ramanujam & Tacke's "Monetizing Innovation".
Works with
Build lean, opinionated products using the 37signals philosophy from "Getting Real", "Rework", and "Shape Up". 37signals Way is an agent skill from wondelai/skills. Build lean, opinionated products using the 37signals philosophy from "Getting Real", "Rework", and "Shape Up".
37signals Way fits situations like: the user mentions Getting Real; basecamp method; six-week cycles; fixed time variable scope.
Run `npx skills add wondelai/skills --skill 37signals-way -a claude-code`. Or copy the skill folder (37signals-way in wondelai/skills) into .claude/skills/37signals-way in your project. Claude Code loads it when a task matches its description.
Run `npx skills add wondelai/skills --skill 37signals-way -a codex`. Or copy the skill folder (37signals-way in wondelai/skills) into .agents/skills/37signals-way in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add wondelai/skills --skill 37signals-way -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/37signals-way, .gemini/skills/37signals-way, .github/skills/37signals-way and .opencode/skills/37signals-way in your project.
SKILL.md names no scripts, command-line tools or credentials: 37signals Way is instructions for the agent only.
SKILL.md names 2 domains. As links in the text: amazon.com and basecamp.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
37signals Way is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.7k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 24k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with 37signals Way: Basecamp (basecamp/basecamp-cli, 288 stars), Fizzy CLI (basecamp/fizzy-cli, 244 stars), Basecamp Connect (basecamp/basecamp-cli, 288 stars) and Basecamp Doctor (basecamp/basecamp-cli, 288 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
wondelai (a GitHub organization) maintains it in wondelai/skills, which has 2,371 GitHub stars. The repository holds 62 skills in this directory. The repository was last updated on September 10, 2026.
Source: wondelai/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.