s13n
Skill2 starsChanged 53 days agoMITView on GitHub
Use when standardizing inconsistent code patterns across a repository, resolving architectural divergence, or installing linter guards. Don't use for deep module redesign (use codebase-design) or single-file refactoring (apply the edit directly without invoking this skill; see AGENTS.md for edit conventions).
1 other project uses a version of this.
Adopted by
Most recently taken up by
- Marvellbrazil/my-agentic-skillstheir own version, first seen Oct 17, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- Marvellbrazil/my-agentic-skills★ 4same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository35 other files it gives its agents.
- agent-planningSkill
- brainstormingSkill
- codebase-designSkill
- code-reviewSkill
- conventional-commitSkill
- copy-web-designSkill
- executing-plansSkill
- frontend-designSkill
- i18nSkill
- laravelSkill
- prototypeSkill
- pull-requestSkill
- reactSkill
- recursive-researchSkill
- reflect-to-skillSkill
- review-a-skillSkill
- schema-migrationSkill
- security-auditSkill
- skill-testingSkill
- summarizeSkill
- systematic-debuggingSkill
- t3-operational-guardrailSkill
- technical-writingSkill
- testing-patternsSkill
- ui-motionSkill
- ui-ux-reviewSkill
- unslopSkill
- upsert-codebase-docsSkill
- verification-before-completionSkill
- vibe-wiseSkill
- web-advisor-promptSkill
- wizardSkill
- workspace-onboardingSkill
- writing-for-agentsSkill
- writing-plansSkill
The file
We split this skill into the rules it gives an agent
7 rules. About 0 are common, 5 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈5
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 23
Verify repository evidence or secure user authorization before selecting a canonical variant.
- Very specific: line 72
If the repository is mid-migration (indicated by TODO(migrate) comments or dual implementations), clarify migration intent before touching …
- Distinctive: line 94
When code patterns conflict and rank 1 or 2 does not specify a rule, present options to the user:
- Distinctive: line 122
Update every caller site across the codebase.
- Distinctive: line 123
Update associated test cases and documentation.
- Very specific: line 124
Add an automated linter guard (such as no-restricted-imports in ESLint or banned-api in Ruff) to prevent regressions.
- Distinctive: line 134
Test suite passes completely.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Standardization (s13n)
Normalize diverging patterns across a repository into a single canonical architecture protected by automated linter guards.
<HARD-GATE>
Write-Target Boundary. In Audit mode, do not modify any file outside `.agents/state/s13n/`. In Normalize mode, modify only source files under the resolved repository root and only after Phase 3 completion criterion passes. Never modify `vendor/`, `node_modules/`, `dist/`, `build/`, lockfiles, or generated files. Any write outside these bounds requires explicit user approval recorded in `.agents/state/s13n/write-approval.md`.
</HARD-GATE>Modes
Select an execution mode before Step 1:
- Audit mode (default). Inventory codebase patterns, identify architectural divergence, and generate a standardization plan without modifying files.
- Normalize mode. Apply approved pattern refactors and install linter guardrails.
Governing principle
Verify repository evidence or secure user authorization before selecting a canonical variant; never adopt a pattern solely on file frequency. The majority pattern is evidence, not authority. A minority pattern may represent an active architectural migration. Normalizing to the majority without checking destroys intentional migrations.
Precedence hierarchy
Resolve convention questions against this hierarchy, evaluated highest to lowest:
| Rank | Source | Authority | Action |
| 1 | Enforced tooling configuration (.editorconfig, eslint.config.js, ruff.toml) | Absolute | Apply configured rules directly as executable truth |
| 2 | Repository convention documents (AGENTS.md, CLAUDE.md, CODEBASE.md) | Authoritative | Apply documented standard when tooling does not yet enforce the pattern |
| 3 | Dominant unambiguous pattern in code (such as 47 out of 48 files) | Tentative | Recommend majority but check git history for intentional migrations |
| 4 | User confirmation | Authoritative | Ask via structured choice when patterns conflict |
| 5 | Per-language standards in references/std-*.md | Advisory | Baseline default when the repository lacks conventions |
Reference modules
Load relevant reference files on demand based on repository language and scope:
| Concern | Reference File |
| Divergence taxonomy and probes | references/divergence-taxonomy.md |
| Architecture and file layout | references/std-structure.md |
| TypeScript and JavaScript | references/std-ts.md, references/std-js.md |
| Python | references/std-python.md |
| Go | references/std-go.md |
| PHP | references/std-php.md |
| Rust and Ruby | references/std-rust.md, references/std-ruby.md |
| Java and C# | references/std-java.md, references/std-csharp.md |
| SQL, Shell, HTML, CSS | references/std-sql.md, references/std-shell.md, references/std-html.md, references/std-css.md |
| Configuration, Docs, Git | references/std-yaml-json.md, references/std-docs.md, references/std-git.md |
Workflow
Phase 1. Reconnaissance
Inspect existing repository conventions and tool configurations before modifying code:
ls -la AGENTS.md CLAUDE.md CODEBASE.md CONTRIBUTING.md .editorconfig 2>/dev/null
ls -la .eslintrc* eslint.config* .prettierrc* ruff.toml pyproject.toml .golangci.yml 2>/dev/nullDetermine primary languages and file distributions:
find . -type f -not -path './.git/*' -not -path '*/node_modules/*' -not -path '*/vendor/*' \
| sed 's/.*\.//' | sort | uniq -c | sort -rn | head -15If the repository is mid-migration (indicated by TODO(migrate) comments or dual implementations), clarify migration intent before touching files.
Completion criterion. The inventory is recorded in .agents/state/s13n/inventory.md listing convention files, active formatters, and language distribution counts.
Phase 2. Detect divergences
Probe codebase concerns systematically. Consult references/divergence-taxonomy.md for full taxonomy:
grep -rn --exclude-dir={node_modules,.git,dist,build,vendor} -E "require\(|from ['\"]|import .* from" . | head -30
grep -rn --exclude-dir={node_modules,.git,dist,build,vendor} -E "\.then\(|await |async function" . | head -30
grep -rn --exclude-dir={node_modules,.git,dist,build,vendor} -E "throw new|raise |return Err|panic\(" . | head -30Record each divergence with exact file counts and sample locations. Check git history for recent changes in minority variants to distinguish intentional modernizations from accidental deviations.
Completion criterion. The divergence catalog is recorded in .agents/state/s13n/divergences.md documenting file counts and sample snippets for every identified variant.
Phase 3. Resolve canonical variants
Resolve canonical patterns using the Precedence Hierarchy. When rank 1 and rank 2 answer the question, proceed directly to normalization.
When code patterns conflict and rank 1 or 2 does not specify a rule, present options to the user:
- State the concern concisely in one line.
- Present each variant with its file count and sample snippet.
- State the recommended variant with clear rationale.
- Identify counter-signals such as newer modules or recent commit ranges.
- Cap questions to at most four major divergences per round.
Completion criterion. A confirmed canonical variant is recorded in .agents/state/s13n/canonical.md with rank from the Precedence hierarchy and backing references.
Phase 4. Normalize
Execute normalization in two distinct stages:
- Mechanical normalization. Run project formatters and linters first:
# JS/TS
npx prettier --write . && npx eslint . --fix
# Python
ruff format . && ruff check . --fix
# Go
gofmt -w . && goimports -w .- Semantic normalization. Update call sites, imports, and error handling manually:
- Replace losing variants with the canonical pattern.
- Update every caller site across the codebase.
- Update associated test cases and documentation.
- Add an automated linter guard (such as
no-restricted-importsin ESLint orbanned-apiin Ruff) to prevent regressions.
Confine normalization edits to project source files; never modify generated files, lockfiles, or external vendor dependencies (vendor/, node_modules/, dist/).
Completion criterion. grep -rn "<deprecated-pattern>" --exclude-dir={node_modules,.git,dist,build,vendor} . returns zero matches, and the linter guard commit hash is recorded in .agents/state/s13n/guard-commit.txt.
Phase 5. Verify
Confirm the codebase is healthy and consistent:
- Project builds cleanly with zero errors.
- Test suite passes completely.
- Linter passes with new guard rules enabled.
- Repository search for the eliminated variant returns zero matches outside documented exemptions:
grep -rn "disallowed-pattern" --exclude-dir={node_modules,.git,dist,build,vendor} . && echo "FAIL" || echo "CLEAN"Completion criterion. Build command exits with zero, all tests pass, and grep returns zero matches for the deprecated pattern.
Common mistakes
| Title | Pattern description | Why it fails | Concrete fix |
| Selecting majority pattern automatically | Adopts the most frequent variant without checking git history | Destroys ongoing architectural migrations | Verify git history and confirm with user when ambiguous |
| Asking questions answered by docs | Asks the user a question already answered by AGENTS.md | Wastes user attention and invites documentation drift | Inspect convention documents first |
| Hand-editing formatting discrepancies | Manually adjusts whitespace to match formatter output | Introduces typos and contradicts formatter rules | Run project formatter directly |
| Modifying definitions without updating callers | Changes a definition and updates only the definition site | Breaks builds and unit tests | Search repository for all caller references |
| Omitting automated linter guard | Applies the canonical pattern without an automated guard | Divergence returns in subsequent pull requests | Add linter restriction rule to config |
| Normalizing third-party or generated directories | Applies normalization inside vendor/ or generated directories | Edits get overwritten on subsequent builds | Exclude vendor and build output paths |
Boundary isolation
Standardize syntax conventions and architectural patterns only. Do not alter functional domain logic, modify database schemas, or rename public API endpoints during normalization.
Quick audit checklist
Review this table before completing standardization tasks:
| Check | Passing condition |
| Hierarchy adherence | Canonical variant backed by enforced tool config, docs, or explicit sign-off |
| Call site coverage | Every caller updated across all repository source files |
| Automated guards | Linter or formatter rule configured to block reintroduced deprecated patterns |
| Boundary integrity | Vendor dependencies, lockfiles, and generated files remain untouched |
| Build and test | Full build exits clean and automated test suite passes with zero failures |
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

