jev-pong

Designs and validates paddle-defense pong courts in pong.json for the OpenHarness viewer.

465|41|Updated Aug 4, 2026
One-click install
npx skills add https://github.com/autonomous-ai/openharness --skill jev-pong-autonomous-ai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: jev-pong
Source: https://github.com/autonomous-ai/openharness/tree/main/store/agents/jev-pong/skills/pong
Command: npx skills add https://github.com/autonomous-ai/openharness --skill jev-pong-autonomous-ai

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Tuning a paddle-defense simulation by hand is guesswork: you cannot tell whether a court is too easy, too hard, or produces a natural rally arc without a structured way to edit, validate, and observe it. This Skill gives you a repeatable loop for shaping pong.json, verifying it, and judging rally quality in the OpenHarness viewer. ## Core Features & Use Cases - Court configuration: Edit pong.json fields such as title, courtW/courtH, speed, maxSpeed, accel, and a style line that steers Jev's paddle strategy, with live updates in the viewer. - Schema validation: Run node "$JEV_DSH/toolchain/check.mjs" to reject invalid courts (missing title, out-of-range values like speed 1..60 or stepMs 30..2000) and print the pace at which the paddle gets outrun. - Direct model evaluation: Use toolchain/jev.mjs to ask Jev which paddle move keeps a rally alive for a given state, with a deterministic mock when TYPESAFE_API_KEY is unset. - Use Case: Raise speed and accel, re-run the checker, then watch the viewer to confirm rallies shorten and the miss count rises instead of the paddle never dropping the ball. ## Quick Start Ask the agent to tune pong.json so Jev holds a few returns before the accelerating ball slips past, then validate the court with the check script.

Frequently Asked Questions about jev-pong

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I validate a pong.json court configuration?

Run node "$JEV_DSH/toolchain/check.mjs" from the workspace to validate pong.json. It returns non-zero for invalid courts, such as a missing title or values outside allowed ranges like speed 1..60 or stepMs 30..2000, and prints the pace at which the paddle is outrun.

How do I tune pong ball speed and acceleration for balanced rallies?

Edit speed, accel, and maxSpeed in pong.json and watch the rally in the viewer. Raising speed or accel should shorten rallies and raise the miss count; a good court lets Jev hold a few returns before the accelerating ball slips past.

Can I query the Jev model without an API key?

Yes, toolchain/jev.mjs falls back to a deterministic mock when TYPESAFE_API_KEY is not set. Set the key to evaluate paddle move decisions against the live Jev model instead.

Why does the pong court validation script fail?

The check script fails when pong.json has no title or contains values outside their allowed ranges, such as speed outside 1..60 or stepMs outside 30..2000. Fix the offending fields and re-run the script before considering the court done.

What are the limitations of automated pong court validation?

The check script only verifies schema and value ranges; it cannot judge rally quality. You still need to watch the viewer to confirm Jev holds low speeds comfortably, misses more as pace rises, and responds to the style line.