Content
86%Weight 40%Scale 1-5Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
A well-engineered skill body: fully executable code and commands, dense table-driven decision guidance, and excellent one-level-deep reference structure verified against the actual bundle. The only deductions are unquarantined version pins that will age (v0.16.x, since v0.12) and checklists that stop short of explicit verification steps.
Suggestions
Consolidate version-sensitive details ("Stack: v0.16.x", "lowercase since v0.12", "Node >= 18.18, TypeScript >= 5.0.4, viem >= 2") into a single version-pinning note or a compatibility section so future version bumps can be updated in one place and don't silently rot inline.
Add an explicit verification step to the scaffold checklist (e.g., "6. Run `ponder dev` and confirm the GraphQL endpoint at localhost:42069/graphql returns data before proceeding").
Add a short validate-then-retry loop for production deploys, building on the existing health-check and exit-code guidance (e.g., "if exit code 75, auto-restart; if 1, check logs, fix config, re-run `ponder start`").
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The body is lean and assumes competence: decision heuristics and gotchas are delivered as dense tables and one-line bullets (e.g., "Set `startBlock` to the contract deployment block, NOT `0`"), with almost no explanation of concepts Claude already knows. However, time-sensitive version numbers are inlined rather than quarantined ("Stack: v0.16.x", "All addresses are lowercase since v0.12", "Node >= 18.18, TypeScript >= 5.0.4"), which per the judging guidelines penalizes conciseness — keeping it at 4 rather than 5. | 4 / 5 |
Actionability | Fully executable, copy-paste-ready guidance throughout: complete minimal working example across all four files (ponder.config.ts, ponder.schema.ts, src/index.ts, src/api/index.ts), a CLI command table with exact flags and port, exit codes, env var names, and exact syntax for anti-pattern fixes (`primaryKey({ columns: [table.owner, table.spender] })`). This matches the level-5 anchor: specific code covering the common cases with concrete extra detail (e.g., `event.id` is a 75-digit string). | 5 / 5 |
Workflow Clarity | Six task checklists give clear, well-ordered sequences (scaffold, add contract, factory, custom API, multi-chain, deploy), and some validation checkpoints exist — health endpoints ("/ready (503 during backfill, 200 when caught up)"), exit codes ("75 = retryable, 1 = fatal"), and "then run `ponder dev`" for immediate feedback. It stays at 4 rather than 5 because the scaffold/add-contract checklists lack an explicit verify step (e.g., confirm GraphQL endpoint responds) and no validate-then-fix-then-retry loop is spelled out, leaving minor checkpoint gaps. | 4 / 5 |
Progressive Disclosure | The body is a genuine overview — quick start, CLI, heuristics, gotchas — with a Reference Navigation table mapping each task to one of seven reference files (config, schema, indexing, api, frontend, production, recipes), all of which exist in ./references/ and are one level deep with no nested forwarding. This matches the level-5 anchor of a clear overview with well-signaled single-level references; it is not level 4 because no content that belongs in a reference is inlined in the body. | 5 / 5 |
Total | 18 / 20 Passed |