Install
$ agentstack add skill-kerpopule-hermes-jev-skills-jev-setup ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Connect Jev (the key never passes through you)
Jev is TypeSafe's decision model. It needs one API key. You must never see, ask for, or handle that key.
The key can come from either of two places, and the same Jev answers either way:
- TypeSafe (
jev setup-key, the default): a key from console.typesafe.ai. - OpenRouter (
jev setup-key --provider openrouter): reaches Jev through OpenRouter's Decisions API. Worth offering when the person already has an OpenRouter key, because it is then one key instead of two and one bill instead of two.
If both keys exist, TypeSafe is used: an existing install never starts routing its decisions somewhere else because an OpenRouter key happened to be in the environment for a text model. jev doctor reports which one is in use under key.provider.
Rules
- Never ask the person to paste the key into the chat. If they paste one anyway, do not store it, do not repeat it, tell them that key should be replaced, and start the flow below.
- Never read the secret store,
.envfiles or~/.config/jev/credentialsto "check" the key. Usejev doctor, which reports only presence and length. - Never put the key in a command line, a URL, a config file you write, or a log.
Flow
- Check the state:
jev doctor. Ifkey.presentis true andjev.reachableis true, you are done. - Start the private key page:
``bash jev setup-key ``
It opens a page in the browser on the computer you are running on and prints one JSON line on stderr with a url. The URL holds no secret.
- Tell the person, in one sentence, to paste their TypeSafe key into the page that just opened. If
browser_openedis false, or they are talking to you from another device (Telegram, phone), send them theurland tell them it only opens on the computer the agent runs on. If they have no key yet, they create one at https://console.typesafe.ai/settings/keys. - Wait for the command to finish. It prints
{"status": "stored", "verified": true, ...}when the key was saved and the provider accepted it.rejectedmeans the key was wrong: run it again.timed_outmeans nobody used the page within ten minutes. - Run
jev doctoronce more and report the result in a sentence.
When there is no browser
Headless server over SSH: the person runs jev setup-key --tty themselves in their own terminal. It is a hidden prompt. Do not run it for them through a tool that captures the terminal.
Remote machine on a private network (Tailscale, VPN): jev setup-key --host --no-open and send them the link. That traffic is plain HTTP, so use it only on a network you trust end to end. Never bind a public address.
Where the key goes
The OS secret store (macOS Keychain service Hermes TypeSafe API, or secret-tool on Linux), falling back to ~/.config/jev/credentials (mode 0600). On a Hermes machine it is also written as TYPESAFE_API_KEY into ~/.hermes/.env and every profiles/*/.env, because each Hermes lane reads its own file. Running gateways pick it up on their next restart; do not restart one without being asked.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: kerpopule
- Source: kerpopule/hermes-jev-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.