Build with Jev / Coding agents

TypeSafe's agent skill for Claude Code, Codex, and other coding agents.

typesafe-ai is TypeSafe's official agent skill, published by TypeSafe AI in typesafe-ai/skills ↗ under MIT. It is one instruction file that teaches your coding agent to design and write TypeSafe code: which judgments to ask Jev for, which primitive fits, and where to read the current docs.

It does not call Jev itself. Installing it adds no jev command, MCP server, or API client, and needs no API key. The code your agent writes with it calls the TypeSafe API, and that code needs your key.

Claude Code · plugin
claude plugin marketplace add typesafe-ai/skills
claude plugin install typesafe@typesafe-ai
Codex, Cursor, and other agents · skills.sh
npx skills add typesafe-ai/skills --skill typesafe-ai

The skills.sh installer asks which agents to install for and defaults to the current project; add -g for every project. Use one method per agent; TypeSafe warns that mixing them leaves duplicate copies. TypeSafe names Claude Code and Codex. Cursor and the other agents come from the installer's own list.

Which install to use

If youUseWhy
Only use Claude CodeThe Claude Code pluginTypeSafe's first-listed path. Installs once for your user, updates through Claude's plugin system, and is invoked as /typesafe:typesafe-ai.
Use Codex, Cursor, or several agentsnpx skills addWrites one portable copy that several agents read, and can link it into Claude Code too. There is no Codex plugin in the repository; Codex gets the portable skill.
Want the skill committed with a repo for your teamnpx skills add (project scope, the default)Files land inside the project, with a skills-lock.json recording the source and hash.
Can't run either installerManual copyCopy the whole skills/typesafe-ai ↗ directory (currently SKILL.md and LICENSE) into your agent's skills directory.

skills.sh also shows a URL form, npx skills add https://github.com/typesafe-ai/skills --skill typesafe-ai. It resolves to the same repository and skill as the short form TypeSafe documents.

Where it installs

The two installers have opposite defaults. The Claude plugin installs for your user account; skills.sh installs into the current project. We ran each in a throwaway directory to confirm where the files land.

MethodDefault scopeFiles land in
Claude Code pluginUser (every project). --scope project or local to narrow it.Claude Code's plugin cache under ~/.claude/plugins/
skills.shProject.agents/skills/typesafe-ai/ for Codex and Cursor. Claude Code gets .claude/skills/typesafe-ai: a symlink to that copy, or a plain copy if Claude Code is the only agent you pick.
skills.sh with -gUser (every project)The same layout under your home directory: ~/.agents/skills/typesafe-ai/ and ~/.claude/skills/typesafe-ai.
skills.sh · non-interactive options
# Pick agents up front instead of at the prompt
npx skills add typesafe-ai/skills --skill typesafe-ai -a codex

# Install for your user account (all projects) instead of this project
npx skills add typesafe-ai/skills --skill typesafe-ai -g

Tested with skills 1.7.0 and Claude Code 2.1.258. -a accepts several agents (-a codex claude-code cursor); -y skips the prompts.

Claude Code vs. Codex

TypeSafe names both on its agent skill page ↗. The instructions are the same file either way: the plugin copy and the skills.sh copy of SKILL.md are byte-identical to the repository at v0.5.7. Packaging and invocation differ.

AspectClaude CodeCodex
InstallPlugin typesafe@typesafe-ai (or skills.sh, choosing Claude Code)npx skills add, choosing Codex
PackagePlugin typesafe 0.5.7 containing skill typesafe-aiThe bare skill directory
Explicit use/typesafe:typesafe-ai for the plugin. A skills.sh copy is a plain skill, so it is /typesafe-ai.Type $ to mention typesafe-ai, or pick it from /skills
Automatic useCan load it when a task matches the skill's descriptionCan load it when a task matches the skill's description
Picking up updatesRestart or run /reload-pluginsDetected automatically; restart if not

Naming it in the prompt (“use the TypeSafe skill”) is TypeSafe's suggestion for any agent. Invocation syntax comes from Claude Code's and OpenAI's skill docs; other agents have their own.

What your agent learns

The whole skill is SKILL.md ↗, about 150 lines. Claude Code's inventory for the plugin shows one skill and no agents, hooks, MCP servers, or LSP servers. It estimates about 170 tokens always in context (the description) and about 2.3k when the skill is invoked.

