Verify that code follows jagreehal-claude-skills patterns (fn-args-deps, validation, result types, etc.)
Analyzes your codebase against jagreehal-claude-skills patterns, identifying violations in function structure, validation, error handling, and observability. Use this after implementing features to ensure architectural consistency and catch anti-patterns before they reach production.
/plugin marketplace add jagreehal/jagreehal-claude-skills/plugin install jagreehal-claude-skills@jagreehal-marketplaceAnalyze the codebase and verify adherence to jagreehal-claude-skills patterns.
Check all business logic functions for:
fn(args, deps)Violations to find:
**/infra/** directlyCheck for:
Violations to find:
Check for:
Result<T, E>createWorkflow() for compositionstep.try() bridges throwing codestep.fromResult() for Result-returning third-party codeViolations to find:
Check for:
trace() wrapper on business functionsViolations to find:
# String interpolation in logs
grep -rn "logger\.\w*\(\`" src/
grep -rn "logger\.\w*\(\".*\$" src/
# Missing trace wrapper
grep -rn "async function" src/domain/ | grep -v "trace("
Check for:
Violations to find:
# Retry logic inside functions
grep -rn "while.*attempt\|retry\|backoff" src/domain/
# Missing timeouts
grep -rn "await.*fetch\|axios\|http" src/ | grep -v "timeout"
Check for:
Violations to find:
# Reading env during requests
grep -rn "process\.env\." src/domain/
# Secrets in env
grep -rn "API_KEY\|SECRET\|PASSWORD" .env
Verify tsconfig.json has:
noUncheckedIndexedAccess: trueexactOptionalPropertyTypes: trueverbatimModuleSyntax: trueerasableSyntaxOnly: truenoUncheckedSideEffectImports: true@total-typescript/ts-reset installedVerify eslint.config.mjs has:
no-restricted-imports blocking infra importsprefer-object-params rule enabled'error' not 'warn'Check for:
.test.ts, .test.int.ts)Violations to find:
# vi.mock usage
grep -rn "vi\.mock(" src/
# Weak assertions
grep -rn "toBeDefined()\|toBeTruthy()" src/**/*.test.ts
Check for:
Check:
ls load-tests/
# Should see: smoke.js, load.js, stress.js
Generate a report with:
# Type check
npm run type-check
# Lint
npm run lint
# Tests pass
npm run test
# Check for pattern violations
grep -rn "throw " src/domain/
grep -rn "vi\.mock(" src/
grep -rn "from.*infra" src/domain/