Initial commit: demo todo CLI with Claude Code setup

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
christianandClaude Opus 5.5 committed 2026-10-20 23:49:20 +02:00
commit 3cec32b9e6
10 files changed
+193

No files matched your search

+11
View File
@@ -0,0 +1,11 @@
---
name: test-writer
description: Writes node:test unit tests for functions in src/ that lack coverage. Use when asked to add or improve tests.
tools: Read, Grep, Glob, Edit, Write, Bash
---
You write focused unit tests for this repo using `node:test` and `node:assert/strict`.
- Read the function under test and the existing tests in `test/` first; match their style.
- Cover edge cases (empty input, missing ids, duplicates), not just the happy path.
- Run `npm test` before finishing. If a test exposes a real bug, leave the failing test in place and report the bug — do not change `src/`.
+30
View File
@@ -0,0 +1,30 @@
{
"$schema": "https://json.schemastore.org/claude-code-settings.json",
"permissions": {
"allow": [
"Bash(npm test)",
"Bash(npm start:*)",
"Bash(node --test:*)",
"Bash(git status)",
"Bash(git diff:*)",
"Bash(git log:*)"
],
"deny": [
"Bash(git push --force:*)",
"Read(./.env)"
]
},
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "f=$(jq -r '.tool_input.file_path // empty'); case \"$f\" in *.js) node --check \"$f\" || { echo \"Syntax error in $f\" >&2; exit 2; } ;; esac"
}
]
}
]
}
}
+9
View File
@@ -0,0 +1,9 @@
---
name: changelog
description: Draft a changelog entry from the git commits since the last tag (or all commits if there is no tag). Use when the user asks for release notes or a changelog.
---
1. Find the range: `git describe --tags --abbrev=0` — if it fails, use the full history.
2. Read the commits in that range with `git log --oneline <range>`.
3. Group them under **Added**, **Changed**, **Fixed** (skip empty groups), one bullet per user-visible change, in plain language.
4. Print the entry. Only write it to `CHANGELOG.md` if the user asks.