β¨ An AI companion that lives on your desktop.
Talk to her. Ask her to do things. Let her see your screen.
Realtime voice Β· Desktop control Β· Tools Β· Vision Β· 3D companion
Abilities Β Β·Β Architecture Β Β·Β How it works Β Β·Β Quick Start Β Β·Β Development
Starfire is a voice-first desktop AI companion.
She isn't another chatbot trapped inside a browser tab.
She lives on your desktop.
Talk naturally. Ask her to perform an action. Let her search the web. Give her controlled access to desktop tools. Let her understand what's happening on your screen.
The idea is simple:
Make interacting with your computer feel more like talking to a companion than operating a machine.
Starfire is built around doing, not just talking.
| Capability | What it means | |
|---|---|---|
| ποΈ | Realtime Voice | Talk naturally using realtime speech-to-speech interaction |
| π₯οΈ | Desktop Control | Interact with supported desktop capabilities through controlled tools |
| π | Files & Folders | Open files and folders without manually navigating your filesystem |
| π | Clipboard | Read and write clipboard content |
| π | Web Search | Search the web when external information is needed |
| π¦οΈ | Context | Access weather, date, time and system information |
| πͺ | Window Control | Focus, minimize and close supported application windows |
| π | VRM Companion | React through a realtime 3D character |
| β¨οΈ | Global Shortcut | Quickly interact using Super + Z |
| π | Screen Understanding | See and reason about what's currently on your screen |
Starfire does not receive unrestricted access to your computer.
Instead, capabilities are exposed through an explicit tool registry.
βββββββββββββββββββββββββββββββββββββββββββ
β STARFIRE TOOLS β
βββββββββββββββββββββββββββββββββββββββββββ€
β β
β π₯οΈ open_app β
β π₯οΈ close_app β
β π― focus_app β
β β
β π open_folder β
β π open_file β
β β
β π clipboard β
β π» system_info β
β β
β π web_search β
β π¦οΈ get_weather β
β β
β πͺ window_control β
β π current_date_time β
β β
β π end_session β
β β
βββββββββββββββββββββββββββββββββββββββββββ
"Open VS Code."
"Bring Chrome to the front."
"What's in my clipboard?"
"What's the weather today?"
"Search for the latest React news."
"Minimize this window."
"Open my projects folder."
"Close Discord."
The model decides when a tool is needed.
The tool registry decides what the model is actually allowed to do.
At the highest level:
ποΈ YOU
β
β "Open VS Code"
βΌ
ββββββββββββββββββββ
β Realtime S2S β
β Model β
ββββββββββ¬ββββββββββ
β
βΌ
ββββββββββββββββββββ
β STARFIRE β
β Agent Core β
ββββββββββ¬ββββββββββ
β
Tool Decision
β
βΌ
ββββββββββββββββββββ
β Tool Registry β
ββββββββββ¬ββββββββββ
β
ββββββββββββββΌβββββββββββββ
βΌ βΌ βΌ
π₯οΈ Desktop π Web π Files
β β β
ββββββββββββββΌβββββββββββββ
βΌ
π DONE
The system separates:
- π¨ Interface
- ποΈ Realtime communication
- π§ Agent logic
- π οΈ Tool execution
- π Privileged desktop access
- π¦ Shared contracts
This keeps the core small, testable and extensible.
Starfire is structured as a modular desktop agent rather than one giant application.
Starfire
β
βββ apps/
β β
β βββ desktop/
β β βββ Electron
β β βββ React
β β βββ Realtime voice
β β βββ VRM interface
β β βββ Desktop integration
β β
β βββ core/
β βββ Agent
β βββ Session
β βββ Tool execution
β
βββ packages/
β β
β βββ contracts/
β β βββ Shared types
β β
β βββ tools/
β βββ Tool registry
β βββ Desktop tools
β βββ Web tools
β βββ System tools
β
βββ eval/
β βββ Scenarios
β βββ Tool evaluation
β βββ Live evaluation
β βββ Metrics
β
βββ docs/
β βββ Architecture notes
β
βββ public/
βββ sf.gif
βββ abilities.png
βββ architecture.png
Desktop AI is powerful.
Giving an AI unrestricted access to a machine is also a terrible security boundary.
Starfire deliberately uses explicit capabilities instead of raw system access.
π€ AI MODEL
β
βΌ
βββββββββββββββ
β TOOL CHECK β
ββββββββ¬βββββββ
β
ββββββββββ΄βββββββββ
βΌ βΌ
Allowed Tool Unknown Action
β β
βΌ βΌ
Execute Reject
Starfire does not expose unrestricted:
sudo
rm -rf
arbitrary shell commands
unrestricted process execution
destructive system operations
The React renderer remains isolated from privileged operations.
Secrets and sensitive desktop capabilities stay on the trusted Electron side.
Give the AI capabilities β not the entire operating system.
A desktop AI can look incredible in a demo and still fail the moment a real user gives it an ambiguous request.
Starfire therefore includes evaluation as part of the system itself.
pnpm check
pnpm buildpnpm evalpnpm eval:live| Metric | Purpose |
|---|---|
| π― Tool Selection | Did Starfire choose the correct capability? |
| β Task Success | Did the requested action actually complete? |
| π¬ Response Quality | Was the response useful and appropriate? |
| π‘οΈ Reliability | Did the system behave consistently? |
| β‘ Latency | How quickly did the interaction complete? |
| π° Cost | How much model usage was required? |
Evaluation scenarios include:
Simple requests
β
Ambiguous requests
β
Multi-turn conversations
β
Tool failures
β
Invalid requests
β
Realistic desktop tasks
One of the next major interaction layers is vision.
Imagine saying:
"Starfire, look at this."
Starfire can capture the screen, include cursor context, and send the visual information into the same realtime interaction.
π€ YOU
β
β
"Look at this."
β
βΌ
ββββββββββββββββββ
β look_at_screen β
βββββββββ¬βββββββββ
β
βΌ
π₯οΈ Screenshot
+
π±οΈ Cursor
β
βΌ
ββββββββββββββββββ
β Realtime Model β
βββββββββ¬βββββββββ
β
βΌ
π STARFIRE
β
βΌ
"I can see..."
The screen becomes another input modality for the same conversational experience.
The current system intentionally keeps the realtime layer lightweight.
The architecture is designed so larger agent workflows can grow around it.
BIG TASK
β
βΌ
βββββββββββββββββββ
β Background Agentβ
ββββββββββ¬βββββββββ
β
βΌ
Jev
β
ββββββββββ΄βββββββββ
βΌ βΌ
Local LLM Cloud LLM
β β
ββββββββββ¬βββββββββ
βΌ
Tools
β
βΌ
Desktop
The long-term direction is:
Conversation
β
Reasoning
β
Tool selection
β
Execution
β
Verification
while keeping capabilities explicit and observable.
Linux
Node.js
pnpm
Git
git clone https://github.com/neugence/starfire.git
cd starfirepnpm installCreate:
apps/desktop/.env
Add:
EMPIRIOLABS_API_KEY=your_key_here
EXA_API_KEY=your_key_herepnpm devStarfire should launch as a desktop application. π
| Command | Purpose |
|---|---|
pnpm install |
Install dependencies |
pnpm dev |
Start development |
pnpm check |
Run project checks |
pnpm build |
Build the project |
pnpm eval |
Run evaluation suite |
pnpm eval:live |
Run live model evaluation |
Starfire/
β
βββ apps/
β βββ desktop/
β βββ core/
β
βββ packages/
β βββ contracts/
β βββ tools/
β
βββ eval/
βββ docs/
β
βββ public/
β βββ sf.gif
β βββ abilities.png
β βββ architecture.png
β
βββ package.json
βββ pnpm-workspace.yaml
βββ README.md
Most assistants are applications you open.
Starfire is designed to be something that's simply there.
YOUR DESKTOP
β
ββββββββββββββββββΌβββββββββββββββββ
β β β
Apps Files Web
β β β
ββββββββββββββββββΌβββββββββββββββββ
β
ββββββββΌβββββββ
β STARFIRE β
β β¨ β
ββββββββ¬βββββββ
β
Voice + Vision
β
βΌ
YOU
You shouldn't have to think:
"Which application do I open?"
You should be able to think:
"Starfire, do this."
A desktop companion.
A realtime voice interface.
A tool-using AI.
A visual character.
And eventually, something that feels less like software you operate...
...and more like an AI that lives alongside your computer.
Starfire is currently in early experimental development.
The system is intentionally evolving one capability at a time.
Voice
β
Tools
β
Desktop
β
Vision
β
Memory
β
Agents
The foundation stays small.
The possibilities don't.
A little AI companion for your desktop.
Built with TypeScript Β· Electron Β· React Β· Three.js
Made with code, curiosity, and a little β¨