01Read the live docs first. The skill calls TypeSafe's docs the source of truth and points the agent at docs.typesafe.ai/llms.txt and the Markdown versions of the pages. If the agent can't reach the web, it should fall back to installed SDK types and say so rather than guess.
02Work backward from behavior. Start from what the app should show, select, change, or hand off, then find the judgments that requires. Rules, calculations, exact lookups, and execution stay in ordinary code.
03Use known patterns. Route and fill arguments, select instead of generate, judge retrieved evidence, score once and reuse the data, verify and escalate. Each points to a cookbook.
04Pick the primitive by meaning. Choice for one of a set, Noul for whether a condition holds (one per label when several can apply), Score for a position on ordered levels.
05Write narrow questions. Enough state to answer, the judgment in instructions, the answers in criteria, a no-match outcome when nothing may fit. Question IDs are never sent to the model.
06Compose and verify. Ask independent questions over the same state in one request. Set thresholds on your own data, since confidence is not correctness. Keep API credentials server-side.

What it is not

It isn'tWhat that means
A jev command or CLINothing is added to your shell. The install is a Markdown file and a license.
An MCP server or agent toolYour agent gains no tool that sends a judgment to Jev. Nothing new appears in /mcp.
An SDKIf the agent builds an integration, it adds TypeSafe's SDK or HTTP calls to your project like any other dependency. See the TypeScript SDK guide.
A local Jev or model weightsJev still runs on TypeSafe's API or a provider such as OpenRouter. See open source & self-hosting.
A replacement for Claude or CodexJev can't power a coding agent. TypeSafe's coding-agents page ↗ says so directly: use your agent as usual to write code that uses Jev.

Do you need an API key?

Not to install the skill, and not for the agent to design or write TypeSafe code with it. You need one when that code runs, or if you want the agent to try cheap test queries while it works. TypeSafe's own example exports the key as TYPESAFE_API_KEY and tells the agent to use it. Keys come from the TypeSafe console ↗; for providers, limits, and request setup, see API & access.

After installing

Ask for an outcome, not for the skill. TypeSafe's README uses this example:

Use TypeSafe to route incoming support tickets by department, with human review for uncertain decisions.

Prompts that fit what the skill is built to do:

“Using the TypeSafe skill, find places in this repo where we prompt an LLM and parse JSON back, and say which could become typed judgments.”
“Use the TypeSafe skill to decide whether tagging these tickets needs one Choice or a Noul per label.”
“Use the TypeSafe skill to design a judgment for whether the agent should call this tool, with a fallback when it's unsure.”
“Using the TypeSafe skill and the key in TYPESAFE_API_KEY, run a few test queries and propose changes from the best results.”

Expect the agent to read TypeSafe's docs before it writes code. Review the questions and thresholds more closely than the plumbing. TypeSafe suggests keeping them in one file and notes that agents aren't great at writing questions. For worked designs, see the classification and model routing task pages.

Official skill vs. community tools

Searches for Jev with Claude Code or Codex also turn up independent projects that call Jev directly: MCP servers, command-line tools, and skills that shell out to a CLI. They're a different kind of thing, not an alternative install of TypeSafe's skill. We don't list or vet them here.

AspectOfficial TypeSafe skillCommunity executable tools
PublisherTypeSafe AI (typesafe-ai GitHub org)Independent developers
InstallsInstructions onlyA binary, package, or server, sometimes with its own skill
Calls Jev during your sessionNoYes; that's their purpose
CredentialsNone to installA key or account set up on the tool
In TypeSafe's docsYes, with install instructionsNo. The docs don't mention MCP at all.

So if you installed the skill and expected a jev command or a Jev tool in your agent, nothing is broken. The skill changes what your agent knows, not what it can execute.

Updates & troubleshooting

Update the skill
# Claude Code plugin
claude plugin marketplace update typesafe-ai
claude plugin update typesafe@typesafe-ai

# skills.sh installs
npx skills update
!The agent ignores the skill. Invoke it explicitly (above). If it still doesn't load, check that the installer targeted the agent you're using, then restart the agent.
!The agent invents request or response fields. TypeSafe attributes this to a stale skill. Update it and retry.
!Auto-updates in Claude Code. Open /plugin, then Marketplaces → typesafe-ai → Enable auto-update. For a manual copy, replace the whole directory.

Verified September 23, 2026 against the repository at tag v0.5.7 (plugin typesafe 0.5.7, marketplace typesafe-ai, skill typesafe-ai, MIT). The repository had 1,931 GitHub stars; skills.sh listed 64.2K installs and passing Gen Agent Trust Hub, Socket, and Snyk audits. Both installers were run in isolated directories; nothing was installed into a real agent configuration.

Not affiliated with, endorsed by, or operated by TypeSafe AI. Vendor claims are cited and attributed.