The AI Agent Kit
The GrandNode repository ships an AI Agent Kit: an AGENTS.md file at the root and a .ai/ folder with the knowledge, rules and procedures that a coding agent — Claude Code, GitHub Copilot, Cursor, Codex or any other tool that reads repository instructions — needs to change GrandNode the way its maintainers would. It is plain Markdown, model-agnostic, and just as useful to a human developer new to the codebase. An overview for decision makers is on the AI Agent Kit page.
The entry point: AGENTS.md
AGENTS.md is the file agents read first (CLAUDE.md simply includes it). It does not contain the rules itself; it routes the agent to the right material for the task: which prompt to start from, which skills apply to which domain, which checklists to run before calling a change done, and a short list of operating rules — read the goal first, inspect existing patterns before proposing changes, keep changes in scope, never overwrite unrelated work, report what was and was not verified.
What is in .ai/
| Folder | Contains | Use it to |
|---|---|---|
principles.md | Why the code is shaped the way it is | Resolve a judgment call between two valid approaches |
constraints.md | Hard prohibitions (no AutoMapper, no Newtonsoft.Json, no blocking on tasks, no plugin references from core, no package versions in project files) | Know what is never acceptable |
prompts/ | Task entry points: implement a feature, create a plugin or theme, add a migration, write tests, review a change, explore the repository | Start work when you know what to build |
workflows/ | Multi-phase procedures with gates: fix a bug, investigate performance, refactor safely, upgrade a dependency, respond to review | Start work when the cause or path is not known yet |
skills/ | Domain procedures with mandatory rules: plugins by type, themes, admin panels, permissions and navigation, settings and localization, messages, scheduled tasks, MongoDB, security | Do or review work in one domain |
knowledge/ | How the system works: architecture, request lifecycle, scoping, caching, domain events, MongoDB, async, tests | Understand before changing |
glossary/ | The domain vocabulary, including the renamed terms | Name things the way GrandNode does |
standards/ | Naming, C# style, Razor and frontend, dependencies, git and pull requests | Format, structure and ship a change |
checklists/ | Definition of done, code review, security, performance, data change, plugin release | Verify a change before calling it done |
examples/ | Walkthroughs of shipped code: a cached store-scoped service, a payment plugin file by file, a theme override | See the rules applied |
templates/ | Skeletons for a plugin, an admin configuration screen, a theme and a migration | Scaffold new code |
agents/ | Agent definitions (plugin creator, bug fixer, reviewer, migration writer and more) | Hand a whole recurring task to an agent |
Why the glossary matters
GrandNode renamed much of the vocabulary it inherited: Brand not Manufacturer, Page not Topic, Customer group not Customer role, Merchandise return not Return request, Loyalty points not Reward points, User field not Generic attribute. A model trained on older e-commerce code reaches for the old word, produces types that read as foreign and searches that find nothing. .ai/glossary/renamed-terms.md is short and prevents that.
Using it
- Clone the repository; the kit is part of it, nothing to install.
- Open the repository in your agent. Tools that read
AGENTS.mdorCLAUDE.mdpick it up automatically; for others, point the agent atAGENTS.mdin your first message. - Describe the goal and name the entry point, for example:
Follow .ai/prompts/create-plugin.md and create a shipping plugin Shipping.PostNord that calculates rates by weight and country. - Review the result against
.ai/checklists/definition-of-done.mdand.ai/prompts/review-change.md— the same checklists the agent was asked to run.
For GitHub Copilot, .github/copilot-instructions.md is a thin adapter that sends Copilot to AGENTS.md. The agent definitions in .ai/agents/ follow the GitHub custom agent format; mirror them into .github/agents/ if you want Copilot to discover them as custom agents.
For your own project
If you build a store or plugins on GrandNode, keep the kit in your fork and extend it: add your own knowledge files (your integrations, your naming), your own skills for recurring tasks, and your constraints. Agents then follow both the platform's rules and yours.
Related
- AI Agent Kit on grandnode.com
- The .ai folder on GitHub
- Contributing
Question not answered here? Ask the community on GitHub Discussions ↗