Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
The English summary is being prepared. Showing the original description.
When working within any module under `modules.root_paths` from `.agent-project-settings.yml` — Laravel HMVC, Symfony DDD-lite, Node monorepo, Python src/, Go internal/, or a custom path.
The English summary is being prepared. Showing the original description.
See how to installReview the instructions the agent will receive before you install.
Use this skill when creating, exploring, or working within a module under
any directory listed in modules.root_paths (team setting in
.agent-project-settings.yml). The skill is stack-agnostic — Laravel
HMVC, Symfony DDD-lite, Node monorepo, Python src layout, Go internal/,
or a custom path all flow through the same procedure with a
stack-specific carve-out at the bottom.
When modules.enabled is false (the default) the skill is a no-op —
the project does not opt into module-aware behavior.
Before creating, renaming, or modifying anything inside a module:
modules: block from .agent-project-settings.yml —
never assume a specific module root.modules.root_paths entry and
review the target module's README.md (or package.json /
pyproject.toml description) to understand its purpose.{module_root}/{ModuleName}/{modules.agent_folder}/contexts/.modules.namespace_template
shape and confirm the conventions before generating files.Skip this step → risk creating files in the wrong root, breaking stack-native auto-loading, or duplicating existing modules.
modules: block from .agent-project-settings.yml via the
loader (get_modules_config() in scripts/_lib/agent_settings.ts).modules.root_paths, read the module's README.md
(or package.json / pyproject.toml description) for purpose.{module_root}/{modules.agent_folder}/ (default agents/), read them.modules.namespace_template shape
or root-path heuristic — apply stack-specific conventions on top of
the generic procedure.modules: block is empty)When modules.enabled is unset / false, the skill consults the
auto-detection table in
/module explore Step 1 — same six
stack shapes, fallback only. The skill never writes the modules:
block automatically; that is propose_modules_config.ts plus user
confirmation per
/agents init Step 7.
{module_root}/{ModuleName}/
├── <stack-native source layout> # see carve-out below
├── tests/ # module-specific tests
├── README.md # module description
└── {modules.agent_folder}/ # default: agents/
├── features/ # module-scoped feature plans
├── roadmaps/ # module-scoped roadmaps
└── contexts/ # module-scoped context docs
The agent-folder name comes from modules.agent_folder (default
agents). Skip directories listed in modules.skip_dirs (default
.module-template, .example).
Apply the section that matches the project's
modules.namespace_template and root-path layout.
Triggers when: modules.namespace_template starts with
App\Modules\ or root path is app/Modules.
app/Modules/{ModuleName}/
├── App/ # PSR-4 source (capitalized)
│ ├── Console/Commands/ # auto-registered
│ ├── Http/{Controllers,Middleware,Requests}/
│ ├── Jobs/ Models/ Services/ Rules/ Enums/
├── Routes/ # auto-loaded
│ ├── api.php web.php console.php
├── Tests/{Unit,Integration,Component}/
└── agents/
Namespace: App\Modules\{ModuleName}\App\{Layer}\{Class} — note the
extra App segment.
Auto-loading: app/Providers/ModuleServiceProvider.php scans
app/Modules/ and registers routes (Routes/api.php → /api prefix +
api middleware; Routes/web.php → web middleware) plus Artisan
commands under App/Console/Commands/.
Route conventions:
// Routes/api.php — auto-prefixed /api
Route::name('v1.')->prefix('v1/{module-prefix}')->group(function(): void {
Route::get('/', [Controller::class, 'index'])->name('{module-prefix}.index');
});
Module name = PascalCase. Route prefix = kebab-case. Route names = dot notation.
Triggers when: modules.namespace_template starts with App\ (no
Modules segment) or root path is src/ with <Domain>/ subdirs.
src/{Domain}/
├── Application/ # use cases, command handlers
├── Domain/ # entities, value objects
├── Infrastructure/ # adapters, repositories
├── UserInterface/ # controllers, console
└── Tests/
Namespace: App\{Domain}\{Layer}\{Class} — no extra segment.
Auto-loading: Symfony service container auto-wires each
{Domain}/ subtree per services.yaml resource imports.
Triggers when: root path is packages/ and each child has
package.json.
packages/{pkg-name}/
├── package.json
├── src/ # entry points re-exported via "main"
├── tests/ __tests__/
└── README.md
Module identity comes from package.json#name, not the directory
name. The agent folder still lives at
packages/{pkg-name}/{modules.agent_folder}/.
Triggers when: root path is src/ and each child has __init__.py.
src/{package_name}/
├── __init__.py
├── <module files>
└── tests/ # or root-level tests/{package_name}/
Namespace is the import path: {package_name}.<sub>.<class>. Project
metadata in pyproject.toml.
Triggers when: root path is internal/ (one-level structure).
internal/{pkgname}/
├── *.go # package files
└── *_test.go # tests colocated
Import path: {module-path-from-go.mod}/internal/{pkgname}. No
top-level grouping — each subdir of internal/ is its own package.
{modules.agent_folder}/ scaffold.modules.namespace_template (when set).php artisan route:list for
Laravel HMVC, bin/console debug:container for Symfony,
npm test --workspace=<pkg> for Node monorepo).App segment
(App\Modules\X\App\…). Other stacks do not.modules.root_paths.packages/ no).<app>/<Modules>/, Symfony src/Domain, Node packages/, …) in
skill bodies, commands, or context docs — read from
modules.root_paths.framework: laravel frontmatter back to this skill —
the lint guard fails the build.No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
The English summary is being prepared. Showing the original description.
Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'.
The English summary is being prepared. Showing the original description.
Use when capturing an architectural decision — file naming, next ADR number, Status / Context / Decision / Consequences, index regen; fires even without saying 'ADR'.
The English summary is being prepared. Showing the original description.
Adversarial critique — devil's advocate, stress-test, honest teardown ('poke holes', 'be brutal', 'was hältst du davon'); explicit request only. Routine code or design review → code-review.
The English summary is being prepared. Showing the original description.
Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.
The English summary is being prepared. Showing the original description.
Use for an adversarial red-team / blue-team / auditor review of an AI agent's CONFIG + behaviour (rules, skills, MCP, hooks, permissions) — attack-chain → defensive-gap list, not a code audit.
The English summary is being prepared. Showing the original description.