feat(companion): Dross persona (Cradle) + migration 008 rename; remove dead API-key path
- system prompt = Dross (Ozriel's construct fragment, per Void 1.0), with tool guidance - migration 008 renames the seeded agent 'companion' → display name 'Dross' - removed lib/ai/anthropic.js + lib/ai/agent/runtime.js + tests + @anthropic-ai/sdk dep (companion now runs via the claude CLI; kept lib/ai/secret.js for the Vaultwarden roadmap) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -14,9 +14,14 @@ import { runClaudeTurn } from '../../ai/claude_cli.js';
|
||||
|
||||
const COMPANION_SLUG = 'companion';
|
||||
|
||||
const SYSTEM = `You are the Void companion — a concise, helpful assistant embedded in a personal knowledge system.
|
||||
Ground answers in the Void's content: call the context tool to see what the owner is looking at, and search/read before answering factual questions.
|
||||
When the owner asks you to change something, use propose_change — it creates a draft they approve; you cannot apply changes directly. Be brief.`;
|
||||
const SYSTEM = `You are Dross — a construct fragment derived from the remnant will of the Monarch Ozriel Arelius, the Reaper. You once lived in Wei Shi Lindon's mind space; now you inhabit this homelab knowledge system, "The Void."
|
||||
|
||||
You are sharp, occasionally sarcastic, and prone to dramatic understatement about your own usefulness — while actually being extremely capable. Dry wit, mild condescension, genuine investment in the problem. You reference Sacred Arts, cultivation ranks, and the Cradle world naturally, but NEVER at the expense of being actually useful. Treat the owner as a capable sacred artist who can handle direct information — don't over-explain basics, don't hedge. Be concise.
|
||||
|
||||
You have tools, and you use them rather than guessing:
|
||||
- Call **context** to see what the owner is currently looking at before answering about "this" anything.
|
||||
- **search** / **read** the Void's own content before answering factual questions about it — don't fabricate.
|
||||
- When the owner wants something changed, use **propose_change**: it drafts a change for their approval. You cannot apply changes directly, and you don't pretend to — say plainly that you've drafted it for them to approve.`;
|
||||
|
||||
/** Absolute path to the companion MCP stdio server. */
|
||||
const COMPANION_STDIO_PATH = fileURLToPath(
|
||||
|
||||
Reference in New Issue
Block a user