Add AI agent configuration and devcontainer#323
Conversation
Allow common development commands (composer scripts, phpunit, phpcs, phpcbf, parallel-lint, npm for WordPress test env) and relevant documentation domains (developer.wordpress.org, sqlite.org). Also gitignore .claude/settings.local.json for personal overrides.
bc02c31 to
9a5e373
Compare
Add a root-level devcontainer for developing the SQLite driver and running all test suites. This is separate from the existing WordPress- specific devcontainer in wordpress/.devcontainer/. The configuration provides: - PHP 8.4 with pdo_sqlite extension - Composer (included in the base image) - Node.js 20 (for Playwright E2E tests) - Docker-in-Docker (for WordPress integration tests)
9a5e373 to
31b7c81
Compare
There was a problem hiding this comment.
Pull request overview
This PR establishes AI agent configuration and development container setup for the SQLite Database Integration project. It provides comprehensive guidance documentation for AI coding assistants, pre-approved command permissions for Claude Code, and a standardized devcontainer environment.
Changes:
- Add
AGENTS.mdwith project architecture, coding conventions, commands reference, and development guidelines - Add
CLAUDE.mdthat referencesAGENTS.mdfor Claude Code integration - Add
.claude/settings.jsonwith pre-approved permissions for common development and testing commands - Add
.devcontainer/devcontainer.jsonwith PHP 8.4, Node.js 20, and Docker-in-Docker configuration - Update
.gitignoreto exclude local Claude settings
Reviewed changes
Copilot reviewed 4 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| AGENTS.md | Comprehensive AI agent guidance covering project overview, architecture diagrams, commands, principles, security considerations, compatibility requirements, coding conventions, and Git practices |
| CLAUDE.md | Simple reference to AGENTS.md for Claude Code integration |
| .claude/settings.json | Pre-approved bash command permissions for composer, phpunit, phpcs, npm, and web fetch permissions for WordPress and SQLite documentation |
| .devcontainer/devcontainer.json | Devcontainer configuration with PHP 8.4 image, Node.js 20, Docker-in-Docker, and composer install post-create command |
| .gitignore | Added exclusion for local Claude settings file |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
ashfame
left a comment
There was a problem hiding this comment.
Left a few comments to consider but good to land. Nicely done!
| .DS_Store | ||
| ._* | ||
| /wordpress | ||
| /.claude/settings.local.json |
There was a problem hiding this comment.
Curious: This seems like a path under the container, but how come it has your settings.local.json in there?
There was a problem hiding this comment.
It's for local indeed, not the container.
There was a problem hiding this comment.
@ashfame That means it ignores the path in the repository root only, but not recursively. Since the path is specific enough, both options would work fine here.
There was a problem hiding this comment.
oh yes, I completely forgot about that bit. I kept thinking its on root, so must be a path in container. Thanks!
| - **Public APIs:** It's possible to evolve the public API, but this must always be | ||
| surfaced to the developer so versioning decisions can be made. |
- Add project name to the heading - Wrap long lines in the project overview paragraph - Add `composer run wp-run` to the commands list - Split the component overview into three separate diagrams
Summary
This PR adds configuration for AI coding agents and a development container:
AGENTS.mdwith project architecture overview, commands, coding conventions, security and compatibility notes, and git practices.CLAUDE.mdreferences it..claude/settings.jsonwith pre-approved permissions for common development commands..devcontainer/with PHP 8.4, pdo_sqlite, Node.js 20, and Docker-in-Docker — suitable for developing the SQLite driver and running all test suites.