mcpField
L
ln-740-quality-setup

ln-740-quality-setup

github.com/levnikolaevichTesting & quality584372 installsUpdated 2d ago
Repository

About ln-740-quality-setup

A project-bootstrap coordinator skill that detects TypeScript/React, .NET, and Python stacks, checks existing quality configurations, and delegates setup to specialized workers. It is for configuring and verifying a project's linting, formatting, testing, and related quality tooling while preserving existing user configurations.

Key features

  1. 01Detects TypeScript/React, .NET, and Python stacks
  2. 02Checks existing quality configuration files
  3. 03Delegates setup to specialized workers
  4. 04Verifies lint, format, type-check, and test commands
  5. 05Preserves existing configurations unless confirmed

Use cases

  1. 01Setting up quality tooling after project structure migration
  2. 02Adding quality tools to an existing project
  3. 03Checking and extending incomplete configurations
  4. 04Verifying a project's quality pipeline

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-740-quality-setup

After installing, type/ln-740-quality-setupin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
meta_analysis_protocol.md
stack_detection.md
verification_checklist.md

Details

From the project README

Paths: File paths (references/, ../ln-*) are relative to this skill directory.

ln-740-quality-setup

Type: L2 Domain Coordinator Category: 7XX Project Bootstrap Parent: ln-700-project-bootstrap

Coordinates code quality tooling configuration for the project.


Purpose & Scope

Does:

  • Detects project technology stack (TypeScript/React, .NET, Python)
  • Checks for existing quality configurations
  • Delegates to specialized workers for each quality aspect
  • Verifies final configuration works correctly

Does NOT:

  • Generate configuration files directly (workers do this)
  • Modify source code
  • Run in isolation (requires ln-720 structure first)

When to Use

TriggerAction
After ln-720-structure-migrator completesAutomatic delegation from ln-700
Manual quality setup neededInvoke directly with project path
Existing project needs quality toolsRun with existing config detection

Workflow Overview

PhaseActionOutput
1Stack DetectionIdentified technologies
2Existing Config CheckSkip/merge/replace decisions
3Parallel DelegationWorker invocations
4VerificationWorking quality pipeline

Phase 1: Stack Detection

Detect project technologies to determine which quality tools to configure.

Detection Rules:

File PatternTechnologyLinter Stack
package.json + tsconfig.jsonTypeScript/ReactESLint + Prettier
*.csproj or *.sln.NETeditorconfig + Roslyn
pyproject.toml or requirements.txtPythonRuff
Multiple detectedMixedConfigure all detected

Actions:

  1. Glob for technology indicators
  2. Build technology list
  3. Log detected stack to user

Phase 2: Existing Configuration Check

Before delegating, check what configurations already exist.

Config Files to Check:

TechnologyConfig Files
TypeScripteslint.config.*, .prettierrc*, tsconfig.json
.NET.editorconfig, Directory.Build.props
Pythonruff.toml, pyproject.toml [tool.ruff]
Pre-commit.husky/, .pre-commit-config.yaml
Testsvitest.config.*, pytest.ini, *.Tests.csproj

Decision Matrix:

Existing ConfigActionConfirmation
None foundCreate from templateNo
Exists but incompleteExtend to match templateNo
Exists and matches templateSkipInform user

Completeness Check (Python): evaluate against ln-741's Completeness Check table (7 aspects: Ruff rules, per-file-ignores, advanced settings, MyPy strict, advanced tools, lint script, editorconfig). If ANY aspect is incomplete, delegate to ln-741 with instruction to EXTEND (not replace).


Phase 3: Parallel Delegation

Invoke workers for each quality aspect. Workers can run in parallel as they configure independent tools.

Delegation Order:

ln-740 (this)
    |
    +---> ln-741-linter-configurator
    |         - ESLint/Prettier (TypeScript)
    |         - editorconfig/Roslyn (.NET)
    |         - Ruff (Python)
    |
    +---> ln-742-precommit-setup
    |         - Husky + lint-staged (Node.js)
    |         - pre-commit framework (Python)
    |         - commitlint
    |
    +---> ln-743-test-infrastructure
              - Vitest (TypeScript)
              - xUnit (.NET)
              - pytest (Python)

Pass detected stack and existing configs to workers via direct Skill tool invocation. For Python: instruct ln-741 to apply full quality stack per its Completeness Check table.

Invocations:

Skill(skill: "ln-741-linter-configurator", args: "{projectPath}")
Skill(skill: "ln-742-precommit-setup", args: "{projectPath}")
Skill(skill: "ln-743-test-infrastructure", args: "{projectPath}")

Phase 4: Verification

After all workers complete, verify the quality pipeline works.

Verification Steps:

CheckTypeScriptPython.NET
LintESLintruff checkdotnet format --verify-no-changes
FormatPrettierruff format --checkdotnet format
Type checktsc --noEmitmypyRoslyn (build)
Import boundariesdepcruiselint-imports--
Unused depsknipdeptry--
Dead codeknipvulture--
Vulnerability scannpm auditpip-audit--
Unified scriptbash scripts/lint.shbash scripts/lint.shbash scripts/lint.sh
Testsnpm testpytestdotnet test
HooksCreate test commitCreate test commitCreate test commit

On Failure:

  1. Log specific failure
  2. Suggest fix or re-run specific worker
  3. Do NOT mark as complete until verification passes

Critical Rules

RULE 1: Never overwrite existing user configurations without explicit confirmation.

RULE 2: Workers run AFTER stack detection - do not invoke workers without knowing the stack.

RULE 3: Verification phase is MANDATORY - quality setup is not complete until tools run successfully.

RULE 4: eslint-config-prettier is REQUIRED when both ESLint and Prettier are configured.


TodoWrite format (mandatory):

- Invoke ln-741-linter-configurator (pending)
- Invoke ln-742-precommit-setup (pending)
- Invoke ln-743-test-infrastructure (pending)
- Verify quality pipeline (pending)

Worker Invocation (MANDATORY)

Host Skill Invocation: Skill(skill: "...", args: "...") is mandatory delegation.

  • Claude: call the Skill tool exactly as shown.
  • Codex: if no Skill tool exists, locate the named skill in available skills, read its SKILL.md, treat args as $ARGUMENTS, execute that skill workflow, then return here with its result/artifact.
  • Do not inline worker logic or mark the worker complete without executing the target skill.
PhaseWorkerContext
3aln-741-linter-configuratorShared (Skill tool) — ESLint/Prettier, editorconfig, Ruff
3bln-742-precommit-setupShared (Skill tool) — Husky, lint-staged, commitlint
3cln-743-test-infrastructureShared (Skill tool) — Vitest, xUnit, pytest

All workers: Invoke via Skill tool — workers see coordinator context.

Definition of Done

  • All detected technology stacks have appropriate quality tools
  • Existing configurations preserved or backed up
  • Lint command runs without errors
  • Format command runs without errors
  • Test command runs and sample tests pass
  • Pre-commit hooks trigger on test commit
  • User informed of all installed tools and commands

Phase 5: Meta-Analysis

Optional reference: load references/meta_analysis_protocol.md only when the user asks for post-run meta-analysis or protocol-formatted run reflection.

Skill type: execution-orchestrator. When requested, analyze this session per protocol §7. Output per protocol format.


Reference Files

FilePurpose
stack_detection.mdDetailed detection rules
verification_checklist.mdFull verification checklist

Error Handling

ErrorCauseResolution
No stack detectedEmpty projectAsk user for intended stack
Worker failedMissing dependenciesInstall prerequisites, retry
Verification failedConfig errorCheck specific tool output, fix
Hooks not workingGit not initializedRun git init first

Version: 3.0.0 Last Updated: 2026-03-18

Comments

Markdown supported