diff --git a/.gitignore b/.gitignore index 3068430..69c3c44 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,6 @@ coverage/ tests/fixtures/**/dist/ tests/integration/**/.next/ tests/integration/**/dist/ + +# AGENTS.md is the only agent instruction surface +.claude/ diff --git a/AGENTS.md b/AGENTS.md index f1c886a..09b1b39 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -2,6 +2,11 @@ Public shared TypeScript presets for Node.js, libraries, React, and Next.js. The goal is a small, strict, independently installable config package with verified TypeScript 6/7 behavior. +## Agent instructions + +`AGENTS.md` is the sole agent-instruction source for this repository. Do not add +`CLAUDE.md` or `.claude` content. + ## Repository map - `*.json` — published compiler presets; `base.json` owns shared defaults. diff --git a/CLAUDE.md b/CLAUDE.md deleted file mode 100644 index f1c886a..0000000 --- a/CLAUDE.md +++ /dev/null @@ -1,21 +0,0 @@ -# @vllnt/typescript - -Public shared TypeScript presets for Node.js, libraries, React, and Next.js. The goal is a small, strict, independently installable config package with verified TypeScript 6/7 behavior. - -## Repository map - -- `*.json` — published compiler presets; `base.json` owns shared defaults. -- `tests/fixtures/` — compiler contract fixtures for every preset. -- `tests/integration/` — real React/Vite and Next.js builds. -- `scripts/test-utils.mjs` and `tests/configs.test.mjs` — package, compiler, and emit validation. -- `.github/workflows/` — pull-request checks, canary publishing, and manual stable releases. -- `README.md`, `CHANGELOG.md`, `llms*.txt` — public contract and migration documentation. - -## Invariants - -- Use pnpm and keep `pnpm-lock.yaml` deterministic. -- Keep `package.json` files and exports aligned with every public preset. -- Treat strictness, compiler floors, module resolution, target, and emit changes as public API changes. -- Synchronize public behavior across README, changelog, and LLM manifests. -- Do not publish, tag, merge, or announce a release without explicit maintainer instruction. -- Run `pnpm check` and `pnpm pack --dry-run` before handoff. diff --git a/package.json b/package.json index 686900a..a8ae5cf 100644 --- a/package.json +++ b/package.json @@ -50,12 +50,13 @@ "scripts": { "format": "prettier --write .", "format:check": "prettier --check .", - "lint": "eslint .", + "lint": "pnpm check:agents && eslint .", "test": "vitest run", "test:coverage": "vitest run --coverage", "test:integration": "pnpm --dir tests/integration/react build && pnpm --dir tests/integration/nextjs build", "check": "pnpm format:check && pnpm lint && pnpm test:coverage && pnpm test:integration", - "prepublishOnly": "pnpm check" + "prepublishOnly": "pnpm check", + "check:agents": "node -e \"const f=require('node:fs');if(!f.existsSync('AGENTS.md')||f.existsSync('CLAUDE.md')||f.existsSync('.claude'))process.exit(1)\"" }, "peerDependencies": { "typescript": ">=6.0.2 <8"