From core-claude-plugin
Use when verifying code is production-ready. Runs build, lint, and test commands to check compilation, code quality, and test suite. Essential validation step for /build and /audit commands.
npx claudepluginhub metasaver/claude-marketplace --plugin core-claude-pluginThis skill uses the workspace's default tool permissions.
**Purpose:** Verify code is production-ready by running build, lint, and test commands
Runs multi-phase verification (build, types, lint, tests, security, diff) for JavaScript/TypeScript and Python projects. Invoke after changes or before PRs to generate quality report.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Share bugs, ideas, or general feedback.
Purpose: Verify code is production-ready by running build, lint, and test commands
Trigger: After code changes, before deployment or sign-off
Input: Working directory, package manager (pnpm)
Output: { passed: boolean, build_result, lint_result, test_result, failures[] }
1. Verify working directory and package manager
pnpm --version)2. Run pnpm build
pnpm build (or pnpm build --filter=... if scoped)3. Run pnpm lint
pnpm lint4. Run pnpm test
pnpm test (or pnpm test --run for CI mode)5. Aggregate results
Success Case:
{
"passed": true,
"build_result": {
"status": "pass",
"duration": "12s"
},
"lint_result": {
"status": "pass",
"warnings": 0
},
"test_result": {
"status": "pass",
"tests": "42 passed"
},
"failures": []
}
Failure Case:
{
"passed": false,
"build_result": {
"status": "fail",
"error": "TypeScript compilation failed",
"stderr": "src/types.ts:45: error TS2322: Type 'string' not assignable to type 'number'"
},
"lint_result": {
"status": "pass"
},
"test_result": {
"status": "fail",
"error": "2 tests failed",
"stderr": "FAIL src/__tests__/auth.spec.ts"
},
"failures": [
"Build failed: TypeScript compilation",
"Tests failed: 2 tests in src/__tests__/auth.spec.ts"
]
}
| Scenario | Action |
|---|---|
| pnpm not found | Return error, ask user to install pnpm |
| Wrong working dir | Return error, ask user to run from monorepo root |
| Build fails | Stop, return build error details for fixing |
| Lint warnings only | Continue (non-blocking), log warnings |
| Tests fail | Continue (collect results), return test error list |
| Unknown error | Capture stderr, return for debugging |
pwd must show root)Called by:
/build command (validation phase)/audit command (quality validation)validation-phase skill (before reporting)Calls: pnpm scripts (no subagents)
Next step: Report results to calling agent for decision
Input:
cwd: "/home/user/monorepo"
package_manager: "pnpm"
Execution:
$ cd /home/user/monorepo
$ pnpm build
→ ✓ Build succeeded (12s)
$ pnpm lint
→ ✓ Lint passed
$ pnpm test --run
→ ✓ 42 tests passed
Output:
{
"passed": true,
"build_result": { "status": "pass", "duration": "12s" },
"lint_result": { "status": "pass", "warnings": 0 },
"test_result": { "status": "pass", "tests": "42 passed" },
"failures": []
}
| Setting | Value | Rationale |
|---|---|---|
| User | root | Monorepo root required |
| Timeout | 5 minutes max | Allow large test suites |
| Fail-fast | No (collect all) | Show all issues in one pass |
| Format | JSON output | Machine-readable for agents |