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/

FolderContainsUse it to
principles.mdWhy the code is shaped the way it isResolve a judgment call between two valid approaches
constraints.mdHard 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 repositoryStart 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 reviewStart 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, securityDo or review work in one domain
knowledge/How the system works: architecture, request lifecycle, scoping, caching, domain events, MongoDB, async, testsUnderstand before changing
glossary/The domain vocabulary, including the renamed termsName things the way GrandNode does
standards/Naming, C# style, Razor and frontend, dependencies, git and pull requestsFormat, structure and ship a change
checklists/Definition of done, code review, security, performance, data change, plugin releaseVerify a change before calling it done
examples/Walkthroughs of shipped code: a cached store-scoped service, a payment plugin file by file, a theme overrideSee the rules applied
templates/Skeletons for a plugin, an admin configuration screen, a theme and a migrationScaffold 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

  1. Clone the repository; the kit is part of it, nothing to install.
  2. Open the repository in your agent. Tools that read AGENTS.md or CLAUDE.md pick it up automatically; for others, point the agent at AGENTS.md in your first message.
  3. 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.
  4. Review the result against .ai/checklists/definition-of-done.md and .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.

Question not answered here? Ask the community on GitHub Discussions ↗