Then I realized the bottleneck isnt code generation anymore, its code comprehension. Like, AI can spit out infinite code but we still gotta review it, maintain it, debug it (sometimes at 2am when something breaks lol).
So I built this thing called Claude Bootstrap. Its basically a collection of "skills" (markdown files) that Claude reads before writing any code. Think of it like giving Claude a coding standards doc but one it actually follows.
The main stuff it enforces:
- TDD is mandatory - tests have to fail first before you write implementation. sounds annoying but it actually catches so many bugs - hard limits on complexity - 20 lines per function, 200 per file. forces you to keep things simple - theres a pre-push hook that runs code review and blocks if it finds critical issues - it tracks when your changes are getting too big for a reviewable PR
heres how to use it:
git clone https://github.com/alinaqi/claude-bootstrap.git ~/.claude-bootstrap cd ~/.claude-bootstrap && ./install.sh
# then in any project claude > /initialize-project
it sets up skills files, pre-push hooks, session management for context across convos, todo tracking etc.
got like 39+ skills now covering react, node, python, supabase, shopify, even reddit ads api and ms teams bots
the key insight for me was that ppl struggle with claude code not becuase the tool is bad, but because theres no guardrails. the delta is in the instructions you give it.
honest limitations tho:
this isnt magic. sometimes i still have to remind claude to follow TDD - itll try to jump straight to implementation and i gotta be like "nope, write the failing test first". the skills help but you gotta believe in them and keep enforcing them over and over.
the biggest mindset shift for me was bug fixing. when i find a bug now, i dont ask the AI to just fix it. i ask it "why did our tests miss this?" first. find the gap in test coverage, write a test that catches the bug, THEN fix it. otherwise you're just playing whack-a-mole.
also the 20 line limit - claude will sometimes split things weirdly just to hit the limit. you gotta use judgement. the limit is there to make you think, not to follow blindly.
and context management is still annoying. long sessions = claude forgets stuff. thats why theres session management skills but its not perfect. i still lose context sometimes and have to re-explain things.
hygiene is a big one too. i constantly enforce organization - active todos go in active.md, completed ones move to completed.md, all specs live in _project_specs/. claude will randomly dump files wherever if you dont watch it. i review file placements regularly and clean up anything thats in the wrong spot. sounds tedious but a messy repo = messy AI output. garbage in garbage out.
basically: these skills are guardrails not autopilot. you still gotta drive. and keep the car clean lol
curious what guardrails others have found useful? or if anyones tried something similar with cursor or other ai coding tools