building-with-typesafe-jev
aaddrick · aaddrick/building-with-typesafe-jev
Teaches AI coding agents to use TypeSafe AI's Jev for making typed decisions with calibrated confidence and leveraging prior art from community projects.
Unofficial skill that teaches coding agents to build with TypeSafe AI's Jev: typed decisions, calibrated confidence, and prior art from 150+ community projects.
Preview
What you can do with it
- Route customer support tickets based on sentiment and keywords.
- Grade pull requests automatically using a defined scoring scale.
- Verify if a shell command safely operates within project boundaries.
Safety check
Usable, but read the notes first.
- ●Installer downloads a remote script and pipes it to the shell.
scripts/install_muse.sh
Automated scan of the repo files. Always review code you run.
From the README
Building with TypeSafe Jev Typed decisions with calibrated confidence, for your coding agent. Links to 150+ community projects, sorted by shape, with a code sketch for each.
Connect on LinkedIn!
English · 简体中文 · 日本語 · 한국어 · Tiếng Việt · Português (BR) · Italiano
[!NOTE] This is an unofficial, community skill. It is not made, reviewed, or endorsed by TypeSafe AI. TypeSafe publishes its own skill at typesafe-ai/skills. See How this differs from the official skill.
Coding agents treat Jev like one more chat model. This skill teaches them to design for it: typed questions, calibrated confidence, and links to 150+ community projects, sorted by how they work, with a code sketch for each pattern. It installs in Claude Code, Codex, Antigravity CLI, Muse, and Muse Code.
Jev is a System One model. It does not write text. You send it content and a set of typed questions, and it answers each one with a value and a calibrated probability, usually in 100 to 200 ms:
- Choice picks one option from a list. Example: route a ticket to billing, shipping, or support.
- Score places the content on a scale you describe. Example: grade a pull request from "ignores the spec" to "meets the spec".
- Noul gives the probability that a yes/no statement is true. Example: "this shell command deletes files outside the project."
Install
Claude Code
claude plugin marketplace add aaddrick/building-with-typesafe-jev
claude plugin install building-with-typesafe-jev@building-with-typesafe-jev
The skill loads on its own when you work on Jev code. To load it by hand, type:
/building-with-typesafe-jev:building-with-typesafe-jev
Claude Desktop, Cowork, and claude.ai
Step 1. Open Customize > Plugins, select Add, then Add marketplace.
Step 2. Choose Add from a repository.
Step 3. Enter aaddrick/building-with-typesafe-jev. Leave Sync automatically on so the plugin updates when this repository does. Then select Sync.
Step 4. Select Add next to Building with typesafe jev.
Step 5. Claude confirms the plugin is installed. It also appears in the desktop app and Cowork on the same account.
Codex
codex plugin marketplace add aaddrick/building-with-typesafe-jev
codex plugin add building-with-typesafe-jev@building-with-typesafe-jev
Start a new thread. Codex loads the skill when the task matches. To load it by hand, type:
$building-with-typesafe-jev:building-with-typesafe-jev
Antigravity CLI
agy plugin install https://github.com/aaddrick/building-with-typesafe-jev
Check that it installed:
agy plugin list
Start a new session. Antigravity CLI loads the skill when the task matches. To load it by hand, type:
/building-with-typesafe-jev:building-with-typesafe-jev
Coming from Gemini CLI? If agy plugin import gemini brought this extension over, run the install command above anyway so the current copy replaces the imported one.
Muse (muse.ai)
Muse loads skills from ~/workspace/skills/ on its own computer. Paste this command into a Muse chat and ask Muse to run it:
curl -fsSL https://raw.githubusercontent.com/aaddrick/building-with-typesafe-jev/main/scripts/install_muse.sh | bash
The script copies the skill folder there and rewrites the SKILL.md header into the shape Muse reads. Start a new chat. Muse loads the skill when the task matches. To update, run the command again.
Muse Code
Clone the repository:
git clone https://github.com/aaddrick/building-with-typesafe-jev.git
Install the skill for every project:
muse skills install building-with-typesafe-jev/skills/building-with-typesafe-jev --scope user
Check that it installed:
muse skills list
Start a new session. Muse Code loads the skill when the task matches. To load it by hand, type:
/building-with-typesafe-jev
Any other agent that reads SKILL.md
Copy the skills/building-with-typesafe-jev/ folder into your agent's skills folder. Keep the whole folder. SKILL.md links to the files beside it.
Set up an API key (optional, recommended)
The skill works without a key. With TYPESAFE_API_KEY set in the agent's shell, the agent can check its design against the live API before the code reaches your project. That catches wrong field names, and questions Jev reads differently than you meant. Each call costs a fraction of a cent.
Create, store, and troubleshoot a key
Create a key (four steps in the TypeSafe console)
Step 1. Sign in at console.typesafe.ai and open API Keys in the sidebar.
Step 2. Click Create key at the top right.
Step 3. Name the key after where it will live, such as the machine or the agent. Then click Create key.
Step 4. Copy the key now. The console shows it once. If you lose it, create a new one and revoke the old one.
Store the key (macOS, Linux, Windows)
Keep the key in its own file, readable only by you, and export it as TYPESAFE_API_KEY. Agents often start shells without a terminal, so each section puts the key where those shells can see it. Pick your system.
macOS (zsh, the default shell)
Save the key to a private file:
mkdir -p ~/.config/typesafe && umask 077 && printf 'export TYPESAFE_API_KEY=%s\n' 'YOUR_KEY' > ~/.config/typesafe/env
Load it from ~/.zshenv. Every zsh reads that file, including shells that agents start without a terminal. ~/.zshrc is read only by interactive shells.