All projects

agent-kit

2026

One AI-coding workflow that travels with you — a single source of truth every assistant reads, whatever the tool, whatever the provider.

ShellAGENTS.mdClaude CodeCursorCopilotMCP
agent-kit

The problem

Every AI coding tool demands its own instruction file: Claude Code reads CLAUDE.md, Cursor wants .mdc rules, Copilot has copilot-instructions.md, Windsurf and Aider have their own formats. Keep them all by hand and they drift apart within a week — the guidance your assistants follow depends on which editor you happened to open.

I wanted to write my engineering conventions once and have every tool obey the same brief.

The approach

The kit standardizes on AGENTS.md — the open, tool-agnostic standard — as the single source of truth, then generates thin adapters for everything else: a CLAUDE.md that imports AGENTS.md, Cursor rule files, a Copilot symlink, Windsurf, Gemini, and Aider bridges.

An install.sh detects the project's stack from its manifests — React, Next.js, Express, Python, FastAPI, or agentic-AI — and assembles AGENTS.md from composable modules, so an Express API and a Python agent project get different, relevant guidance from the same kit. Python-AI projects additionally get an .mcp.json and a provider-agnostic .env.example.

Decisions and trade-offs

Composition over monolith: conventions live in small module files that the installer stitches together, so fixing a rule fixes it for every stack that includes that module.

Adapters over waiting for standards adoption: not every tool reads AGENTS.md natively yet (Claude Code still doesn't, as of 2026), so the kit meets each tool where it is rather than betting on convergence.

It also ships a shared command and skill library, so custom workflows — not just static instructions — travel between tools too.

Outcome

One ./install.sh in any repo and every assistant I use reads the same conventions. The kit now bootstraps all of my personal projects, including the three interactive courses and this portfolio's sibling repos.