# claude-playground A tiny zero-dependency Node.js todo CLI, used as a sandbox for trying Claude Code features. ## Commands - `npm test` — run the test suite (built-in `node:test`, no install needed) - `npm start -- add "something"` / `npm start -- ls` — run the CLI (data in `todos.json`, override with `TODO_FILE`) ## Conventions - ES modules, Node >= 20, no third-party dependencies. - `src/todo.js` holds pure functions; keep I/O in `load`/`save` and `src/cli.js`. - Every behavior change gets a test in `test/`. - Commit messages: short imperative subject line. ## Workflow (required) Never commit, merge, or push to `main`. Only a human (Christian) merges into `main`. 1. Branch off an up-to-date `main` before any change: `git switch -c /` (e.g. `fix/duplicate-ids`, `docs/readme`). 2. Commit on that branch; run `npm test` before pushing. 3. Push the branch and open a PR against `main`. 4. Run `/code-review` on the PR branch. 5. Post the result as a PR comment that starts with either **Approved** or **Needs fixes**, followed by the findings. If it needs fixes, fix them on the same branch, push, and repeat steps 4–5. 6. Stop there. Do not merge the PR, even if approved — tell the human it's ready. ## Remote Gitea at code.westerkam.org — `origin` = `git@code.westerkam.org:christian/claude-playground.git`.