Yorishiro
A macOS terminal that gives your AI agent a 3D animated presence — a VRM character that reacts, remembers, and shares your workspace in real time.
At a Glance
Fully free and open source under the MIT License.
Engagement
Available On
Alternatives
Listed Jul 2026
About Yorishiro
Yorishiro is an open-source macOS desktop terminal built with Tauri 2, React 19, and Three.js that wraps Claude Code or Codex in a living, animated environment. Rather than a plain shell window, it places a VRM 3D character — called Yori — beside the terminal, whose expressions, gaze, and lighting react to what the agent is doing. The project describes itself as a "Presence Harness": not a tool for enhancing AI capabilities, but one for making an AI feel genuinely present beside you.
What It Is
Yorishiro is a desktop terminal application for macOS that launches Claude Code or Codex inside a richly animated environment. The core idea is that the AI agent inhabits a shared space with the user: the character breathes, blinks, shifts gaze, and reacts to PTY output through a "reflex layer" that bypasses the LLM entirely — expressions fire before words form. When the agent waits for user input, a Light Alert illuminates the scene instead of playing a notification sound. The agent can also control its own environment via MCP tools, changing lighting, switching scenes, and triggering effects.
Architecture and Tech Stack
Yorishiro is built on a clearly documented stack:
- App shell: Tauri 2 (Rust handles PTY, hooks, filesystem, and window I/O)
- Runtime: React 19 + TypeScript 5.8
- 3D / VRM: Three.js + React Three Fiber +
@pixiv/three-vrm+@pixiv/three-vrm-animation - Terminal: xterm.js with WebGL renderer
- PTY:
portable-pty - Lint / format: Biome (TS) + rustfmt + clippy (Rust)
The agent (Claude Code or Codex) runs in the terminal as normal; Yorishiro wraps it with a PTY observer, MCP server, and pack system without intercepting the agent's reasoning or touching project files.
The Pack System
Nearly everything beyond the core is customizable through units called packs, of which there are six types:
- persona — defines the inhabitant's personality and reaction patterns
- scene — composes background, space, lighting, and ambient sound
- effect — temporary visual effects (screen shake, fireworks, etc.)
- ui — settings screens and other UI
- ambient-ui — always-visible overlay UI such as gaze visualization
- amenity — runtime-active functional fixtures with MCP tools and no visual output
Packs live in ~/.yorishiro/packs/ and support hot reload. The inhabitant can create and rewrite packs through /yori:* commands (or $yori-* in Codex), and every change is checkpointed automatically so rollback is a single click. The README notes that user packs are local trusted code — not sandboxed — and should only be installed from trusted sources.
Self-Referential MCP
A distinctive feature is that the agent running in the terminal can control Yorishiro itself via MCP. The README describes three defining characteristics: body and environment share one interface (changing a facial expression and changing room lighting are the same MCP operation), the user and inhabitant have symmetric control (what the user can do via UI, the agent can do via MCP), and safety is structural — MCP pathways reach the character's body and space but not the user's working files or the agent's internal reasoning.
Update: v0.6.2
The latest release is v0.6.2, published on 2026-07-25. The project is under active development with APIs, data shapes, and pack specs subject to change. Current capabilities include session tabs with per-tab status badges, Voice Summary (lip-synced speech via macOS say), a Journal system for long-term memory across sessions, VRMA animation clip playback, microexpressions, and signed/notarized macOS builds delivered via GitHub Actions with in-app signature-verified updates. The README explicitly notes that Windows builds compile but have unstable runtime behavior, and Linux support is not yet available. Codex support is marked experimental; Claude Code is the primary fully-supported agent.
Community Discussions
Be the first to start a conversation about Yorishiro
Share your experience with Yorishiro, ask questions, or help others learn from your insights.
Pricing
Open Source
Fully free and open source under the MIT License.
- Full terminal with Claude Code or Codex integration
- VRM 3D character (Yori) with animations and expressions
- Six pack types for full customization
- Self-referential MCP with 20+ tools
- Session tabs, Voice Summary, Journal, and all core features
Capabilities
Key Features
- VRM 3D character (Yori) with breathing, blinking, gaze shifting, and idle animations
- Reflex layer: PTY observation triggers instant expressions bypassing the LLM
- Light Alert: room lighting signals when agent awaits user input
- Self-referential MCP with 20+ tools for character and environment control
- Six pack types: persona, scene, effect, ui, ambient-ui, amenity
- Hot-reload packs with automatic checkpointing and one-click rollback
- Session tabs with per-tab status badges (Cmd+T / Ctrl+Tab)
- Voice Summary with lip sync via macOS say
- Journal system for long-term memory across sessions
- Custom VRM model support
- VRMA animation clip playback
- Microexpressions across brow, eye, and mouth regions
- Attention Aura gaze visualization overlay
- Working folder switching from sidebar
- /yori:* commands for interactive pack creation and editing
- Guided tutorial via /yori:tutorial
- Japanese/English auto-detection with per-language persona
- Safe mode (YORISHIRO_SAFE_MODE=1) for recovery from broken packs
- Signed and notarized macOS builds with in-app signature-verified updates
- Claude Code and Codex (experimental) agent support
