Free tool

Tools.md Generator

Create a single markdown file that tells Claude, Codex, Cursor, or any coding assistant which tools your project uses and how to work with them.

  • The assistant gets an explicit inventory of the actual tools you typed, not a single forced stack choice.
  • Known tools are grouped into framework, UI, testing, platform, package manager, and assistant sections.
  • Unknown tools are preserved as custom entries so the generated file does not lose project context.
  • The output gives agents dependency and replacement rules before they edit code.

I made tools.md up. There is no formal spec. CLAUDE.md kept growing into a 400-line monster mixing project rules, design system conventions, tool inventory, and command snippets. I split the tool/dependency facts into their own file so the rules layer stays small. Call yours whatever you want. The point is the separation.

One file. Different behavior.

A single example. Same project, same prompt, same model. The only thing that changes is whether tools.md is in context.

Without tools.md Claude guesses from the prompt alone.
You: Add a Supabase auth check to the dashboard route.

Claude: I'll install the auth helper.
$ npm install @supabase/auth-helpers-nextjs

I'll add it to your pages/api directory.
  • npm instead of pnpm.
  • pages/api instead of App Router app/api.
  • Deprecated auth-helpers-nextjs instead of the current @supabase/ssr.
With tools.md Claude reads the file before touching code.
You: Add a Supabase auth check to the dashboard route.

Claude: Reading tools.md... pnpm + App Router + @supabase/ssr.
$ pnpm add @supabase/ssr

Adding app/api/auth/route.ts with the server client from src/lib/supabase.ts.
  • Correct package manager.
  • Correct router pattern.
  • Current Supabase package, not the deprecated one.

Three ways to build your tools.md

Pick the path that fits where you are. All three produce the same kind of file.

Recommended

Answer a few questions

Walk through your stack one decision at a time. Best if you don't have every tool memorized.

Already know your stack? Skip ahead.

Paste a tool list

Comma-separated. Known tools are recognized automatically. Unknown ones become custom entries.

Paste your package.json

The generator reads dependencies, devDependencies, and peerDependencies and matches package names against the known-tool registry.