Install Think First
Pick your agent. Every command is ready to paste.
npx skills add waynesutton/builder-skills --skill think-firstThe open skills CLI detects your agents (Claude Code, Cursor, Codex and 70+ more) and installs to the right folder. Add -g to install globally.
01
Install it
Run the command above, or upload the folder in Claude.
02
Ask naturally
Describe the task. Your agent loads think-first when the request matches its description.
03
Name it if needed
If it does not trigger, say “use the think-first skill”. In Codex, type $think-first.
Think first
Slow down for thirty seconds before the first edit. It saves an hour later.
1. Reflect before acting
- Reflect. Why does the current code not do what the user wants? Read it. Do not guess.
- Identify. What is missing, wrong, or incomplete relative to the request?
- Theorize. List two or three possible sources of the problem or areas that need to change.
- Distill. Narrow to the one or two most likely causes and say why.
- Proceed. Move forward only once that is clear.
Never assume. If anything is unclear, ask one focused question and stop. A wrong assumption costs more than a question.
2. Confidence bar
Do not write code below 98 percent confidence in what needs to change. Below that: read more, ask, or propose a plan instead of a diff. Edit the number if this project wants a different bar.
3. Convex rules
Check https://docs.convex.dev/llms.txt for the current API before relying on memory.
- Call mutations with plain objects. Write a dedicated mutation that maps form fields to document fields, and keep the names the same where you can.
- Patch directly when you do not need the current document.
- Check ownership on the server. Load the document and compare its owner to the caller from
ctx.auth, or read through an index on the owner field. Never trust an owner id passed in args. - Make mutations idempotent with early returns when the document is already in the target state.
- Order new items by a timestamp field or
_creationTime. - Use
Promise.allfor independent reads. It does not prevent write conflicts. To avoid OCC conflicts, keep each mutation's reads and writes narrow and avoid many writers on one hot document.
Docs to check:
- Functions: https://docs.convex.dev/functions
- Mutations: https://docs.convex.dev/functions/mutation-functions
- Queries: https://docs.convex.dev/functions/query-functions
- Validation: https://docs.convex.dev/functions/validation
- Schemas: https://docs.convex.dev/database/schemas
- Zen of Convex: https://docs.convex.dev/understanding/zen
- Best practices: https://docs.convex.dev/understanding/best-practices/
- TypeScript: https://docs.convex.dev/understanding/best-practices/typescript
Authentication:
- Convex Auth: https://docs.convex.dev/auth/convex-auth (beta; the setup guide is at https://labs.convex.dev/auth)
- Auth in functions: https://docs.convex.dev/auth/functions-auth
- Other providers: https://docs.convex.dev/auth
For Convex work beyond these rules, use the official Convex skills. https://www.convex.dev/agent-setup.md installs them.
4. Scope
Change:
- Only the files the request needs.
- The schema, if the request needs it.
changelog.md,files.md, andtask.mdafter the change lands. Rungit log --date=shortso dates match the real history. No placeholders, no future months.
Do not change:
- UI, layout, design, colors, or copy the request did not mention.
- Admin dashboard sections, frontend components, or features the request did not mention. Nothing gets removed without being asked.
- [Add project specific protected areas here.]
5. UI
- Use the site's design system for every popup, alert, modal, warning, toast, and confirmation. Never the browser default.
- Follow the Vercel Web Interface Guidelines: https://raw.githubusercontent.com/vercel-labs/web-interface-guidelines/refs/heads/main/AGENTS.md
6. Docs policy
Do not create README, CONTRIBUTING, SUMMARY, or USAGE_GUIDELINES files unless asked. A short summary in the reply is enough. No emojis in docs or the app unless asked.
7. Git
Load git-safety before any git command that could discard work. Short version: git status first, git diff before discarding, undo by editing files, and never run reset --hard, checkout -- ., clean -fd, or stash drop without the user approving that exact command.
Checklist
Before the first edit:
- I can name the root cause
- I considered at least two fixes and picked one for a reason
- I am at or above the confidence bar
- I know which files change and which do not
- I am keeping UI and features the request did not mention
- I checked the relevant docs
- Anything unclear has been asked
Before saying done:
- The fix was verified, not just written
- Nothing outside the request changed
- Docs synced if the change was non trivial
Tips for Think First
- • Start a fresh session after installing so your agent picks up the new skill.
- • It bundles reference files. The agent reads them only when needed, so they cost no context until then.
- • It is part of a pack with 22 skills. Install only the ones you need with --skill to keep triggers precise.
- • If two skills overlap, mention the one you want by name.
Questions about Think First
What does the Think First skill do?
Reflection first problem solving for Convex projects: root cause before code, two candidate fixes, a 98 percent confidence bar, and changes limited to the files the request needs. Use before implementing any fix or feature, when a bug report comes in, when a previous fix did not work, or when the request is vague.
How do I install Think First?
Run "npx skills add waynesutton/builder-skills --skill think-first" in your project. The skills CLI installs it for Claude Code, Cursor, Codex and 70+ other agents. In Claude on the web, upload the skill folder as a ZIP under Customize > Skills.
Does Think First work in Cursor and Codex?
Yes. Think First uses the open SKILL.md format, so it works in Claude Code, Claude, Cursor, OpenAI Codex, Gemini CLI, GitHub Copilot and other agents that support agent skills.
Is Think First free?
Think First is open source on GitHub under the Apache-2.0 license. It is free to install; check the license before commercial use.
Who made Think First?
Think First is published by waynesutton in the waynesutton/builder-skills repository, together with 21 other skills.




