Agent skill
typescript-postcheck
Run post-implementation quality gates for TypeScript/JavaScript: type-checking, linting, and tests. Use after finishing an implementation or refactor to validate correctness and produce actionable diagnostics + minimal fixes.
Install this agent skill to your Project
npx add-skill https://github.com/shaowei-g/codex-skills/tree/main/skills/typescript-postcheck
SKILL.md
TypeScript Post-Implementation Check (Agent Skill)
Use this skill after implementation/refactoring is complete to ensure the codebase passes the core quality gates: TypeScript type checking, linting, and tests. Convert failures into actionable, minimal fix steps and re-run gates until everything passes.
Writing rules reference: Follow the code-writing conventions and standards defined in
skills/typescript-write/SKILL.md.
When to Use
- Right after finishing a feature implementation, before opening a PR
- After refactoring, to ensure no type boundary regressions
- After bug fixes, to confirm no new TS/lint/test failures
- When CI fails and you need a local/agent triage + fix loop
Autonomous Verification Workflow
- Do not read or modify files outside the project folder.
- Work autonomously in small, verifiable increments.
- Prefer targeted checks first, then full checks.
- Do not commit changes; leave commits to the user after review.
- After every fix, re-run the relevant gate(s) to confirm progress.
- When proposing or applying code changes, follow the writing rules in
skills/typescript-write/SKILL.md.
Gate Order (Fast → Slow)
- Type Check (required)
- Lint (required)
- Targeted Tests (required for touched areas)
- (Optional) Build/Bundle (if the repo requires it)
Rationale: type errors often cascade; fix the compilation surface first, then style rules, then behavior.
Default Commands (Prefer Repo Scripts)
Always prefer existing repo scripts; only fall back when missing.
1) Type Check (primary)
npm run typecheckpnpm -s run typecheckyarn -s typechecknpm run type-check-pure(if the repo uses this naming)
2) Lint
npm run lintnpm run lint -- --fix(or repo-specific flagging)
3) Tests
npm test- Targeted:
npm test -- <pattern>/jest <pattern>(per repo conventions)
4) Fallback Type Check (if no script exists)
npx tsc -p tsconfig.json --noEmit(or repo-specific tsconfig path)
Diagnostics Triage Strategy
When a gate fails:
-
Classify failures
- TypeScript:
TSxxxx, incompatible types, missing properties, implicit any, etc. - ESLint: rule violations, unused vars,
no-floating-promises, etc. - Tests: assertion failures, timeouts, mocks not aligned
- TypeScript:
-
Fix upstream blockers first
- Fix the first/root TypeScript error before chasing cascades.
- If multiple errors in one file: prioritize type declarations, exported APIs, return types, and generic constraints.
-
Minimal diffs
- Avoid drive-by refactors.
- Avoid new abstractions unless they clearly reduce repetition and improve correctness.
- Avoid
any; useunknown+ narrowing or a dedicated parsing layer if needed. - Ensure all code changes adhere to
skills/typescript-write/SKILL.md.
-
Re-run gates
- After each fix, re-run the same gate.
- Only proceed to the next gate when the current gate passes.
Type Boundary Rules (Must Enforce)
Treat these boundaries as untrusted:
- API responses
JSON.parse(...)/localStorageURLSearchParams/ query params- event payloads (DOM/custom events, message buses)
Approach:
- Use
unknownat the boundary - Narrow via runtime checks / validators / type guards
- Prefer explicit, readable failure modes over silent coercion
Anti-Patterns to Avoid
- Silencing failures with
any - Widening unions until they lose meaning just to appease the compiler
- Large unrelated changes to satisfy lint rules
- Moving all helpers to the bottom of the file by default (prefer proximity to usage)
Required Output Format (Deliverable)
Each run of this skill must output:
-
Commands executed (with pass/fail)
-
Failure summary:
- Top 3–10 most relevant diagnostics per gate (include file, line/col, TS code / ESLint rule)
-
Fix plan: an ordered, minimal step list
-
(If allowed to edit code) Minimal patch addressing only what is necessary, following
skills/typescript-write/SKILL.md -
Re-run results: until all gates pass or a clear external blocker is identified (missing deps, environment mismatch, etc.)
Suggested Checklist
- Run
typecheck(or repo-specific type-check script) - Fix until typecheck passes
- Run
lint(use--fixif appropriate) - Run targeted tests covering touched paths
- Confirm all gates pass, then deliver / open PR
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
ekoen-frontend-code-review
Production-grade code review for the eKoEN frontend codebase. Use when asked to review, audit, inspect, or harden eKoEN React/Next.js frontend code, pages, components, hooks, API clients, or state layers for bugs, performance bottlenecks, TypeScript safety issues, request inefficiency, state-management risks, memory leaks, rendering regressions, error-handling gaps, duplication, or maintainability problems, especially when a structured severity-ranked report with code locations, root causes, suggested fixes, and example refactors is required.
ekoen-backend.doc.route-error
Add HttpErrorRes responses to eKoEN backend routes when controllers can throw errors from app/util/errors/index.ts
conventional-commit-helper
Generate and validate Conventional Commit messages for semantic-release workflows. Use when a user asks to write a commit message, asks to commit changes, asks for commit type/scope selection, or asks to enforce Conventional Commits consistency.
codex-cli-subagent-transport
Use only when native subagent execution is unavailable and the caller needs one deterministic Codex CLI run with repo-local artifacts and a manifest-based result contract.
skill-usage-logger
All skill MUST use this logger to record usage events in NDJSON format.Log Codex skill usage events to NDJSON with safe concurrent appends.
Didn't find tool you were looking for?