naomi f393dfb359
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 47s
feat: initial prototype
2026-01-14 20:56:28 -08:00
2026-01-14 18:24:35 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 18:24:35 -08:00
2026-01-14 18:24:35 -08:00
2026-01-14 18:24:35 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 18:24:35 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 18:24:35 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 18:24:35 -08:00
2026-01-14 20:56:28 -08:00
2026-01-14 20:56:28 -08:00

Hikari Desktop

A Linux desktop application that wraps Claude Code with an anime girl character that reacts to Claude's activities in real-time.

Features

  • Visual character that reflects Claude's current state (thinking, typing, searching, coding, etc.)
  • Terminal-style output display
  • Permission prompts with approve/deny interface
  • Real-time state detection from Claude Code's NDJSON stream

Installation

1. Install Claude Code

Hikari Desktop requires Claude Code to be installed and authenticated:

npm install -g @anthropic-ai/claude-code
claude  # Follow the prompts to authenticate

2. Install Runtime Dependencies

Debian/Ubuntu:

sudo apt install libwebkit2gtk-4.1-0 libgtk-3-0 libayatana-appindicator3-1 xdg-utils

Fedora:

sudo dnf install webkit2gtk4.1 gtk3 libappindicator-gtk3 xdg-utils

Arch Linux:

sudo pacman -S webkit2gtk-4.1 gtk3 libappindicator-gtk3 xdg-utils
Package Purpose
webkit2gtk-4.1 WebView rendering (app UI)
gtk3 Window management and native widgets
libappindicator System tray support
xdg-utils Opening URLs/files with default applications

3. Install Hikari Desktop

Download the latest release for your distribution:

AppImage (any distro):

chmod +x hikari-desktop_*.AppImage
./hikari-desktop_*.AppImage

Debian/Ubuntu:

sudo dpkg -i hikari-desktop_*.deb

Fedora:

sudo rpm -i hikari-desktop-*.rpm

Character States

State Trigger
Idle Waiting for user input
Thinking Processing/API call in progress
Typing Streaming text output
Searching Using Read/Glob/Grep tools
Coding Using Edit/Write tools
MCP Running MCP tool calls
Permission Permission prompt needed
Success Task completed
Error Error occurred

Building from Source

Prerequisites

  • Node.js and pnpm
  • Rust toolchain

Build

# Install dependencies
pnpm install

# Development mode
pnpm run dev

# Build for Linux
pnpm tauri build

Architecture

Linux (Tauri App)
├── Svelte Frontend
│   ├── AnimeGirl (sprites + animations)
│   ├── Terminal (output display)
│   ├── InputBar (user input)
│   └── PermissionModal (approve/deny)
└── Rust Backend
    ├── Process Manager (spawn & communicate)
    └── State Parser (NDJSON → character state)
                │
                │ stdin/stdout (NDJSON stream)
                ▼
claude -p --output-format stream-json --input-format stream-json

Tech Stack

  • Tauri 2.x - Desktop framework with Rust backend
  • Svelte 5 - Reactive frontend with runes
  • Tailwind CSS - Styling
  • Tokio - Async runtime for process management

Feedback and Bugs

If you have feedback or a bug report, please feel free to open a ticket request in our Discord!

Contributing

If you would like to contribute to the project, you may create a Pull Request containing your proposed changes and we will review it as soon as we are able! Please review our contributing guidelines first.

Code of Conduct

Before interacting with our community, please read our Code of Conduct.

License

This software is licensed under our global software license.

Copyright held by Naomi Carrigan.

Contact

We may be contacted through our Chat Server or via email at contact@nhcarrigan.com.

S
Description
A cute desktop wrapper for Claude Code with an anime girl.
Readme 23 MiB
v1.14.0 Latest
2026-04-13 16:18:51 -07:00
Languages
TypeScript 35.8%
Svelte 33.7%
Rust 29.5%
CSS 0.6%
JavaScript 0.2%
Other 0.1%