Build with an agent
The repository includes a Jev Hooks skill that teaches coding agents the public SDK, the two execution models, and the server boundary.
Install the skill#
From your application directory:
npx skills add microchipgnu/jev-hooks --skill jev-hooksThis installs agent instructions; install the library separately:
npm install jev-hooksThe Skills CLI can configure skills for supported coding agents. You can also read or copy the skill folder on GitHub. Keep SKILL.md, references/ and assets/ together.
Frontend + backend#
React state → Jev hooks → POST /api/jev → server adapter → Jev
↑ ↓
React consumers ← dependent interpretations ← answersAsk your agent:
Use the jev-hooks skill to add composed semantic state to this React application. Keep provider credentials on the backend, connect the endpoint to our existing session authorization, and start with mock semantics. Show one input change propagating to two dependent components.
The skill shows how to wire:
- A stable
createJevClient({ endpoint: "/api/jev" })andJevProviderin React. useScore,useNoulanduseChoicewith semantic references passed into dependent inputs.SemanticScopeanduseAmbientto share meaning across components.createJevHandler({ adapter, authorize })in a Next.js route or Cloudflare Worker.- Your existing authentication and a server-only provider key or AI binding.
The included frontend and endpoint starter files use real imports. The local mock route works without credentials and denies production requests until you wire application authorization. Live provider selection stays explicit.
Frontend/backend instructions · React quickstart · Hosting guides
Backend only#
Event / request → deterministic facts → run(Program) → result → effects
↓
batched and dependent passesAsk your agent:
Use the jev-hooks skill to build a backend-only program. Compose a Score judgment with a dependent Noul judgment, run it with a mock adapter, and inspect the trace. Then show how to switch to OpenRouter using a server environment variable. No React needed.
The skill shows how to wire:
useInput,useScoreanduseNoulinside a synchronous, pure program.await run(Program, { input, adapter, trace: true })in your handler or job.- Reading server answer fields directly, such as
pressure.score. - Effects after the run resolves, and a new invocation for each new fact snapshot.
Backend instructions · Backend guide
Supported providers#
The skill covers OpenRouter, direct TypeSafe, Vercel AI Gateway and Cloudflare Workers AI. Hosting and model provider are independent choices. It also explains batching, projections, stale state, mock/live separation, and which caching or budget controls belong to your application.
The skill is distributed through GitHub; it does not require a new npm SDK release.