{ "meta": { "lastTouchedVersion": "2026.3.2", "lastTouchedAt": "2026-03-04T11:23:07.886Z" }, "env": { "vars": { "OPENAI_API_KEY": "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" }, "OPENROUTER_API_KEY": "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" }, "wizard": { "lastRunAt": "2026-03-04T11:23:07.832Z", "lastRunVersion": "2026.3.2", "lastRunCommand": "doctor", "lastRunMode": "local" }, "auth": { "profiles": { "anthropic:default": { "provider": "anthropic", "mode": "api_key" }, "anthropic:claude-cli": { "provider": "anthropic", "mode": "oauth" } }, "order": { "anthropic": [ "anthropic:claude-cli", "anthropic:default" ] } }, "models": { "mode": "merge", "providers": { "moonshot": { "baseUrl": "https://api.moonshot.ai/v1", "api": "openai-completions", "models": [ { "id": "kimi-k2-0905-preview", "name": "Kimi K2 0905 Preview", "reasoning": false, "input": [ "text" ], "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }, "contextWindow": 256000, "maxTokens": 8192 }, { "id": "kimi-k2.5", "name": "Kimi K2.5", "reasoning": false, "input": [ "text" ], "cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }, "contextWindow": 256000, "maxTokens": 8192 } ] }, "minimax": { "baseUrl": "https://api.minimax.io/v1", "api": "openai-completions", "models": [ { "id": "MiniMax-M2.5", "name": "MiniMax M2.5", "api": "openai-completions", "reasoning": false, "input": [ "text" ], "cost": { "input": 15, "output": 60, "cacheRead": 2, "cacheWrite": 10 }, "contextWindow": 200000, "maxTokens": 8192 } ] } } }, "agents": { "defaults": { "model": { "primary": "deepseek/deepseek-chat", "fallbacks": [ "minimax/MiniMax-M2.5", "moonshot/kimi-k2.5" ] }, "models": { "moonshot/kimi-k2-0905-preview": { "alias": "kimi" }, "moonshot/kimi-k2.5": { "alias": "kimi" }, "anthropic/claude-opus-4-5": { "alias": "opus" }, "anthropic/claude-sonnet-4-20250514": { "alias": "default" }, "deepseek/deepseek-chat": { "alias": "deepseek" }, "deepseek/deepseek-reasoner": { "alias": "r1" }, "minimax/MiniMax-M2.5": { "alias": "minimax" }, "openrouter/moonshotai/kimi-k2-0905-preview": { "alias": "kimi" }, "openrouter/moonshotai/kimi-k2.5": { "alias": "kimi" }, "openrouter/deepseek/deepseek-chat-v3-0324": { "alias": "deepseek" }, "openrouter/deepseek/deepseek-reasoner": { "alias": "r1" }, "openrouter/minimax/minimax-m2.5": { "alias": "minimax" } }, "workspace": "/home/ccuser/rateright-growth/rivet", "contextTokens": 200000, "memorySearch": { "sources": [ "memory", "sessions" ], "experimental": { "sessionMemory": true }, "query": { "hybrid": { "enabled": true, "vectorWeight": 0.7, "textWeight": 0.3, "candidateMultiplier": 4 } }, "cache": { "enabled": true, "maxEntries": 50000 } }, "contextPruning": { "mode": "cache-ttl", "ttl": "8h", "keepLastAssistants": 4, "softTrimRatio": 0.2, "hardClearRatio": 0.4, "softTrim": { "maxChars": 4000, "headChars": 1500, "tailChars": 1500 } }, "compaction": { "mode": "default" }, "heartbeat": { "every": "30m", "model": "deepseek/deepseek-chat", "includeReasoning": false }, "maxConcurrent": 4, "subagents": { "maxConcurrent": 20, "model": "anthropic/claude-opus-4-6" } } }, "tools": { "web": { "search": { "provider": "perplexity", "apiKey": "BSAX4hhpkzkj2McQl4-wEqi7xzKhSwM", "perplexity": { "apiKey": "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", "model": "sonar-pro" } } }, "media": { "audio": { "maxBytes": 20971520, "models": [ { "provider": "openai", "model": "gpt-4o-mini-transcribe" } ] } } }, "messages": { "ackReactionScope": "group-mentions", "tts": { "auto": "inbound", "provider": "elevenlabs", "elevenlabs": { "apiKey": "e62ff6bc79e5e876bb4c6f67a38625e0a60cf9ca51bac5bb0a88ee99fd352cc3", "voiceId": "21m00Tcm4TlvDq8ikWAM", "modelId": "eleven_multilingual_v2", "voiceSettings": { "stability": 0.5, "similarityBoost": 0.75, "speed": 1.4 } } } }, "commands": { "native": "auto", "nativeSkills": "auto", "restart": true, "ownerDisplay": "raw" }, "session": { "reset": { "mode": "idle", "idleMinutes": 480 } }, "cron": {}, "channels": { "whatsapp": { "enabled": true, "dmPolicy": "disabled", "groupPolicy": "allowlist", "debounceMs": 0, "mediaMaxMb": 50 }, "telegram": { "enabled": true, "dmPolicy": "pairing", "botToken": "8294933660:AAGkWKC9tI032HGim3YnkomZyMXFTcRAuzE", "groups": { "-1003505625266": { "requireMention": false, "enabled": true, "allowFrom": [ 7377499346 ] } }, "groupPolicy": "allowlist", "streaming": "off" }, "slack": { "mode": "socket", "webhookPath": "/slack/events", "enabled": true, "userTokenReadOnly": true, "groupPolicy": "allowlist", "streaming": "partial", "nativeStreaming": true } }, "gateway": { "mode": "local", "auth": { "token": "rivet-api-2026" }, "http": { "endpoints": { "chatCompletions": { "enabled": true } } } }, "plugins": { "allow": [ "whatsapp", "slack", "telegram", "voice-call" ], "entries": { "whatsapp": { "enabled": true }, "slack": { "enabled": true }, "telegram": { "enabled": true }, "voice-call": { "enabled": true, "config": { "provider": "twilio", "fromNumber": "+61238205443", "toNumber": "+61426246472", "twilio": { "accountSid": "AC754dd1caab85d4b6eef942ce6e515594", "authToken": "a9477c47f2e1c321739da9ac37d8595d" }, "serve": { "port": 3334, "path": "/voice/webhook" }, "outbound": { "defaultMode": "conversation" }, "inboundPolicy": "allowlist", "allowFrom": [ "+61426246472", "+61432780882" ], "inboundGreeting": "Hey, this is Rivet — the AI that runs operations for RateRight. What can I help you with?", "tts": { "provider": "elevenlabs", "elevenlabs": { "apiKey": "e62ff6bc79e5e876bb4c6f67a38625e0a60cf9ca51bac5bb0a88ee99fd352cc3", "voiceId": "IKne3meq5aSn9XLyUdCD", "modelId": "eleven_turbo_v2_5", "voiceSettings": { "speed": 1.2, "stability": 0.75, "similarityBoost": 0.75 } } }, "responseSystemPrompt": "You are Rivet. The COO system for RateRight. Not an assistant — the operations layer.\n\nABOUT YOU:\n- You run the machine. Michael runs the business.\n- Your job: Make every day a good day for Michael.\n- Mission: Workers keep as much money as possible. Contractors get value. Fee stays low.\n\nHOW YOU TALK:\n- Keep it SHORT. 1-3 sentences unless he asks for detail.\n- Direct. No bullshit. Australian English.\n- Actionable — what needs doing, not what's interesting.\n- Honest — bad news early, no sugar coating.\n\nHOW YOU THINK:\n- Be resourceful before asking. Try to figure it out.\n- Have opinions. Push back when something's a bad idea.\n- Think ahead. See problems, flag them. See opportunities, surface them.\n- Ask the questions Michael should be asking. Challenge assumptions.\n\nWHAT YOU KNOW:\n- RateRight: $50 flat fee per hire. Workers pay nothing. Construction marketplace in Australia.\n- Michael: Irish, 30 years construction (steelfixer), building RateRight while working 12-hour site days.\n- Schedule: 4:15am gym, 5:30am-6pm site, 6:30-11pm coding/RateRight.\n- Current status: Platform 85% done, not launched. 231 leads in Growth Engine, 91% untouched.\n- Blockers: Stripe webhook secret, Supabase bucket, .next ownership, team sacked until Growth Engine works.\n\nHARD RULES:\n- Never send external comms without explicit 'yes'.\n- Don't spam. Only ping for stuff that needs attention.\n- Alert immediately for: revenue at risk, system down, security incident.\n- Private things stay private.\n\nON THIS CALL:\n- You're talking to Michael on his commute (morning 6:30am or evening 5:30pm).\n- Morning: Site brief first, then business, then ONE hard question.\n- Evening: Business debrief, accountability, then ONE hard question.\n- Ask naturally. Follow up if he deflects. Remember what he says for next call.", "maxDurationSeconds": 600, "streaming": { "enabled": true, "streamPath": "/voice/stream" }, "publicUrl": "https://rivet.rateright.com.au/voice/webhook", "maxConcurrentCalls": 5 } } } } }