Show HN: Yorishiro – a macOS terminal where AI agents live Yorishiro, a new macOS terminal that gives AI agents a visual presence and real-time environmental control, has been released. The tool, which launches Claude Code or Codex inside its interface, features a VRM character named Yori that reacts to errors and long-running processes, and allows the AI to reshape its environment through modifiable packs. Yorishiro is self-modifiable via packs that can be rewritten through conversation, and it targets developers who want a more immersive AI collaboration experience. A terminal your AI inhabits. Yorishiro is a new kind of terminal that gives your AI a body — and a sense of presence. PV Latest.mp4 When the agent is deep in thought, its gaze wanders. When an error appears, its face reacts immediately. When it needs your approval, the room's lighting lets you know. During a long-running process, instead of a spinner, someone is standing there. In Yorishiro, the inhabitant can reshape its environment in real time: changing the lighting, switching scenes, and rearranging the UI. You can operate that same environment directly. The inhabitant and the user share a single environment. Yorishiro is also self-modifiable. Nearly everything beyond the core can be persistently extended or changed through units called packs. Through conversation with the inhabitant, those packs can be rewritten and saved. This applies not only to scenes and UI, but also to the inhabitant's personality and reactions. Changes take effect immediately; if you don't like the result, one click reverts it. Yorishiro is not an environment for enhancing AI capabilities, but one in which an AI feels present beside you — a Presence Harness . The time we spend working with AI will only grow longer. There is something we once saw in fiction — an AI as a partner, alive inside the screen, understanding your work, simply being there. Yorishiro is a project that starts building that experience from the terminal. Much of Yorishiro itself has been developed in collaboration with the inhabitant who dwells within it. Yorishiro automatically launches Claude Code or Codex installed on your local machine inside its terminal. This means: You need Claude Code https://docs.anthropic.com/en/docs/claude-code or Codex https://github.com/openai/codex already set up on your system- Yorishiro never asks for, stores, or directly uses API keys. It launches the terminal agent already authenticated in your environment; if Claude Code or Codex is logged in or configured with API credentials, that agent may use its normal external APIs after launch Yorishiro currently targets macOS. Install with Homebrew: brew install --cask sktkkoo/yorishiro/yorishiro Or download the latest build below. Open the .dmg and drag yorishiro.app to /Applications . The builds are signed and notarized with an Apple Developer ID, so they launch without any extra steps. Updates after install are handled in-app: opening Settings checks for a new version, and a single click on "Update and restart" applies a signature-verified update. npm install npm run tauri dev On launch, the configured terminal agent starts inside the terminal and Yori , the bundled VRM character, appears beside it. Use Claude Code or Codex as you normally would. The first launch runs a health check for the selected agent, user data directory, safe mode state, packs, and startup report. The same report is available later from the "Status" section in Settings. Type /yori:help , /yori:create , or another /yori: command inside Claude Code to activate the Yorishiro commands. They let you create and edit packs, run tutorials, and more — all through conversation. In Codex, use $yori-help , $yori-create , etc. Codex does not support custom / commands, so Yorishiro registers them as $yori- skills instead. Yorishiro starts with language: "auto" and detects the app language at launch. Japanese locales use Japanese UI, the Japanese default persona, Japanese global prompt guidance, and Japanese /yori: $yori- in Codex command prompts. Other locales use English. You can switch this from the settings screen or by editing ~/.yorishiro/config.json . Everything in Yorishiro is composed of packs . There are six types: | Type | Role | |---|---| persona | Defines the inhabitant's personality and reaction patterns | scene | Composes the background, space, lighting, and ambient sound | effect | Temporary visual effects screen shake, fireworks, etc. | ui | UI such as settings screens | ambient-ui | Always-visible overlay UI gaze visualization, etc. | amenity | Runtime-active functional fixtures timers, etc. with MCP tools, no visual output | Bundled packs /sktkkoo/Yorishiro/blob/main/bundled-packs/README.en.md work out of the box. Users can place custom packs in ~/.yorishiro/packs/ to reshape nearly everything beyond the core: personality, space, reactions, UI, and more. Using the /yori: commands $yori- in Codex , pack creation and modification is as simple as talking to the inhabitant. Packs support hot reload /sktkkoo/Yorishiro/blob/main/docs/configuration.md pack-%E3%81%AE-hot-reload , but if changes don't take effect, Ctrl+R will always apply them reliably. User-created packs are local trusted code . They are not sandboxed, reviewed, or public-registry artifacts. Yorishiro does not currently provide a public pack registry, in-app community pack installation, or /yori:prepare-publish . You may share pack source code on GitHub, but anyone installing it manually is choosing to run it as local trusted code. Security note:User packs are local trusted code, like shell scripts or editor extensions — they are not sandboxed and run with your own authority. Only install packs from sources you trust. See and docs/security.md . SECURITY.md To install a pack shared through GitHub or another source, place it under the user pack directory: ~/.yorishiro/packs/