feat: initial commit of astra local voice agent

Lokaler deutscher Sprachagent für Apple Silicon: Pipecat-Pipeline mit
Nemotron-ASR (MLX), Qwen über natives Ollama /api/chat, und Pocket TTS.
Loopback-only WebRTC-Server mit Origin/Host-Härtung.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LVgSHNHdRx3UNTBodFmhRA
This commit is contained in:
Jeuner 2026-09-07 13:39:51 +02:00
commit a42b3e8d73
17 changed files with 1436 additions and 0 deletions

25
pyproject.toml Normal file
View file

@ -0,0 +1,25 @@
[project]
name = "astra-local-voice"
version = "0.1.0"
description = "Lokaler deutscher Sprachagent für Apple Silicon und Ollama"
requires-python = ">=3.12,<3.13"
dependencies = [
"pipecat-ai[silero,webrtc,pocket-tts]",
"mlx-audio",
"fastapi",
"uvicorn",
"httpx",
]
[dependency-groups]
dev = ["pytest", "pytest-asyncio", "pytest-cov", "playwright", "ruff"]
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
[tool.ruff]
line-length = 100
[tool.ruff.lint]
select = ["E4", "E7", "E9", "F", "I", "B", "UP"]