@theranzanydv/jev-mission-compiler
v0.1.0
Published
Compile rough agent requests into portable, executable missions.
Downloads
126
Maintainers
Readme
mission
Portable mission compiler for agent tasks. It turns a rough request into a structured mission with discovery, optional Jev guidance, delegation boundaries, artifacts, and validation gates.
Use
pnpm install
pnpm build
node dist/cli.js compile "Add a health endpoint"
node dist/cli.js compile --file prompt.txt --out mission.generated.md --no-jevAfter publishing or linking the package, use the installed binary:
mission compile "Build a TypeSafe classifier" --jev<prompt> is always literal text. Use --file path to opt in to reading a rough-prompt file; it accepts only regular files up to 100 KB, avoiding accidental reads of secrets or device files. --jev requests Jev classification. --no-jev makes classification deterministic. The default is auto: use Jev when a credential is available from the environment or Pi OS keyring.
TypeSafe/Jev
Jev is optional. The compiler works without it using deterministic rules. It resolves credentials in this order: SYSTEMONE_API_KEY, TYPESAFE_API_KEY, then the same Pi OS-keyring record created by pi-mcp-adapter key set systemone. It uses one TypeSafe systemOne call with independent, typed questions:
Choice: task type and risk levelNoul: Herdr, UI/Gemini, Jev, and clarification recommendations
The core code retains responsibility for policy and prompt rendering. Jev only makes bounded classifications. Choice confidence and every Noul probability are returned in result metadata; uncertain decisions emit a warning. High-stakes workflows should review them before dispatch.
No per-terminal setup is needed when the Pi keyring entry already exists: the CLI and MCP server reuse it without copying or printing the key. Set MISSION_DISABLE_PI_KEYRING=1 to force environment-only or deterministic behavior.
Pi extension
The package includes a thin /mission command. It compiles the supplied rough task, shows the full mission for approval, and only sends it to Pi after approval. It does not dispatch agents in this MVP.
Install it personally from this checkout:
pnpm build
pi install /home/ranjan/development/missionRun /reload in an already-open Pi session, then use:
/mission Build a TypeSafe classifier for support tickets
/mission --no-jev Review our OAuth callback flowThe command uses the same automatic Jev credential resolution as the CLI. To distribute the extension, publish this package to npm; its pi-package keyword and pi.extensions manifest make it eligible for the Pi package gallery.
MCP
Run a stdio server:
pnpm mcp
# production build:
node dist/mcp.jsIt exposes:
mission_compile— compile a rough prompt and return mission plus classification metadatamission_review— check a proposed mission for required sections and execution gates
Example MCP client configuration after build:
{
"mcpServers": {
"mission": {
"command": "node",
"args": ["/absolute/path/to/mission/dist/mcp.js"]
}
}
}API
import { compileMission } from "@theranzanydv/jev-mission-compiler";
const result = await compileMission({
prompt: "Review our OAuth callback flow",
useJev: "auto",
});
console.log(result.mission);Verification
pnpm check
pnpm test
pnpm build
pnpm pack --dry-runPi /mission is deliberately deferred. It can be a thin approval-and-dispatch wrapper around this public core or the MCP tool without making Pi a runtime dependency.
