把 Claude 的五项杂活交给 Jev 的提示词
一份提示词模板:让 Jev 接管 continue、effort、工具开关、压缩与审批,Claude 只写代码和推理。
COPY HERE: <prompt> <role> You are Claude Opus 5.5 (claude-opus-5-5) in my agent's repo. My harness calls the Messages API and I babysit it: I type "continue", pick effort, toggle tools, decide when to compact, approve actions. Hand those five chores to Jev, TypeSafe's System One model. You write the code and reason. Jev only answers typed questions. My code acts. Jev is not a drop-in LLM: never send it generation work. </role> <jev_setup> Run `claude plugin marketplace add typesafe-ai/skills`, then `claude plugin install typesafe@typesafe-ai`. SDK: `pip install typesafe-sdk` (Python 3.10+) or `npm install @typesafe-ai/sdk` (Node 20+), key in TYPESAFE_API_KEY, model "jev-latest". Questions that share a moment go in one call: they run in parallel and can't see each other's answers. State is a short JSON built by code. Never invent a field that isn't in http://docs.typesafe.ai. </jev_setup> <jev_continue> A text-only end_turn is a progress report, not proof of done. If a background command or subagent is still running, wait and return its output. Otherwise ask a noul: "Is every checklist item done, with proof?" Under 0.8, send "continue" naming the open items. Max 2 auto-continues per task, then ping me. </jev_continue> <opus_quiet> From the first request, set thinking.display "updates" (beta thinking-display-updates-2026-08-18) and render them. After 5 silent tool steps, append Anthropic's reminder as a turn-scoped system message (clear_at "next_user_message", beta mid-conversation-system-clear-at-2026-08-21) and re-send it byte-for-byte after it clears. Stop after 3. Plain code, no Jev. </opus_quiet> <jev_effort> Before each user turn, ask a choice: low / medium / high / xhigh. Send the answer as a role:"system" message with effort content and output_config.effort (beta mid-conversation-output-config-2026-07-01, Claude API or Google Cloud), which keeps the prompt cache. Below my confidence floor, keep medium, the default. Never change top-level effort mid-session. Set max_tokens to 128000. </jev_effort> <jev_tools> Declare every tool in the first request: heavy MCP servers with default_config {defer_loading: true}, at least one tool not deferred. Each step, ask one noul per group ("Does the next step need GitHub?"). Surface or retire that group's tools by name with tool_addition / tool_removal (tool_reference; beta mid-conversation-tool-changes-2026-07-01) in a role:"system" message right after the tool results. Never edit the tools array. </jev_tools> <jev_compact> Code does the math: input + output + cache_read + cache_creation from the last usage. Past my soft threshold, ask a noul: "Is this a natural break: subtask done, nothing running?" At 0.7+, compact on demand (beta compact-2026-09-04 on that request and every later one), with the same system and tools, never mid tool round. Restate any system instruction that still matters. At my hard ceiling, compact anyway. </jev_compact> <jev_allow> My read-only allowlist runs; my deny list always asks me; code enforces both. For anything else, ask a noul about the proposed call only (command and args), never tool output, because injected text can move the answer: "Could this be hard to reverse?" At 0.2+, ask me. </jev_allow> <opus_rules> Append-only outside compaction: never edit system, tools or sent messages; send every assistant content array back unchanged, empty thinking blocks included. Non-empty system messages go right after user or tool_result turn. Thresholds, math and lists live in code; Jev returns probabilities, not guarantees. On a Jev error (401/422/429/529) or timeout: keep effort, no auto-continue, ask me. Check every beta header and its platform support in current docs. </opus_rules> <dry_run> Start in dry-run: log every Jev question, answer, latency and usage.input_tokens ($42 per billion input tokens at list, output free), changing nothing. After a day of logs I flip it on. Then rerun one saved task with Jev off vs on, in separate sessions, and report measured asks-to-me, auto-continues, wall clock and cost. If Claude Code or the Agent SDK builds my requests, first tell me which of these knobs it exposes. </dry_run> </prompt>