Skip to content
Back to skills

Cli Jev

ASecurity

Routes Jev typed-judgment requests to the cli-usage transport through mode-registry.json; holds no packet-local logic.

  • 36 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 21, 2026
documentationshellbashnodetestingbackend

Works with

  • cli
  • mcp

Security analysis

A100/100

Pro scans all 20 files and shows the line behind each finding

Scanned September 24, 2026

npx -y skills add MichelKerkmeester/opencode--spec-kit-skilled-agent-orchestration --skill cli-jev --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Cli Jev?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Cli Jev
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/michelkerkmeester-cli-jev/badge)](https://www.skillsdirectory.com/skills/michelkerkmeester-cli-jev)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: cli-jev
description: "Routes Jev typed-judgment requests to the cli-usage transport through mode-registry.json; holds no packet-local logic."
allowed-tools: [Read, Bash, Grep, Glob]
version: 0.2.0.0
---

<!-- Keywords: cli-jev, cli-usage, jev, typed judgment, transport, noul, choice, score, jev-mcp -->

# cli-jev - Typed-Judgment Transport Hub

One public skill identity with one `packetKind: "transport"` packet. This hub holds no packet-local logic. It routes by `workflowMode` through `mode-registry.json` and uses `hub-router.json` for router policy, signals and outcomes.

---

## 1. WHEN TO USE

Use this skill when a request needs a typed judgment from the `jev` CLI or its MCP surface.

| Packet | Kind | Use it for | Tool posture |
|--------|------|------------|--------------|
| `cli-usage` | transport | One typed judgment: a probability, one option key, an ordered score position, or a batch of keyed answers | Read/Bash only, mutates nothing |

### When NOT to Use

- Work that needs an edit, a review, or a multi-step process: dispatch the judgment to `cli-usage` and pair it with a workflow mode.
- Running `jev-mcp` from a shell: its stdio carries MCP frames, so it belongs in an MCP host configuration.
- Anything outside Jev typed judgments.

---

## 2. SMART ROUTING

Routing is registry-driven. `mode-registry.json` lists every packet, and `hub-router.json` decides whether the result is the single transport, a defer, or a bundle where the transport supplies the judgment and a workflow mode acts.

> **Compiled routing (default-on, flag-gated, additive).** Resolve the mode via the compiled router contract first:
> ```bash
> node .skilled/bin/compiled-route.cjs --hub cli-jev --prompt "<task>"
> ```
> Follow the returned decision — `route` (use its `targets`), `clarify`/`defer` (disambiguate), `reject` (refuse). On a `{"servingAuthority":"legacy"}` sentinel or any error, use the routing below. The front door self-gates on serving-authority. Compiled routing is now the default for `cli-jev`; set `SPECKIT_COMPILED_ROUTING=0` to force legacy routing fleet-wide — the explicit kill-switch.

### Two-Axis Model

- `packetKind: "transport"` means a bridge to an external tool's CLI/MCP surface: it selects a value and never mutates this workspace.
- A transport declares `mutatesWorkspace: false`, forbids `Write`, `Edit` and `Task`, and is registered under the `transport-axis` extension.
- The advisor resolves the hub identity and stays blind to the transport (`routingClass: "metadata"`), so the hub owns the resolution.

### Routing Rule

```text
read hub-router.json
  -> score routerSignals and vocabularyClasses
  -> apply routerPolicy.tieBreak (a workflow mode outranks a transport)
  -> read mode-registry.json for packetKind, backendKind, toolSurface and advisorRouting
  -> load the selected packet
```

### Outcomes

- `single`: one dominant judgment intent routes to `cli-usage`.
- `orderedBundle`: a judgment intent paired with a workflow intent dispatches the workflow first, with the transport attached as the judgment source.
- `defer`: unclear intent asks for disambiguation rather than guessing a value.

---

## 3. HOW IT WORKS

### Layout

```text
cli-jev/
  SKILL.md
  README.md
  mode-registry.json
  hub-router.json
  ROUTER.md                     # stage-two control, stage1-only
  description.json
  graph-metadata.json
  leaf-manifest.json
  changelog/
  manual-testing-playbook/
  benchmark/
  shared/
  cli-usage/
    SKILL.md
    README.md
    references/
    assets/
    feature-catalog/
    manual-testing-playbook/
    benchmark/
    changelog/
```

### Companion Metadata

- `mode-registry.json` owns `workflowMode`, `packetKind`, `backendKind`, `toolSurface`, packet folder identity, aliases and `advisorRouting`; the `transport-axis` extension lists the transports.
- `hub-router.json` owns `routerPolicy`, `routerSignals`, `vocabularyClasses` and outcomes.
- `ROUTER.md` is the stage-two control document, `router_state: stage1-only` until an author promotes it with a concrete leaf map.
- `description.json` owns hub-doctor metadata.
- `graph-metadata.json` is the one skill-graph identity node for the hub.

### Extensions

- `transport-axis`: declares `transports: ["cli-usage"]`. The per-hub gate enforces the whole transport contract (routingClass `metadata`, `mutatesWorkspace: false`, the forbidden tool set, and membership in the axis).

---

## 4. RULES

### ALWAYS

- Resolve the packet through `mode-registry.json`; never hardcode the transport's path in prose-only logic.
- Keep `SKILL.md` thin: routing, invariants and navigation only.
- Keep `cli-usage` non-mutating: the transport returns a value and selects, while a workflow mode acts.
- Keep the transport `routingClass: "metadata"`: the hub resolves it, and the advisor stays blind to the axis.
- Keep exactly one `graph-metadata.json`, at the hub root.

### NEVER

- Never grant `Write`, `Edit` or `Task` to the transport.
- Never add a second packet array or a packet-local `graph-metadata.json`.
- Never let a transport complete a task on its own.
- Never start `jev-mcp` from a shell.

### ESCALATE IF

- A request needs a judgment and an edit but no workflow mode is selected: report the gap instead of mutating from a transport.
- `command -v jev` fails: the transport is not routable on this machine, and the hub says so rather than inventing a judgment.

---

## 5. REFERENCES

- Registry: [`mode-registry.json`](./mode-registry.json).
- Router: [`hub-router.json`](./hub-router.json).
- Root router: [`ROUTER.md`](./ROUTER.md).
- Transport packet: [`cli-usage/SKILL.md`](./cli-usage/SKILL.md), [`cli-usage/references/cli-reference.md`](./cli-usage/references/cli-reference.md), [`cli-usage/references/providers-and-models.md`](./cli-usage/references/providers-and-models.md), [`cli-usage/references/integration-patterns.md`](./cli-usage/references/integration-patterns.md), [`cli-usage/references/mcp-server.md`](./cli-usage/references/mcp-server.md).
- Hub metadata: [`description.json`](./description.json), [`graph-metadata.json`](./graph-metadata.json), [`leaf-manifest.json`](./leaf-manifest.json).
- Hub changelog: [`changelog/v0.2.0.0.md`](./changelog/v0.2.0.0.md).

---

## RELATED RESOURCES

- `cli-usage/manual-testing-playbook/manual-testing-playbook.md` - the transport's operator-facing scenario index.
- `.skilled/skills/sk-doc/sk-create-skill/references/parent-skill/parent-skills-nested-packets.md` - the parent-hub pattern this hub follows.

Files in this skill

  • README.md1.6 KB
  • ROUTER.md3.2 KB
  • SKILL.md6.4 KB
  • benchmark/README.md801 B
  • benchmark/reports/2026-09-20-hub-routing-baseline/raw/hub-routing-run.sh1.3 KB
  • benchmark/reports/2026-09-20-hub-routing-baseline/raw/hub-routing.txt1.6 KB
  • benchmark/reports/2026-09-20-hub-routing-baseline/skill-benchmark-report.md3.3 KB
  • changelog/v0.1.0.0.md2.3 KB
  • changelog/v0.2.0.0.md2.3 KB
  • cli-usage/README.md6.3 KB
  • cli-usage/SKILL.md16.5 KB
  • cli-usage/assets/question-shaping-card.md4.9 KB
  • cli-usage/benchmark/README.md1.9 KB
  • cli-usage/benchmark/reports/2026-09-20-authenticated-verification/skill-benchmark-report.md4.1 KB
  • cli-usage/benchmark/reports/2026-09-20-phase-004-unauthenticated-pass/skill-benchmark-report.md3.2 KB
  • cli-usage/benchmark/reports/2026-09-20-post-migration-reverification/raw/auth-probe.sh1.5 KB
  • cli-usage/benchmark/reports/2026-09-20-post-migration-reverification/raw/auth-probe.txt1.1 KB
  • cli-usage/benchmark/reports/2026-09-20-post-migration-reverification/raw/compare-surface.py1.7 KB
  • cli-usage/benchmark/reports/2026-09-20-post-migration-reverification/raw/compare.py1.8 KB
  • cli-usage/benchmark/reports/2026-09-20-post-migration-reverification/raw/dispatch-audit-live.txt9.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.