From lets
First-time global setup - install plugins, configure environment, explain workflow
How this command is triggered — by the user, by Claude, or both
Slash command
/lets:install-deprecatedThe summary Claude sees in its command listing — used to decide when to auto-load this command
# Global Setup One-time setup for new developers. Checks environment, installs plugins, then delegates to `/lets:init` for project setup. ## Step 1: Check Environment If `lets version` is missing, the plugin's hooks and statusline will silently fail. Install before continuing: Still to come (tracked under epic `lets-hdrdr`): Homebrew (`lets-odg13`), winget+scoop (`lets-hdrdr.1`). ## Step 2: Install Required Plugins Install these plugins (check Claude Code docs for current installation method): **Required:** - **beads** - task tracking across sessions (by steveyegge) **After insta...
One-time setup for new developers. Checks environment, installs plugins, then delegates to /lets:init for project setup.
# Claude Code version
claude --version
# lets CLI binary (REQUIRED - hooks and statusline invoke it directly)
lets version 2>/dev/null || echo "lets CLI not found - install before continuing"
# GitHub CLI (optional)
gh --version 2>/dev/null || echo "gh CLI not found (optional - needed for LETS_PR_FLOW=github)"
gh auth status 2>/dev/null || echo "gh not authenticated (optional)"
If lets version is missing, the plugin's hooks and statusline will silently fail. Install before continuing:
# Curl one-liner — the usual end-user install (pulls a release archive, verifies the checksum)
curl -fsSL https://raw.githubusercontent.com/restarter/lets-workflow/main/scripts/install.sh | bash
which lets # verify $PATH
lets version
# Or from a clone — for contributors / source builds:
git clone https://github.com/restarter/lets-workflow && cd lets-workflow && make install
Still to come (tracked under epic lets-hdrdr): Homebrew (lets-odg13), winget+scoop (lets-hdrdr.1).
Install these plugins (check Claude Code docs for current installation method):
Required:
claude config set --global autoCompact false
Delegate to /lets:init for per-project setup (.lets/ structure, config, statusline, beads).
Run: /lets:init
/lets:start -> Work -> /lets:check -> /lets:commit -> /lets:done -> /lets:end
Worktree: /lets:worktree create -> terminal -> /lets:start -> Work -> /lets:done -> /lets:end -> /lets:worktree remove
Team: /lets:plan -> /lets:team run -> monitor -> /lets:review --local -> /lets:done
| Skill | Category | When to use |
|---|---|---|
/lets:start | Session | Beginning of session |
/lets:end | Session | End of session |
/lets:done | Task | Task is complete (creates PR if LETS_PR_FLOW=github, or merges locally) |
/lets:commit | Code | Ready to commit (also triggers automatically on "commit") |
/lets:check | Code | Quick sanity check - code (~30s) or plan (--plan) |
/lets:review | Code | Full deep review (~2-3 min) |
/lets:github-pr | Code | GitHub PR review lifecycle (review, respond, follow-up, approve) |
/lets:opinion | Expert | Technical decision needed |
/lets:ask | Expert | Quick question to one expert |
/lets:init | Setup | Initialize LETS in a new project; re-run for self-heal or config change |
/lets:update | Setup | Sync project with the current release - .lets/.env + rules self-heal, plus lets binary / plugin version status |
/lets:worktree | Utility | Create/manage worktrees for parallel sessions |
/lets:team | Utility | Parallel implementation with Agent Teams |
/lets:status | Utility | Task overview anytime |
/lets:note | Utility | Add note to active task |
/lets:brainstorm | Planning | Interactive ideation - review backlog, explore ideas, quick brainstorm, cleanup |
These fire automatically when you describe the action in conversation - no slash command needed:
| Skill | Triggers on |
|---|---|
create-task | "create task", "new task", "bd create" and variations |
commit | "commit", "закоміть", "git commit" and variations |
take-task | "take task X", "візьми таск", "work on X", "claim task" and variations |
| Skill | When to use |
|---|---|
/lets:plan | Task needs architecture + implementation plan |
/lets:execute | Have a plan from /lets:plan, ready to execute via native plan mode |
Rule of thumb: Can you write a 1-sentence requirement?
/lets:plan then /lets:execute/lets:brainstorm to explore and clarify, then /lets:plan/lets:plan + /lets:execute for 2+ hour tasks/lets:end saves context for next session| Command | Purpose |
|---|---|
bd ready | Tasks ready to work on |
bd show <id> | Task details |
bd update <id> --status=in_progress | Claim task |
bd close <id> | Complete task |
bd create --title="..." | New task |
lets CLI binary on $PATH (lets version works)beads plugin installed (bd ready works)gh CLI installedgh auth status passes.lets/ directory exists and gitignored.lets/.env configured (with LETS_ENV_VERSION as first key).claude/settings.json has statusLine.command = "lets statusline" (value-match; no provenance marker).claude/rules/lets-rules.md installed (with frontmatter version).beads/ initializedbd ready worksSetup complete when all checked.
┌─ LETS ─────────────────┐
│ Start? /lets:start │
└────────────────────────┘
npx claudepluginhub restarter/lets-workflow --plugin lets