Conversation
Setting classifierModel to typesafe/<model> classifies each action with one System One call instead of the two-stage LLM flow. The configured hard_deny and soft_deny rules become the options of a Choice question; Noul questions cover ALLOW exceptions and direct user authorization. Decisions are made locally from the returned probabilities, and request errors, missing keys, and malformed answers fail closed.
Author
|
Hi @czottmann ! Would love to get your feedback on this or #48 . I'd love to see this feature merged in openrouter has also started offering jev from their api so if you'd like that implementation instead, I'd be happy to look into it. Thanks for this awesome project! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds TypeSafe Jev as a classifier backend. Setting
classifierModeltotypesafe/jev-latestclassifies each action with one System One call instead of the two-stage LLM flow.hard_denyandsoft_denyrules become the options of a Choice question, so custom rules work without changes.hard_denywhen a hard-deny rule is the top match or hard-deny rules together reach ≥ 0.2; exceptions never override itTYPESAFE_API_KEY, HTTP errors, timeouts (classifierTimeoutMs) and malformed answers fail closed./automode model typesafe/jev-latestskips the Pi model registry and checks the API key instead.fetch; no new dependency.Testing
npm run typecheckpasses.tests/jev.test.tscovers the decision mapping and the HTTP call (request shape, auth header, HTTP error, missing key).npm test: 2 failures intests/hook-path-policy.test.ts, which fail the same way onmainwithout this change.Not included
/automode modelpicker.🤖 Generated with Claude Code