spiiritual/claude-code-stuff/tree/main/plugins/whiteboard-defense
whiteboard-defense
Mitchell Hashimoto의 화이트보드 디펜스 연습을 위한 Claude Code 플러그인입니다. 글로 쓴 계획을 실제 다이어그램과 결과를 묻는 이야기로 바꾸고, 코드에 맞춰 내가 출시한 시스템을 되짚어 묻습니다.
이 mod 소개
이 플러그인은 claude-code-stuff 마켓플레이스에서 /plugin install whiteboard-defense@claude-code-stuff로 설치하며 두 명령을 추가합니다. /whiteboard-defense plan은 글로 쓴 계획을 대체합니다. Claude가 트랜스크립트에 실제 시스템 다이어그램을 그리고 중요한 결정을 결과에 관한 이야기로 질문합니다(예: “server dies mid-refund: customer charged with no refund, or refund 30s late?”). 그런 다음 직접 설명하게 합니다. /whiteboard-defense grill은 빌드 후 X를 Y보다 택한 이유, 악의적인 사용자가 할 수 있는 일, 실패하는 지점을 묻고 코드에 맞춰 답을 채점하며 계획과의 차이를 표시합니다. 계획은 플러그인의 데이터 폴더에 카드로 저장되고 저장소에는 저장되지 않습니다. 다이어그램은 mod가 렌더링하므로 ~/.claude/settings.json에서 CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1로 함수 hooks를 활성화해야 합니다. 이미지 표시에는 macOS(내장 qlmanage)와 Ghostty, kitty, iTerm2, WezTerm 같은 이미지 지원 터미널이 필요합니다(tmux는 지원하지 않음). 그 밖의 환경에서는 텍스트 다이어그램을 표시합니다.
설치
먼저 작성자의 README에서 marketplace와 플러그인 이름을 확인하세요. 저장소 구조에 따라 명령어가 달라질 수 있습니다.
claude plugin marketplace add spiiritual/claude-code-stuff claude plugin install whiteboard-defense
원문 / README
claude-code-stuff
A Claude Code plugin marketplace.
/plugin marketplace add spiiritual/claude-code-stuff
/plugin install better-compaction@claude-code-stuff
better-compaction
A Claude Mod that fixes two things about compaction:
- Waits for the turn to end. Auto-compaction no longer interrupts the model mid-turn; it runs as soon as the turn finishes. Past 80% of the context window (configurable), or after a prompt-too-long error, it compacts mid-turn as usual.
- Summarizes at its own effort. The summary runs at a lower effort than the conversation (default
medium). The model stays the same, so the prompt cache is kept. Subagents running during a summary keep their own effort.
Mods need function hooks on. Add this to ~/.claude/settings.json:
{ "env": { "CLAUDE_CODE_ENABLE_FUNCTION_HOOKS": "1" } }
Settings, in /config:
| Option | Default | |
|---|---|---|
| deferCompaction | on | Wait for the turn to end before compacting |
| deferUnderPercent | 80 | Stop waiting once the context is this full (% of the window) |
| compactionEffort | medium | inherit, low, medium, high, xhigh or max |
Measured on a 214k-token session (3 runs each, recall quiz of 22 facts):
| Effort | Summary time | Quiz | |---|---|---| | low | 31s | 20.2 | | medium | 46s | 20.8 | | high | 59s | 20.7 | | xhigh | 76s | 19.8 | | max | 164s | 20.8 |
Recall was the same within noise at every level, while time grew with effort.
In headless mode (-p, SDK) the deferred compaction runs at the start of the next prompt instead of right after the turn.
whiteboard-defense
/plugin install whiteboard-defense@claude-code-stuff
For Mitchell Hashimoto's whiteboard defense: you should be able to explain any customer-facing system you ship and defend its decisions, even if Claude wrote the code.
/whiteboard-defense planreplaces the written plan. Claude draws the system as a real diagram, asks you the decisions that matter as consequence stories ("server dies mid-refund: customer charged with no refund, or refund 30s late?"), then has you explain it back./whiteboard-defense grillquizzes you after building: why X over Y, what a malicious user can do, where it fails. Answers are graded against the code, and drift from the plan is flagged.
Plans are saved as cards in the plugin's data folder, never in your repo.
The diagrams are pictures drawn in the transcript by a mod, so they need function hooks on (see above), macOS (it renders with the built-in qlmanage), and a terminal that shows images (Ghostty, kitty, iTerm2, WezTerm; not tmux). Anywhere else you get a text diagram.
