Adds a parallel LLM backend that bypasses OpenClaw and talks to Anthropic Messages API directly. Selected via LLM_BACKEND=claude in .env; default remains openclaw so nothing breaks for existing setup. Why: OpenClaw gateway adds 500-1000ms overhead on every turn (auth, memory fetch, routing). Direct Haiku 4.5 + prompt caching = faster first token and -90% cost on cached chunks. - satellite/llm_claude.py — Anthropic SDK streaming client, prompt caching on system prompt and all-but-last-2 history messages, per agent+date JSON history in HISTORY_DIR, reset_history() for the 'сбрось' command, per-agent system prompts (Cosmo / Люся), fallback to error event if SDK/key missing. - satellite/llm.py — dispatches to ask_claude_stream when backend=claude, exports LLM_BACKEND so modes.py can route reset too. - satellite/modes.py — _handle_reset calls reset_history when backend is claude, keeps /new POST for openclaw. - requirements.txt — anthropic >= 0.50.0 - .env.example — LLM_BACKEND, ANTHROPIC_API_KEY, ANTHROPIC_MODEL, HISTORY_DIR, MAX_HISTORY, HTTPS_PROXY block for non-RU egress. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
27 lines
436 B
Plaintext
27 lines
436 B
Plaintext
requests
|
|
python-dotenv
|
|
numpy<2
|
|
|
|
# Audio I/O
|
|
pyaudio
|
|
sounddevice
|
|
scipy<1.15
|
|
webrtcvad-wheels
|
|
|
|
# STT через облако
|
|
groq
|
|
|
|
# LLM — прямой Claude (альтернатива OpenClaw, активируется LLM_BACKEND=claude)
|
|
anthropic>=0.50.0
|
|
|
|
# TTS
|
|
elevenlabs
|
|
|
|
# Wake word
|
|
openwakeword
|
|
|
|
# Русская морфология для нормализации текста под TTS
|
|
num2words
|
|
pymorphy3
|
|
pymorphy3-dicts-ru
|