RuleStack

Configs

Stacks

Compare

Diff

RuleStack

Configs

Stacks

Compare

Diff

Read API

RuleStack

Configs

Stacks

Compare

Diff

Read API

Diff/arturogarrido-claudinho-claude ↔ arturogarrido-claudinho-cursor-rules-change-discipline

Comparison

A · CLAUDE.md · arturogarrido/claudinhoB · Cursor rules · arturogarrido/claudinho
What each file covers, counted
DimensionSharedOnly in AOnly in BOverlap
Sections0210%
Commands0400%
Section tags0300%

What each file covers

Sections

0 shared · 2 only in A · 1 only in B
  • − CLAUDE.md
  • − Claude Code specifics
  • + Change discipline

Commands

0 shared · 4 only in A · 0 only in B
  • − pnpm -F @claudinho/mcp build
  • − pnpm -r typecheck
  • − pnpm lint
  • − gh run watch <id> --exit-status

Section tags

0 shared · 3 only in A · 0 only in B
  • − lint-format
  • − performance
  • − agent-behaviour

Line diff

+26 added−14 removed5 unchanged16.1% identical
arturogarrido/claudinho · CLAUDE.md
@@ −1 @@
1# CLAUDE.md
 
 
 
 
2 
3This project uses **AGENTS.md** as the primary agent guide. Read it first:
4 
5@AGENTS.md
 
 
 
 
6 
7## Claude Code specifics
8 
9- The statusline command must return in **<150ms** and **never** hit the network on the hot path — read from the local micro-cache.
10- Local MCP dev loop:
11 ```bash
12 pnpm -F @claudinho/mcp build
13 claude mcp add claudinho-dev -- node packages/mcp/dist/index.js
14 ```
15- When changing shared types, update `@claudinho/core` and run `pnpm -r typecheck` before committing.
16- Run `pnpm lint` (Biome) before committing; CI gates on it. The setup is lint-only (no formatter) — keep style consistent with the surrounding code.
17- **Before declaring any change "done," run the "Pre-PR self-review" rubric in `AGENTS.md`** — verify external API shapes against a *real* response (fixtures included); apply the change to every surface (CLI text **and** `--json`, MCP `data` **and** text, READMEs); audit against the Hard Constraints (existing code too); do an adversarial failure-mode pass (fail-closed; never cache transient errors); and bound default-on latency. For money/legal/external-API changes, do an independent reviewer pass and self-classify findings **P1/P2/P3**.
18- **After any push to a branch with CI, always watch the run and confirm it's green** (`gh run watch <id> --exit-status`); report the per-job result. Don't consider a push "done" until CI passes.
 
 
 
 
19 
arturogarrido/claudinho · .cursor/rules/change-discipline.mdc
@@ +1 @@
1---
2description: Scope a change and land it without a multi-round review loop
3globs: **/*
4alwaysApply: true
5---
6 
7# Change discipline
8 
9The canonical text is **`AGENTS.md` → "Change discipline"**, and the "Definition
10of Done" section beside it. This file exists only because Cursor reads
11`.cursor/rules` and not `AGENTS.md` — Claude Code reads AGENTS.md via
12`CLAUDE.md`, and it is Codex's source of truth. Keep the two in sync; if they
13disagree, AGENTS.md wins.
14 
15The short form:
16 
171. **Acceptance criteria in the PR before the first commit**, plus an explicit
18 statement of what the change does NOT cover. Skipping this is what turned
19 PR #97 into twelve review rounds: with no written finish line every round
20 ended at "I fixed what was reported" and the next round moved it, and with no
21 stated boundary, findings equally true of `main` arrived as blockers.
222. **Put a shared rule where every path reaches it, then delete the other copy** —
23 not at the site the report happened to mention.
243. **Grep for siblings before calling a class closed.** Every single-instance fix
25 in #97 had two or three.
264. **Make a test fail before trusting it, and pin the CALL, not just the
27 function.** Delete the call site and confirm red.
285. **Never assert wall-clock time.** Assert the observable consequence instead.
296. **Run the gates and READ the output** — build, typecheck, test, lint, the three
30 CI smokes, `release:qa` — then wait for CI on the SHA you actually pushed.
31 
@@ −1 +1 @@
1−# CLAUDE.md
1+---
2+description: Scope a change and land it without a multi-round review loop
3+globs: **/*
4+alwaysApply: true
5+---
26  
3−This project uses **AGENTS.md** as the primary agent guide. Read it first:
7+# Change discipline
48  
5−@AGENTS.md
9+The canonical text is **`AGENTS.md` → "Change discipline"**, and the "Definition
10+of Done" section beside it. This file exists only because Cursor reads
11+`.cursor/rules` and not `AGENTS.md` — Claude Code reads AGENTS.md via
12+`CLAUDE.md`, and it is Codex's source of truth. Keep the two in sync; if they
13+disagree, AGENTS.md wins.
614  
7−## Claude Code specifics
15+The short form:
816  
9−- The statusline command must return in **<150ms** and **never** hit the network on the hot path — read from the local micro-cache.
10−- Local MCP dev loop:
11− ```bash
12− pnpm -F @claudinho/mcp build
13− claude mcp add claudinho-dev -- node packages/mcp/dist/index.js
14− ```
15−- When changing shared types, update `@claudinho/core` and run `pnpm -r typecheck` before committing.
16−- Run `pnpm lint` (Biome) before committing; CI gates on it. The setup is lint-only (no formatter) — keep style consistent with the surrounding code.
17−- **Before declaring any change "done," run the "Pre-PR self-review" rubric in `AGENTS.md`** — verify external API shapes against a *real* response (fixtures included); apply the change to every surface (CLI text **and** `--json`, MCP `data` **and** text, READMEs); audit against the Hard Constraints (existing code too); do an adversarial failure-mode pass (fail-closed; never cache transient errors); and bound default-on latency. For money/legal/external-API changes, do an independent reviewer pass and self-classify findings **P1/P2/P3**.
18−- **After any push to a branch with CI, always watch the run and confirm it's green** (`gh run watch <id> --exit-status`); report the per-job result. Don't consider a push "done" until CI passes.
17+1. **Acceptance criteria in the PR before the first commit**, plus an explicit
18+ statement of what the change does NOT cover. Skipping this is what turned
19+ PR #97 into twelve review rounds: with no written finish line every round
20+ ended at "I fixed what was reported" and the next round moved it, and with no
21+ stated boundary, findings equally true of `main` arrived as blockers.
22+2. **Put a shared rule where every path reaches it, then delete the other copy** —
23+ not at the site the report happened to mention.
24+3. **Grep for siblings before calling a class closed.** Every single-instance fix
25+ in #97 had two or three.
26+4. **Make a test fail before trusting it, and pin the CALL, not just the
27+ function.** Delete the call site and confirm red.
28+5. **Never assert wall-clock time.** Assert the observable consequence instead.
29+6. **Run the gates and READ the output** — build, typecheck, test, lint, the three
30+ CI smokes, `release:qa` — then wait for CI on the SHA you actually pushed.
1931  
RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack

RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack

RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack