name: mutsuki-naming-guard description: Enforce Mutsuki/NanoBot component naming and responsibility boundaries. Use when Codex works in Mutsuki or NanoBot repositories, adds or renames crates/modules/types/traits, audits Host/Backend/Bridge/Services/Protocol/SDK/Plugin/Core/Adapter/Provider/Gateway naming, or checks whether components have unclear mixed responsibilities.
Mutsuki Naming Guard
Workflow
- Read the repository instructions and current architecture/contracts docs before judging names.
- Classify each new or touched component by the question it answers, not by what it feels like.
- If a name does not match the component's answer, rename or split at the correct boundary instead of adding aliases.
- If responsibilities cross categories, split the component or move the behavior to the existing layer that owns it.
- For code changes, update the boundary's contract documentation first when it is new or not yet
described:
plans/contracts.mdfor wire/protocol boundaries, the owning scopedAGENTS.mdandskills/*/SKILL.mdfor component boundaries.
Decision Order
Ask these in order:
- Is it the minimal scheduling fact source? Use
CoreorKernel. - Does it let Mutsuki run inside an application environment? Use
Host. - Does it decide how plugins or runners are loaded/executed? Use
BackendorLoader. - Does it connect two runtime, protocol, process, or UI boundaries? Use
Bridge. - Does it translate an external or legacy system into current protocol? Use
Adapter. - Does it only declare task/resource/event/effect types? Use
Protocol. - Does it provide author-facing helper APIs? Use
SDK. - Does it expose host capabilities to plugins? Use
ServicesorServiceRegistry. - Does it implement replaceable behavior? Use
Plugin. - Does it provide an external capability implementation? Use
Provider. - Does it control permissions or external side effects? Use
Gateway. - Does it persist local state or CRUD data? Use
StoreorRepository.
Mandatory Rules
- Reserve
Hostfor application runtime environments such as Tauri, CLI, Service, or Test. - Use
Backendfor Native, ABI, JSONL, Python, WASM, process, or sidecar execution forms. - Use
Bridgeonly for boundary transfer/conversion; move policy choices toPolicyorRouter. - Use
Servicesonly for host-provided capability sets consumed by plugins. - Use
Protocolonly for pure contracts; no providers, storage, Tauri, UI, or SDK calls. - Use
SDKonly for plugin-author facade/helpers; it must lower to Task, ResourceRef, plans, and RunnerResult. - Use
Pluginonly for replaceable behavior implementations. - Use
Coreonly for runtime kernel or a product-domain plugin set. - Use
Adapterfor external/legacy protocol translation. - Use
Providerfor concrete suppliers of external capabilities. - Use
Gatewayfor permission checks, policy enforcement, audit, and side-effect exits.
Reference
Read references/naming-rules.md when auditing more than one component, reviewing a proposed rename, or deciding whether to split responsibilities.
Skills similaires
Expert Next.js App Router
Developpement
Un skill qui transforme Claude en expert Next.js App Router.
Claude CodeCursoradvanced
890
234
3,488
Générateur de README
Developpement
Crée des README.md professionnels et complets pour vos projets.
claudeCursorWindsurfbeginner
259
72
1,385
Rédacteur de Documentation API
Developpement
Génère de la documentation API complète au format OpenAPI/Swagger.
claudeCursorWindsurfintermediate
156
44
1,267