

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
1234567# Commitlint AI File Organization89Follow the AI-Core architecture discipline in this repository.1011## Core Rules12131. One file contains exactly one exported class, interface, type, enum, value object, use case, service, or constant group.142. Put each entity kind under its own folder: interfaces in `interface/`, types in `type/`, enums in `enum/`, entities in `entity/`, value objects in `value-object/`, services in `service/`, use cases in `use-case/`.153. Do not use string-literal unions for domain choices. Use enums and export one enum per file.164. Every directory with source files must have an `index.ts` barrel, including nested grouping directories.175. Group files by common prefixes recursively. If two sibling files would be `reasoning-mode.*` and `reasoning-options.*`, create `reasoning/mode.*` and `reasoning/options.*`. Repeat this at every level until sibling names no longer share removable prefixes.186. Remove prefix segments represented by directories from file names. Use `reasoning/mode.enum.ts`, not `reasoning/reasoning-mode.enum.ts`.197. Keep SDK-specific types out of `src/domain/**` and `src/application/**`; map SDK payloads only in `src/infrastructure/**`.208. Preserve clean dependency direction: domain has no app/infrastructure imports; application depends on domain; infrastructure implements ports.219. Use project naming: `I*` interfaces, `T*` types, `E*` enums, kebab-case filenames with `.interface.ts`, `.type.ts`, `.enum.ts`, `.service.ts`, `.use-case.ts`.2210. Use project aliases for new or touched internal imports/exports: `@domain/*`, `@application/*`, `@infrastructure/*`, `@presentation/*`, or `@/*`.2311. Do not add `.js` extensions in new TypeScript import/export specifiers.2412. In `index.ts`, use explicit named exports for files. Use `export * from "@.../folder";` only for child folder barrels.2513. Non-barrel source files export exactly one top-level entity, and the exported name must mirror the owning path plus file stem.2614. Function-valued top-level constants count as entities too; do not place them beside another exported entity.2715. Constant files use exactly one exported `*_CONSTANT` object bag; do not mix helper types, functions, classes, or enums into constant files.2816. Avoid noisy one-off abstractions. Extract only when the symbol carries domain meaning, removes real duplication, or protects an invariant.2930## Runtime Options3132- Public runtime option contracts must be project-owned or AI-Core-owned types, never provider SDK request types.33- Provider-specific behavior belongs in `@elsikora/ai-core` or infrastructure adapters, not in domain/application contracts.34- Existing public adapter methods must remain compatible unless a breaking change is explicitly requested.35
One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| ElsiKora/Commitizen-Plugin-Commitlint-AI.cursor/rules/architecture-boundaries.mdc · 3 | Cursor rules | no sections | 16/100 | 14 days ago | |
| ElsiKora/Commitizen-Plugin-Commitlint-AI.cursor/rules/documentation-governance.mdc · 3 | Cursor rules | docs | 16/100 | 14 days ago | |
| ElsiKora/Commitizen-Plugin-Commitlint-AI.cursor/rules/linter-disable-policy.mdc · 3 | Cursor rules | lint-formatdo-not | 35/100 | 14 days ago | |
| ElsiKora/Commitizen-Plugin-Commitlint-AI.cursor/rules/no-noisy-abstractions.mdc · 3 | Cursor rules | style | 20/100 | 14 days ago |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| hiromaily/go-crypto-wallet.cursor/rules/typescript.mdc · 126 | Cursor rules | setupbuildtestlint-format+6 | 100/100 | 14 days ago | |
| TechSquidTV/Hermes.cursor/rules/10-hermes-api.mdc · 46 | Cursor rules | testlint-formatstylearch+5 | 100/100 | 14 days ago | |
| dodgecfr/combatfilms-webapp.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| deifos/clipmira-subtitles.cursor/rules/frontend.mdc · 1 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| markstev/mark-starter.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+6 | 99/100 | 14 days ago | |
| Allymahmoud/case-intake-platform.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| langflow-ai/langflow.cursor/rules/docs_development.mdc · 153k | Cursor rules | setupbuildtestlint-format+7 | 97/100 | 14 days ago | |
| TechSquidTV/Hermes.cursor/rules/20-hermes-api-tests.mdc · 46 | Cursor rules | teststyletesting-strategysecurity+3 | 97/100 | 14 days ago |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/elsikora-commitizen-plugin-commitlint-ai-cursor-rules-file-organization)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.