Clanker Discipline

Catches state bloat, grab-bag models, and mutation ambiguity from AI coding agents. Use when reviewing state types, boolean flags, optional-field models, or mutable data patterns.

Install

skills CLI (Claude Code, Cursor, Codex and more)
npx skills add gbasin/clanker-discipline --skill clanker-discipline
Manual install
git clone --depth 1 https://github.com/gbasin/clanker-discipline.git /tmp/clanker-discipline
mkdir -p ~/.claude/skills
cp -r /tmp/clanker-discipline/. ~/.claude/skills/clanker-discipline

Personal skills live in ~/.claude/skills. Use .claude/skills in a project folder to share a skill with your team.

From the SKILL.md

# Clanker Discipline

Apply these rules when writing or reviewing state types, data models, and functions that manage application state. Agents tend to add flags, optional fields, and special cases that compound into state nobody intended — catch that before it lands.

When you find violations, refactor fully. The goal is clean, maintainable code, not minimal diffs. Rip out the flags, reshape the types, restructure the functions. A bigger diff now is better than layering workarounds that compound later.

---

## 1. Derive, don't store

Every boolean you add doubles the theoretical state space. When a value can be derived from data you already have, do not store it. The best source to derive from is an event stream: a log of what happened.

### Before: cached flags

An agent was asked to show a footer only when the assistant finishes naturally. It invented four flags:

```ts
type ThreadState = {
  wasInterrupted: boolean;
  didAssistantFinish: boolean;
  didAssistantError: boolean;
  wasToolCallOnly: boolean;
};

function shouldShowFooter(state: ThreadState): boolean {
  return state.didAssistantFinish
    && !state.wasInterrupted
    && !state.didAssistantError
    && !state.wasToolCallOnly;
}
```

Four fields to answer one question, with four mutation sites elsewhere keeping them in sync.

### After: derive from evidence
Read the full skill on GitHub

Details

Skill name
clanker-discipline
Repo updated
23 March 2026

FAQ

What does the Clanker Discipline skill do?

Catches state bloat, grab-bag models, and mutation ambiguity from AI coding agents. Use when reviewing state types, boolean flags, optional-field models, or mutable data patterns.

How do I install the Clanker Discipline skill?

skills CLI (Claude Code, Cursor, Codex and more): npx skills add gbasin/clanker-discipline --skill clanker-discipline. Skills go in ~/.claude/skills (personal) or .claude/skills (project), and Claude loads them automatically when a task matches the description.

Is Clanker Discipline popular?

It lives in gbasin/clanker-discipline, which has 22 GitHub stars and 0 forks.

Related skills

Create Voltagent

16

VoltAgent/skills

Skill for creating AI agent projects using the VoltAgent framework. Guide for CLI setup and manual bootstrapping.

AI, LLMs & AgentsIn 1 list10

Positioning Companion

18

jason201385-commits/positioning-companion

AI 時代的自助定位與反向驗證工具。用好惡、夢想年、既有能力、財務與安全條件,判斷適合做內容、改善工作流、留在本業放大優勢,或暫不定位;輸出可驗證的定位卡與不用新產品的替代方案。當使用者說「幫我定位」「我在 AI 時代能做什麼」「我該往哪走」「選方向」「我需要做內容或產品嗎」時使用。

AI, LLMs & Agents

Inspect

17

howardpen9/cc-inspect

Show installed Claude Code skills, plugins, hooks, MCP servers, and commands in a browser dashboard

AI, LLMs & Agents

Personal Agent Dossier

20

AidaShika/personal-agent-dossier

当你要把一个 AI agent 的职能、反职责、定时任务和长期记忆导出成平台无关的档案、从档案导入或还原一个 agent、检查两份档案是否漂移,或为你的平台写导出导入适配器时使用。用户也常这样说:把这个助手的活和记忆打包带走、我要换平台了、这个 bot 不用了把它的工作交接出去、两份档案对一下看哪儿对不上;pack up this agent and move it to another platform、I'm switching agents, take its memory with it;このボットの引き継ぎをして、別のプラットフォームに引っ越したい、記憶ごと持っていって;이 봇 더 안 쓰니까 인수인계해줘、플랫폼 옮길 거야 기억까지 챙겨서 내보내줘。不用于:导出聊天记录、agent 之间的实时通信协议(如 A2A)类问题。

AI, LLMs & Agents

Agent Card

14

tiny-agent-company/agent-card-skill

Manage virtual Visa cards for AI agents with AgentCard. Fund a wallet with Apple Pay or Google Pay, create single-use or multi-use cards, check balances, view credentials, pay for things, shop and check out at merchants like DoorDash, close cards, manage plans, and get support. Use when the user wants to create or manage virtual payment cards for AI agents, fund their AgentCard wallet, pay for online purchases, shop on their behalf, set up agent spending, or configure card billing and limits.

AI, LLMs & AgentsIn 1 list

Abstract Fig

20

keros68/abstract-fig

Codex-native skill for editable draw.io manuscript figures using image2-generated or reused elements plus editable text, arrows, and frames. Use for a graphical abstract, concept model, mechanism diagram, workflow/synthesis figure, or research/technical roadmap (图形摘要、概念模型图、机制图、可编辑 draw.io、技术路线图、研究路线图); when revising from reviewer/GPT/Claude comments, converting a dense figure into element-based draw.io, or when a figure looks generic/templated/AI-like. Do not run the full workflow without an image-generation tool or a reusable element library - state the limitation instead of substituting plai

AI, LLMs & Agents

Browse the most popular Claude skills, all ai, llms & agents skills, or write your own with the skills generator.