From 50104f9bfcbc540b61cf5e35cc007d8ab3d659dc Mon Sep 17 00:00:00 2001 From: Claude Code Date: Sat, 28 Mar 2026 14:55:34 -0700 Subject: [PATCH] =?UTF-8?q?docs(docs):=20=F0=9F=93=9D=20Update=20ARCHITECT?= =?UTF-8?q?URE.md=20with=20refined=20system=20architecture=20diagrams=20an?= =?UTF-8?q?d=20design=20patterns=20documentation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Lilith Autocommit --- docs/ARCHITECTURE.md | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index e27df4e..ab98c98 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -2,9 +2,16 @@ ## Overview -Chobit is an interactive AI companion that lives on the user's desktop as a transparent overlay with a 3D animated character. It coordinates voice interaction (STT/TTS) with LLM-driven conversation and real-time avatar animation. +Chobit is an interactive AI companion — a multi-platform Godot 4 app with a 3D VRM avatar, voice interaction, and pluggable LLM backend. Godot is the avatar runtime; all ML/GPU inference runs on external services via model-boss. -The client is a **Godot 4** application. Backend ML services (@speech-synthesis, @model-boss) run separately. +The project follows the @applications Tier 2 pattern with shared GDScript symlinked into platform-specific Godot projects: + +``` +shared/godot/ → Cross-platform source (avatar, conversation, audio, UI) +godot-desktop/src/ → → Symlink to shared/godot/ (transparent overlay, tray, window mgmt) +godot-mobile/src/ → → Symlink to shared/godot/ (touch input, on-device camera) +services/ → Desktop-only Python sidecars (bridge, tray, vision) +``` ## System Diagram @@ -323,8 +330,10 @@ Required blendshapes: `happy`, `sad`, `angry`, `surprised`, `relaxed`, `neutral` | Asset | Format | Location | |-------|--------|----------| -| VRM models | `.vrm` | `godot/models/` | -| Animations | `.tres` (Godot resource) | `godot/scenes/` | -| Audio | `.wav`, `.ogg` | `godot/audio/` | -| Scripts | `.gd` (GDScript) | `godot/scripts/` | -| Scenes | `.tscn` (Godot scene) | `godot/scenes/` | +| VRM models | `.vrm` | `godot-desktop/models/`, `godot-mobile/models/` | +| Audio assets | `.wav`, `.ogg`, `.mp3` | `godot-desktop/audio/` | +| Shared GDScript | `.gd` | `shared/godot/` (symlinked as `src/`) | +| Platform GDScript | `.gd` | `godot-{platform}/platform/` | +| Scenes | `.tscn` | `godot-{platform}/scenes/` | +| Sidecar services | `.py` | `services/{bridge,tray,vision}/` | +| Protocol types | `.ts` | `packages/chobit-core/src/` |