project-lint
Runs the real package-local verification commands needed to ensure agent changes are type-safe, buildable, and lint-clean where those checks are actually defined.
| Name | project-lint |
|---|---|
| Path | project-lint |
| Version | 1.0.0 |
| Origin | local |
| Source | SkillHub |
| Author | seekthought |
| Project | citado |
| Tags | lint code-quality verification citado |
| License | MIT |
Install
skillctl install -r skillhub project-lint
Description:
Use the real commands declared in each package's package.json. The goal is to verify that agent changes have no type errors, can compile successfully, and pass lint checks without inventing unsupported commands.
Allowed Directories:
packages/fe (Frontend)
packages/viewer-core (Viewer shared core)
packages/viewer-image (Image viewer plugin)
packages/viewer-pdf (PDF viewer plugin)
packages/viewer-gds (GDS viewer plugin)
packages/svc (Service/Backend)
Constraints:
Strictly Prohibited: Do not run these commands in the project root or any other directories.
Execution: You must cd into the target directory before running the commands.
Command Source of Truth: Prefer the exact
pnpm run ...script declared in that package's package.json. Do not replace it with an equivalentpnpm exec ...command unless this skill explicitly says so.Scope: Run checks only for the package(s) touched by the change. If both frontend and backend were modified, validate both packages separately.
Workflow & Commands:
packages/fe
- Full Gate:
pnpm run check
packages/fe/package.json defines check as the package-local gate and it currently runs lint, Prettier compatibility, and the production build (which already includes typecheck and declaration build).
packages/viewer-core
- Full Gate:
pnpm run check
packages/viewer-core/package.json defines check as lint + build, where build is the package's tsc --noEmit compile/type gate.
packages/viewer-image
- Full Gate:
pnpm run check
packages/viewer-image/package.json defines check as lint + build, where build is the package's tsc --noEmit compile/type gate.
packages/viewer-pdf
- Full Gate:
pnpm run check
packages/viewer-pdf/package.json defines check as lint + build, where build is the package's tsc --noEmit compile/type gate.
packages/viewer-gds
- Full Gate:
pnpm run check
packages/viewer-gds/package.json now defines check as lint + build, where build is the package's tsc --noEmit compile/type gate.
packages/svc
- Full Gate:
pnpm run check
packages/svc/package.json now defines check as lint + build:ts, where build:ts remains the package-local TypeScript compile gate.
Success Criteria:
- Zero Exit Code: Every command that this skill instructs the agent to run must return
exit code 0. - Frontend App Gate: For changes in
packages/fe, the work is not complete untilpnpm run checkpasses. - Viewer Package Gate: For changes in
packages/viewer-core,packages/viewer-image,packages/viewer-pdf, orpackages/viewer-gds, the work is not complete until each touched package'spnpm run checkpasses in its own directory. - Backend Gate: For changes in
packages/svc, the work is not complete untilpnpm run checkpasses. - No Root Shortcut: Do not replace these package-local checks with root-level aggregate scripts when verifying a task for this skill.
- Self-Healing: If any command fails:
- Capture the full error log.
- Locate the source file and line number causing the issue.
- Analyze and apply a fix.
- Re-run the specific failed command until it passes.