Elysia Skill
The Elysia v2 skill teaches an agent to build, debug and migrate Elysia backends: validation, plugins, typed clients, deploy
- 71 ★ on the repository
- Last commit
Minimal access
Why this level
- The skill only gives instructions and references, while the agent runs type and route checks with project commands
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/elysia-skillDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewMinimal accessThe tool runs nothing and makes no network calls.
- The skill only gives instructions and references, while the agent runs type and route checks with project commands
This is third-party code. Review the repository files before installing.
What it does
The `elysiajs` skill guides Claude Code, Cursor and Codex through work with Elysia v2, a TypeScript backend framework. First the agent inspects `package.json`, the lockfile, the runtime and the app structure and keeps the project versions unless you ask for a migration. It then reads only the reference files the task needs and, after an edit, checks types and calls the affected route along with its rejection path. `SKILL.md` holds the rules people most often get wrong: options go before the handler, the result of a chain has to be kept so the type is not lost, hooks are registered before routes, shared plugins get a name and `seed` for deduplication, expected failures are returned through `status()` and `problem()`, types are inferred from TypeBox schemas, and `guard` schemas replace by default, so merging needs `schema: 'merge'`. The `references` folder holds 25 files by topic: `lifecycle`, `composition`, `validation`, `plugins`, `eden`, `websocket`, `openapi`, `testing`, `deploy`, `runtimes`, `migration` and integrations with Drizzle, Prisma, Better Auth, AI SDK and React Email. The skill describes version 2.0.0-rc.0 and newer and points to the documentation `llms.txt` as the source of truth.
Who it is for. Backend developers on Bun or Node.js who write APIs with Elysia and want the agent not to mix up hook order and inferred types.
Good fit when
- You need to add a route with TypeBox parameter validation and check its rejection path
- The project is on Elysia 1 and you need the version 2 differences from the `migration` file without upgrading dependencies
- The typed Eden client loses types after a plugin chain
- You need to wire up Drizzle or Prisma, Better Auth or React Email from a ready reference
- The app has to deploy on Node.js 22.18 or newer with the `@elysia/node` package
Not a fit when
- The project is not on Elysia: the skill fires only for Elysia and explicit requests about it
- You need the newest framework feature: the skill points to the docs and does not replace them
- You write a React or Vue frontend with no server side
- You need another backend framework such as Hono or Fastify
Example request
Add a GET /users/:id route to my Elysia app with numeric id validation and check its rejection pathLimitations
- The skill describes Elysia 2.0.0-rc.0 and newer and was checked against 2.0.0-beta.32, so installed types should be compared when they disagree.
- Elysia 1 uses the docs at `https://elysiajs.com/llms.txt` and version 2 uses `https://next.elysiajs.com/llms.txt`.
- Node.js needs Node 22.18 or newer and the `@elysia/node` package; WebSocket needs `elysia/websocket`.
- The repository has no README, so the skill layout is visible only from `SKILL.md` and the `references` files.
How to disable. Delete the `elysia` folder from the agent skills directory, for example `~/.claude/skills/`. The skill changes nothing in project code, so only your own work remains after removal.
FAQ
How do I install the Elysia skill?
Run `npx skills add elysiajs/skills` or copy the `elysia` folder from the repository into the agent skills directory. The repository does not document an install command; this is the general `skills` mechanism.
Which Elysia versions are supported?
It is written for 2.0.0-rc.0 and newer and checked against 2.0.0-beta.32. For version 1 it helps spot differences through the `migration` file but does not authorize an upgrade.
Does the skill replace the docs?
No, it points to the Elysia docs `llms.txt` and calls itself a guide to them.
What does the agent check after an edit?
Types and the affected route with its rejection path, following the `testing` file. The sample test uses Bun and opens no port.
Which integrations are covered?
Drizzle, Prisma, Better Auth, AI SDK and React Email, plus OpenAPI, WebSocket, Eden and deployment across several runtimes.
Discussion
No questions or reviews yet.
Related
SkillsThe official Payload CMS skill shipped inside the package: collections, fields, hooks, access control, queries and database adapters
A skill for Claude Code and Codex on direct-style Scala: Ox structured concurrency, Tapir, error handling and configuration.
Prisma 8 skill
prisma-8
The official Prisma 8 skill installed from your project's packages: data contract, migrations, queries and version upgrades
builder-skills: agent skills for Convex apps
builder-skills
17 skills that teach an agent to build Convex apps by the docs and run a project through a PRD, task.md and a changelog
A set of 14 skills for Java Spring Boot, from requirements analysis and code generation to tests, review and Docker deployment.
Three skills for TypeScript logging: review code and move to wide events, build an audit trail and analyze local logs
README in short
The repository has no README: the skill lives in the `elysia` folder with `SKILL.md`, `metadata.json` metadata and 25 reference files. `SKILL.md` holds the working order, essential rules, a minimal app with a test and links to the references.
README badge
Original SKILL.md
--- name: elysiajs description: Build, debug, or migrate Elysia v2 TypeScript backends with validation, plugins, typed clients, and deployment. Use for Elysia projects or explicit Elysia requests. --- # Elysia v2 ## Start here 1. Inspect `package.json`, the lockfile, runtime, and app structure. Keep existing versions and conventions unless the user requests a migration. 2. This skill describes **2.0.0-rc.0** or newer. For v1, use [migration](references/migration.md) to recognize differences, not as permission to upgrade. Check installed types when a different beta disagrees. 3. Read only the references the task needs. [Versions](references/versions.md) lists the source revision, package baselines, and verification limits. 4. Check types and exercise the affected route, including its rejection path. See [testing](references/testing.md). ## Essential rules - **Options precede the handler.** `.get(path, options, handler)`, `.get(path, handler)`, and `.get(path, staticValue)` are valid. - **Keep the returned type.** Chain calls or bind the result to a new variable. Reassigning `let app = new Elysia()` does not widen its inferred type. - **Order hooks before routes.** Parent hooks before `.use(child)` reach the child's routes. `onRequest` runs before routing and is the exception to registration order. See [lifecycle](references/lifecycle.md). - **Declare typed dependencies.** Each independently defined instance should `.use()` its providers. Parent runtime inheritance does not give a child those static types. See [composition](references/composition.md). - **Name shared plugins.** `name` and `seed` deduplicate hooks. Plugin factories still execute on each call. - **Return expected failures.** `status()` and `problem()` send ordinary responses. A returned `Error` enters error hooks and contributes to the route's return type. Thrown errors are absent from that inferred type. Explicit error - **Infer types from schemas.** Use `UnwrapSchema` or `UnwrapModels`. TypeBox 1.x has no schema `.static`. Keep handlers inline and pass plain values to services. - **Choose context lifetime.** `decorate` and `state` are shared. `derive` runs per request after validation, in the `beforeHandle` queue. - **Guard schemas override by default.** A route replaces the corresponding inherited schema. Use `schema: 'merge'` on the guard when both must apply. - **Register optional capabilities.** File MIME validation needs a detector. WebSockets need `elysia/websocket`. Node needs `@elysia/node` and Node 22.18 or newer. - **Always consult with an actual documentation** for the latest features, examples, and references. The skill is a guide to the documentation, not a replacement. For Elysia 1 use: https://elysiajs.com/llms.txt For Elysia 2 use: https://next.elysiajs.com/llms.txt ## Minimal app and test Use the project's test runner. This Bun example opens no port. ```ts