* feat: extract SKILL.md body into AGENTS.md with H1 title and Overview section
Build system now parses SKILL.md body to extract H1 heading as the AGENTS.md
title and places remaining content under an Overview section. Adds validation
that SKILL.md body starts with H1, directory name is kebab-case, and name
field matches directory name.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat: AGENTS.md is now SKILL.md body with frontmatter stripped
Build now generates AGENTS.md by extracting the SKILL.md markdown body
(everything after YAML frontmatter). CLAUDE.md remains a symlink to
AGENTS.md. Removes content generation logic (Structure, Usage, Overview,
Reference Categories, Available References sections) — SKILL.md is the
single source of truth for agent instructions.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat: add Structure and Usage sections to AGENTS.md, validate H1 title matches directory name
Build now generates AGENTS.md as: H1 Title > Structure > Usage > rest of
SKILL.md body. Validates that SKILL.md body starts with H1 heading and
that the title in kebab-case matches the directory name.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* feat: add schema-constraints reference for safe migration patterns
Documents correct approaches for adding constraints in PostgreSQL migrations,
since ADD CONSTRAINT IF NOT EXISTS is not supported and causes syntax errors.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
* Remove additional correct options
---------
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Remove support for nested subdirectories in references/.
All markdown reference files must now be placed directly in
the references/ directory (e.g., references/auth-signup.md).
- Replace getMarkdownFilesRecursive with getMarkdownFiles (flat)
- Simplify parseAllSections to only read root _sections.md
- Update getReferenceFiles to skip subdirectories
- Keep deprecated getMarkdownFilesRecursive alias for compatibility
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
* fix: remove CLAUDE.md symlink generation from build
The CLAUDE.md symlink causes installation errors when using
`npx skills add` as it tries to copy AGENTS.md to itself.
- Remove createClaudeSymlink function from build.ts
- Remove claudeSymlink from SkillPaths interface
- Remove CLAUDE.md references from AGENTS.md structure documentation
- Delete existing CLAUDE.md symlink from skills directory
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* test: add sanity test for skills installation
Add a sanity test that verifies the skills CLI installation works:
- Runs `npx skills add . -a claude-code -y` using current directory
- Checks command doesn't fail (exit code 0)
- Verifies .claude/skills directory is created
- Dynamically discovers skills in the repo and verifies they're installed
- Checks SKILL.md exists in each installed skill
The test runs on every push to main and pull requests.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* Revert "fix: remove CLAUDE.md symlink generation from build"
This reverts commit c07c234601.
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
- Add getMarkdownFilesRecursive() for recursive file scanning
- Add parseAllSections() to parse _sections.md from subdirectories
- Add parseSectionsFromFile() helper function
- Update buildSkill() and validateSkill() to use new functions
- Export new functions for use by validate.ts
This allows organizing reference files in product-specific subdirectories
(e.g., references/db/ for database files) while keeping _sections.md in
each subdirectory.
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
* refactor: generic skills build system with auto-discovery
- Rename postgres-best-practices-build → skills-build
- Add auto-discovery: scans skills/ for subdirectories with metadata.json
- Build/validate all skills or specific skill with -- argument
- Update root AGENTS.md and CONTRIBUTING.md with new structure
- No configuration needed to add new skills
Usage:
npm run build # Build all skills
npm run build -- skill-name # Build specific skill
npm run validate # Validate all skills
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix ci
* more generic impact levels
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
- Install Biome as the project formatter and linter
- Configure Biome with recommended settings
- Add format, lint, and check scripts to package.json
- Restore CI workflow from git history (commit 0a543e1)
- Extend CI with new Biome job for format and lint checks
- Apply Biome formatting to all TypeScript files
- Fix linting issues (use node: protocol, template literals, forEach pattern)
CI now runs on:
- All pushes to main branch
- All pull requests
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
* feat: add marketplace.json for Claude Code plugin distribution
Add .claude-plugin/marketplace.json to enable distribution of the
postgres-best-practices skill as a Claude Code plugin.
Users can install via:
/plugin marketplace add supabase/agent-skills
/plugin install postgres-best-practices@supabase-postgres
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat: add plugin.json manifest for postgres-best-practices skill
Add .claude-plugin/plugin.json inside the skill directory to properly
define this as a Claude Code plugin. This is required by the marketplace
specification - each plugin must have its own plugin.json manifest.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* chore: update marketplace name and description for broader scope
- Rename marketplace from supabase-postgres to supabase-plugins
- Update description to reflect this as the official Supabase agent skills repo
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* minor fixes
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Update version from 0.1.0 to 1.0.0 across all files:
- skills/postgres-best-practices/AGENTS.md
- skills/postgres-best-practices/SKILL.md
- skills/postgres-best-practices/metadata.json
- packages/postgres-best-practices-build/package.json
- packages/postgres-best-practices-build/package-lock.json
- packages/postgres-best-practices-build/src/build.ts
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Skeleton structure for Supabase PostgreSQL experts to add performance
optimization rules. Modeled after Vercel's react-best-practices-build.
Includes:
- Build system (parser, validator, builder)
- Skill manifest and metadata
- Rule templates and writing guidelines
- CI workflow for validation
- Getting started guide for Postgres team
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>