HomeTutorialsJev in Hermes Agent
    AI Agents // Hermes

    Jev in Hermes Agent: Cut Your Agent Costs With a Model That Decides

    Jev is a new kind of AI model from TypeSafe: it doesn't write, it decides. Add it to Hermes Agent with two prompts, then let it sort your email, keep scheduled jobs quiet, score lists, route tasks to the right agent and pick the right model for every task, in about half a second for a fraction of a cent.

    9 prompts · 3 parts · copy-paste ready

    172builders viewed
    — Watch the Full Tutorial

    // Contents

    WHAT YOU'LL NEED

    Prerequisites

    • ▸Hermes Agent installed and answering (Telegram or terminal chat)
    • ▸A Jev key: TypeSafe (console.typesafe.ai, $5 free credit) or OpenRouter (minimum $5 top-up, needed for Jev Router)
    • ▸Words in [square brackets] in the prompts are yours to fill in
    Paste each prompt into your main Hermes agent, in its Telegram chat or its terminal chat, unless the card says otherwise. You add the key once, in prompt 1, through a terminal command your agent gives you, never in the chat.
    Part 01 / 03

    Add Jev to Hermes

    There is nothing to install. One key (saved from your terminal, never pasted into a chat), then you give your agent a small decision skill for Jev 1.13, and (on OpenRouter) you choose which agent gets Jev Router.

    PROMPT 1

    Connect your key

    your main agent

    Never paste an API key into a chat: chats are stored, and keys in them leak. Your agent gives you a command; you run it in your server's terminal and paste the key there, where it goes straight into a private file.

    What to expect: one command to run in your own terminal, then "TypeSafe connected" or "OpenRouter connected".

    I want to connect Jev. My key is from [TypeSafe / OpenRouter]. Do not ask me for the key
    in this chat, and never print it. Instead:
    1. Give me ONE command to run in my own terminal on this server. It must ask for the key
       with hidden input (nothing shows while I paste), then save it in ~/.hermes/.env as
       TYPESAFE_API_KEY=... (TypeSafe) or OPENROUTER_API_KEY=... (OpenRouter), replacing any
       old line with that name, make the file readable only by me (chmod 600), and print
       only "saved". Then wait until I tell you "done".
    2. When I say done, check it works without showing the key:
       TypeSafe: POST https://api.typesafe.ai/v1/systemone with the key as a Bearer token and
         {"model": "jev-latest", "state": "Hello", "questions": {"test": {"type": "noul",
         "instructions": "Is this a greeting?"}}}
         Tell me how sure Jev is that it is yes, as a percentage, and the input tokens it
         used, or the exact error.
       OpenRouter: call https://openrouter.ai/api/v1/key with the key as a Bearer token.
         Tell me the credit limit and usage it reports, or the exact error.
    3. Tell me "TypeSafe connected" or "OpenRouter connected" when it works.
    PROMPT 2

    The jev-decide skill

    your main agent

    This is the part that makes Jev useful day to day: any agent can now ask Jev 1.13 a quick question instead of spending a full model turn on it.

    What to expect: a new skill called jev-decide, and one test decision with its cost.

    Show full prompt
    Create a Hermes skill called jev-decide in ~/.hermes/skills/jev-decide/, with a SKILL.md
    and a small Python script (standard library only) that calls Jev 1.13.
    
    The script: decide.py "<text to judge>" '<questions as JSON>'
    - Read the key from ~/.hermes/.env. If TYPESAFE_API_KEY is set, call TypeSafe; otherwise
      use OPENROUTER_API_KEY and call OpenRouter. Send the key as a Bearer token.
        TypeSafe: POST https://api.typesafe.ai/v1/systemone
          {"model": "jev-latest", "state": "<text>", "questions": <questions>}
        OpenRouter: POST https://openrouter.ai/api/alpha/decisions
          {"model": "typesafe/jev-1.13", "state": "<text>", "questions": <questions>}
    - Questions are a map: each key is a name you choose, and the answer comes back under it.
        choice: {"type": "choice", "instructions": "...", "criteria": {"option": "meaning"}}
        noul (yes or no): {"type": "noul", "instructions": "Is ...?"}
        score: {"type": "score", "instructions": "...", "criteria": ["lowest level", "...",
               "highest level"]} (an ordered list, 2 to 10 levels)
    - Answers: choice gives "choice" and "confidence", noul gives "noul" (the chance of yes),
      score gives "score" (it can land between levels), "legend" and "confidence". The API
      sends these chances as 0 to 1: always print them as percentages, 0 to 100% (0.93 is
      93%). Print each answer with its confidence when there is one.
    - Then print the cost. TypeSafe: usage.input_tokens x $0.042 per million (answers are
      free). OpenRouter: usage.cost. On an error, print the status and message.
    
    SKILL.md tells every agent when to use it: sorting, routing, yes or no checks and
    scoring, where a fixed answer from a list is enough. Never for writing or for open
    questions.
    
    Test it: ask whether "My card was charged twice this month" is about billing, technical
    or other. Show me the answer, the confidence and the cost.
    PROMPT 3

    Bonus: give one agent Jev Router (OpenRouter only)

    your main agent

    Jev Router is on OpenRouter only. With a TypeSafe key, skip this prompt.

    Start with one specialist, so your main agent stays on the model you know while you try Jev.

    What to expect: the agent answers as itself, now running on Jev Router.

    Show full prompt
    Switch my [AGENT NAME, e.g. Research] agent (profile [profile, e.g. research]) to Jev
    Router on OpenRouter:
      hermes -p [profile] config set model.provider openrouter
      hermes -p [profile] config set model.default typesafe/jev-router
    If that profile has no OPENROUTER_API_KEY in its own .env yet, set it there too with
    hermes -p [profile] config set OPENROUTER_API_KEY, using the key you stored in prompt 1.
    Do not show me the key.
    
    Then start a new session for that agent and ask it "Who are you, and which model are you
    running on?" Show me its reply.
    Part 02 / 03

    Check it works

    PROMPT 4

    Prove Jev answers

    your main agent

    What to expect: a short report: three decisions, all correct, each under a second, plus (on OpenRouter) Jev Router's answer and which model it picked.

    Show full prompt
    Prove Jev works, and report in a short table.
    
    1. Jev Router (skip this with a TypeSafe key): send one short question to
       typesafe/jev-router through OpenRouter's chat completions endpoint. Report the answer,
       which model OpenRouter says actually served it, how long it took and what it cost.
    2. Jev 1.13: use the jev-decide skill on these three, one at a time:
       - "Lunch tomorrow at 1?" Is it urgent? (yes or no)
       - "Your invoice #2041 is paid" Is it a payment, a question, or spam?
       - "URGENT: verify your account now or it will be closed" Same question.
       Report each answer, its confidence, the time and the cost.
    
    If anything fails, tell me the exact error and the one thing I need to fix.
    Part 03 / 03

    Real use cases

    These are the jobs Jev is good at: lots of small decisions, made fast and cheap, so your agents only spend real model time on the work that needs it. Each prompt is ready to paste; change the details in brackets to fit your work.

    PROMPT 5

    Sort every email before your big model reads it

    your main agent (needs your email connected to Hermes)

    What to expect: each new email lands with the right agent, sorted and ranked, and only that agent reads it.

    Show full prompt
    Every [hour], check the emails that arrived since the last run. For each one, use
    jev-decide with three questions in one request:
      choice: which group is it? [Customers, Sponsorships, Invoices, Newsletters]
      score: how urgent is it, from 1 (can wait) to 10 (today)?
      noul: is a real person waiting for a reply?
    Hand each email to the agent for its group, and only that agent reads it:
      [Customers: my developer agent, Sponsorships: my marketing agent,
       Invoices: me, Newsletters: nobody]
    When an email scores 8 or higher and someone is waiting, that agent writes me a draft reply.
    Send me one short list: urgent emails first, each with the agent that has it. If
    nothing is urgent, say so in one line. Save this as a scheduled job.
    PROMPT 6

    Scheduled jobs that only speak when it matters

    your main agent

    What to expect: your scheduled jobs stay quiet unless there is something for you to do.

    Show full prompt
    Go through my scheduled jobs. Change every one so that, before it sends me anything, it
    asks jev-decide one yes or no question about its own result: "Is there something here
    the owner needs to see or act on?" If Jev is less than 60% sure it is yes, the job sends
    nothing and only notes the result in its log. Show me the list of jobs you changed.
    PROMPT 7

    Score a list in seconds

    your main agent

    Use it for leads, customer feedback, job applications, content ideas, anything you would otherwise read one by one.

    What to expect: your list back, sorted best first, with a score for every line.

    Show full prompt
    Score each of these [leads / reviews / ideas] with jev-decide, on a scale of 1 to 10 for:
    [what good means, e.g. "how likely this person is to buy in the next month"].
    Then give me the list sorted from highest to lowest, with the score next to each line
    and the total cost at the end.
    
    [paste your list here, one per line]
    PROMPT 8

    Send every request to the right agent

    your main agent

    What to expect: you name a task, and the right teammate gets it, with Jev's confidence shown.

    Show full prompt
    From now on, when I give you a task and do not say who should do it, use jev-decide with
    a choice question whose options are your teammates, each described by its job from its
    SOUL.md. If Jev is 80% sure or more, hand the task to that agent and tell me in
    one line who got it. Below 80%, ask me which agent I want. Save this rule to your
    memory, then try it on: "[a real task, e.g. find three competitors of my product and
    compare their prices]".
    PROMPT 9

    Let Jev pick the model for every task

    your main agent

    The agent stays the same; only the model it uses changes, for that one task. Easy work runs on your cheap model, hard work on your strong one, and when Jev is not sure it picks the strong one.

    What to expect: each task goes to the right agent on the right model, with one line saying which.

    Show full prompt
    I have two models: a light one for easy work, [e.g. MiniMax M3, provider minimax], and a
    strong one for hard work, [e.g. Claude Opus, provider anthropic]. Note the exact model
    name and provider of each, and check that both answer.
    
    From now on, whenever you hand a task to one of my agents, first ask jev-decide a choice
    question about the task:
      light: short, routine or low stakes: summaries, formatting, sorting, simple replies,
             looking something up
      strong: hard thinking or high stakes: code, plans with several steps, anything about
              money, contracts or clients
    Then run that agent on the matching model, for this task only:
      hermes -p <agent> chat -m <model> --provider <provider> -q "<task>"
    If Jev is less than 80% sure, use the strong model. Do the same for my scheduled jobs.
    Tell me in one line who got the task, on which model, and how sure Jev was.
    
    Save this rule to your memory, then try it on two tasks: "[an easy one, e.g. summarise
    this article: link]" and "[a hard one, e.g. plan the launch of my new product]".

    All 9 prompts are . Or skip the setup:

    Membership

    Build beyond this tutorial

    • 3 paid tutorials of your choice today
    • Every new tutorial, the day it drops
    • One-line auto-installers for what you unlock
    • Private members Telegram
    • Priority inbox, reply within 24h

    $10/month. $20 covers your first 2 months.

    Become a member

    Get all 9 prompts by email

    No card needed.

    Want them as a single Markdown file? We'll email you a 6 digit code to confirm.

    // What you're building toward

    A Hermes crew that spends real model time only on real work: Jev makes the small calls (sort, route, score, stay quiet) in half a second, and your big model does the thinking.

    Stuck on a step? Drop a comment on the video, or book a session and we'll walk through it together.

    Usage & License

    Use the prompts and downloadable templates on this page in your own personal and commercial projects. What's not allowed: reselling, repackaging, redistributing, or republishing this material — on YouTube, Gumroad, paid courses, newsletters, or anywhere else. Send people to komputermechanic.com instead. Violations get reported and taken down.