CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

ponder

Build EVM blockchain data indexers using Ponder (ponder.sh) - an open-source TypeScript framework for indexing smart contract events, transactions, and traces into custom database schemas with type-safe APIs. Use when the user mentions ponder, blockchain/EVM indexing, onchain data pipelines, subgraph replacement, or wants to index smart contract events into a queryable database.

95

1.25x
Quality

93%

Does it follow best practices?

Impact

98%

1.25x

Average score across 5 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

The canonical home for this skill is hefgi/ponder

SKILL.md
Quality
Evals
Security

Quality

Content

86%Weight 40%Scale 1-5

Reviews 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`").

DimensionReasoningScore

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

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is exemplary: it states concrete capabilities in third person, gives a clear 'what' plus an explicit 'Use when' clause with natural trigger phrasing including synonyms (blockchain/EVM/onchain, subgraph replacement), and occupies a distinct niche with essentially no conflict risk. No fluff, buzzwords, or over-claims are present.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions: "Build EVM blockchain data indexers", "indexing smart contract events, transactions, and traces into custom database schemas with type-safe APIs". Like the level-5 anchor ('Extract text and tables from PDF files, fill forms, merge documents, convert pages to images'), it enumerates several specific operations with a clear data target, and it is not below level 5 because nothing concrete is padded or glossed over.

5 / 5

Completeness

Both questions are explicitly answered: the "what" ("Build EVM blockchain data indexers using Ponder (ponder.sh)... index[ing] smart contract events, transactions, and traces into custom database schemas with type-safe APIs") and the "when" ("Use when the user mentions ponder, blockchain/EVM indexing, onchain data pipelines, subgraph replacement, or wants to index smart contract events"). This exactly matches the level-5 anchor pattern; level 4 would mean the 'when' was only roughly sketched, which it is not.

5 / 5

Trigger Term Quality

Trigger terms are natural and cover synonyms across the domain: "ponder", "blockchain/EVM indexing", "onchain data pipelines", "subgraph replacement", "index smart contract events into a queryable database". This mirrors the level-5 anchor's comprehensive synonym coverage (blockchain, EVM, onchain all present), and a user needing this skill would naturally say these phrases; level 4 would require clearly missing common variations, which is not the case.

5 / 5

Distinctiveness Conflict Risk

The niche is unambiguous: a named framework (Ponder/ponder.sh) with a specific job (EVM indexing into custom schemas). Triggers like "ponder" and "subgraph replacement" would not fire for unrelated skills, matching the level-5 anchor ('Clear niche with distinct triggers; minimal conflict risk'). The only conceivable overlap is another blockchain-indexing skill, which the explicit tool name disambiguates.

5 / 5

Total

20

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

hefgi/dotfiles

Path

.agents/skills/ponder/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.