AGENT SKILL

ln-740-quality-setup

Sets up linters, pre-commit hooks, and test infrastructure. Use when adding code quality tooling to a project.

License 许可
MIT
最近更新
2026-06-15
Stars
★ 2
Forks
1

01 前言 Front Matter

name
ln-740-quality-setup
license
MIT
description
Sets up linters, pre-commit hooks, and test infrastructure. Use when adding code quality tooling to a project.

02 资源文件 3

03 SKILL.md 正文

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

Trigger Action
After ln-720-structure-migrator completes Automatic delegation from ln-700
Manual quality setup needed Invoke directly with project path
Existing project needs quality tools Run with existing config detection

Workflow Overview

Phase Action Output
1 Stack Detection Identified technologies
2 Existing Config Check Skip/merge/replace decisions
3 Parallel Delegation Worker invocations
4 Verification Working quality pipeline

Phase 1: Stack Detection

Detect project technologies to determine which quality tools to configure.

Detection Rules:

File Pattern Technology Linter Stack
package.json + tsconfig.json TypeScript/React ESLint + Prettier
*.csproj or *.sln .NET editorconfig + Roslyn
pyproject.toml or requirements.txt Python Ruff
Multiple detected Mixed Configure 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:

Technology Config Files
TypeScript eslint.config.*, .prettierrc*, tsconfig.json
.NET .editorconfig, Directory.Build.props
Python ruff.toml, pyproject.toml [tool.ruff]
Pre-commit .husky/, .pre-commit-config.yaml
Tests vitest.config.*, pytest.ini, *.Tests.csproj

Decision Matrix:

Existing Config Action Confirmation
None found Create from template No
Exists but incomplete Extend to match template No
Exists and matches template Skip Inform 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:

Check TypeScript Python .NET
Lint ESLint ruff check dotnet format --verify-no-changes
Format Prettier ruff format --check dotnet format
Type check tsc --noEmit mypy Roslyn (build)
Import boundaries depcruise lint-imports --
Unused deps knip deptry --
Dead code knip vulture --
Vulnerability scan npm audit pip-audit --
Unified script bash scripts/lint.sh bash scripts/lint.sh bash scripts/lint.sh
Tests npm test pytest dotnet test
Hooks Create test commit Create test commit Create 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.
Phase Worker Context
3a ln-741-linter-configurator Shared (Skill tool) — ESLint/Prettier, editorconfig, Ruff
3b ln-742-precommit-setup Shared (Skill tool) — Husky, lint-staged, commitlint
3c ln-743-test-infrastructure Shared (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

File Purpose
stack_detection.md Detailed detection rules
verification_checklist.md Full verification checklist

Error Handling

Error Cause Resolution
No stack detected Empty project Ask user for intended stack
Worker failed Missing dependencies Install prerequisites, retry
Verification failed Config error Check specific tool output, fix
Hooks not working Git not initialized Run git init first

Version: 3.0.0 Last Updated: 2026-03-18

04 同仓库更多 Skills

vitalikpestov
vitalikpestov/Skills-Catalog

solana-dev

Use when user asks to "build a Solana dapp", "write an Anchor program", "create a token", "debug Solana errors", "set up wallet connection", "test my Solana program", "deploy to devnet", or "explain Solana concepts" (rent, accounts, PDAs, CPIs, etc.). End-to-end Solana development playbook covering wallet connection, Anchor/Pinocchio programs, Codama client generation, LiteSVM/Mollusk/Surfpool testing, and security checklists. Integrates with the Solana MCP server for live documentation search. Prefers framework-kit (@solana/client + @solana/react-hooks) for UI, wallet-standard-first connection (incl. ConnectorKit), @solana/kit for client/RPC code, and @solana/web3-compat for legacy boundaries.

开发工程师测试与质量前端开发
★ 2
vitalikpestov
vitalikpestov/Skills-Catalog

generating-trading-signals

Generate trading signals using technical indicators (RSI, MACD, Bollinger Bands, etc.). Combines multiple indicators into composite signals with confidence scores. Use when analyzing assets for trading opportunities or checking technical indicators. Trigger with phrases like "get trading signals", "check indicators", "analyze for entry", "scan for opportunities", "generate buy/sell signals", or "technical analysis".

★ 2
vitalikpestov
vitalikpestov/Skills-Catalog

prediction-monitor

Prediction Monitor - Auto-activating skill for ML Deployment. Triggers on: prediction monitor, prediction monitor Part of the ML Deployment skill category.

★ 2
vitalikpestov
vitalikpestov/Skills-Catalog

strategy-advisor

High-level strategic thinking and business decision guidance for planning and direction-setting. Use when: making strategic decisions, evaluating business options, setting direction, analyzing trade-offs, or when user mentions strategy, business planning, competitive analysis, or long-term planning.

★ 2
vitalikpestov
vitalikpestov/Skills-Catalog

app-paywall-pilot

Design, audit, debug, and implement App Store-compliant mobile paywalls, subscription flows, pricing screens, trials, offers, feature gates, and subscription lifecycle UX. Use when the user asks to audit my paywall, fix App Store 3.1.2 rejection, improve trial-to-paid, choose plans/prices/trials, review RevenueCat/Adapty/Apphud/Superwall setup, calculate LTV/ROAS, or build paywall implementation.

设计师视觉设计
★ 2
vitalikpestov
vitalikpestov/Skills-Catalog

figma

Use the Figma MCP server to fetch design context, screenshots, variables, and assets from Figma, and to translate Figma nodes into production code. Trigger when a task involves Figma URLs, node IDs, design-to-code implementation, or Figma MCP setup and troubleshooting.

设计师Skill与智能体开发
★ 2