starnet README

The project's README from github.com/androoAGI/starnet. As one markdown file: README.md.

StarNet

A living pixel-art station where real AI agents do real work.

Download Platforms License: MIT Local-first

Download · Install guide · Run from source · Docs · Contributing

The StarNet station — rooms, crew, and workstations rendered from live harness state

StarNet is a local-first desktop harness where you create AI agents, organize them into a pixel-art space station, and watch them perform real work with real models and tools. The station is not decoration — it is a projection of live runtime state, and the product contract is literal: A room is a capability-scoped team, a hallway is an authorized handoff lane, and a placed object is a real capability grant. The layout you draw is the workflow the agents run.

Start with one agent, then place bays or summon specialists to run more, concurrently — each a genuinely distinct, bounded agent run with its own workspace and permissions. The harness performs real model calls, real tools, real cost rather than animating a simulation.

Features

A crew, not a chatbot Create agents with distinct classes, personas, and loadouts. Run several at once — each gets its own workspace, transcript, memory, and bounded permissions.
Bring your own models Paste an OpenRouter key, or sign in with supported provider accounts (Anthropic, OpenAI, Google) — keys live in the OS keychain, never in the frontend.
Message it from anywhere Wire agents to Telegram, Discord, Slack, Signal, or Matrix and talk to your station away from the desk.
Night Shift Leave the station running and agents keep working inside an explicit, adjustable leash — every away-action is logged and reviewable.
Recipes, skills, schedules Launch proven multi-step recipes, grant reusable skills, and put work on cron schedules with visible output.
Asks before it guesses Task Briefs turn ambiguity into one concrete question with options — over any connected channel — instead of a silent wrong guess.
Finished work has a front door Deliverables land in the OUTBOX as real files you open, not chat scrollback you archaeology.
MCP connectors Attach Model Context Protocol servers and paste-a-key/OAuth connectors to extend what agents can touch.
Voice Push-to-talk dictation in, one consistent station voice out.
Real ledgers Spend, budgets, and run history persist on disk and are shown as-is.

What is real

StarNet does not simulate revenue, completed work, model activity, or spend. Its core product law is that the interface must never assert state the harness cannot prove.

Download

Desktop builds are published on the StarNet releases page.

Platform Asset
Windows (10/11, 64-bit) StarNet_<version>_x64-setup.exe
macOS — Apple Silicon (M1–M4) StarNet_<version>_aarch64.dmg
macOS — Intel StarNet_<version>_x64.dmg

Apple Silicon note: use the native aarch64 DMG. Avoid the x64 DMG on Apple Silicon: it runs under Rosetta 2 rather than using the native architecture.

The public release train supports Windows and macOS. It refuses to stage a release unless the Windows installer passes Authenticode and timestamp verification, both Mac builds pass Developer ID checks and Apple notarization, and every updater artifact has a valid updater signature. Those are pipeline requirements, not proof that a particular downloaded or installed copy was tested on your machine; INSTALL.md explains what to verify and when to stop. Linux packages are internal build artifacts only and are not a supported public release target.

Early release: Windows is the most-tested desktop target. macOS has less real-world coverage. Broken? Tell us: [email protected].

Run from source

Requirements: Node.js 18+ (Node.js 22 matches CI), Git. Rust and the Tauri prerequisites only for the desktop shell.

The sidecar uses Node core modules only, so it runs without installing anything:

git clone https://github.com/androoAGI/starnet.git
cd starnet
node sidecar/index.js

Open http://localhost:8787, then connect a provider — bring your own OpenRouter API key (BYOK) or use a supported OAuth sign-in. Provider requests leave your machine when you run an agent; station state, transcripts, memory, and ledgers stay in the local StarNet workspace unless you explicitly use a network tool or connector. See PRIVACY.md for the full data map.

Run free with a local model

No key, no account, no bill: install Ollama, pull a model (ollama pull llama3.1), and pick OLLAMA as the provider — on the first-run brain screen, or later in SETTINGS → PROVIDERS. StarNet talks to Ollama on 127.0.0.1:11434 and only reports it ready once it can list your local models. Honest caveat: local models are smaller than the cloud ones, so expect slower and rougher work on long tasks.

For desktop development:

npm ci
npm run desktop:dev     # dev shell
npm run desktop:build   # build installers locally

Coming from OpenClaw or Hermes?

StarNet can import an existing agent: point it at your on-disk OpenClaw or Hermes home and it mints a StarNet agent from the persona, instructions, memory, and model it finds. API keys never transfer — you re-enter those in the KEYS tab.

Architecture

Path Responsibility
frontend/ Vanilla JavaScript station world and desktop UI.
sidecar/ Local Node agent runtime: providers, tools, persistence, budgets, consent.
shared/ Additive cross-boundary event and schema contracts.
src-tauri/ Rust/Tauri desktop shell and bundled runtime.
test/ Unit, contract, integration, and release gates.
qa/ Live QA receipts, journeys, findings ledger, and release-readiness authority.

The frontend consumes real sidecar events over localhost HTTP/NDJSON and SSE. Secrets belong to the local authority: Secrets are held by the sidecar / OS keychain, never in the frontend.

Start with docs/INDEX.md for the living documentation. Older planning documents remain in the repository as design history and are labeled accordingly.

Testing

npm run test:fast          # required merge gate
npm run test:http          # live sidecar HTTP/E2E suite
npm test                   # validation + world + fast + HTTP suites
npm run security:secrets   # full-history secret scan; requires Gitleaks in PATH

The release aggregate is npm run qa:ready. It is candidate-bound: any new commit invalidates the prior READY receipt until the affected live gates are rerun.

Contributing and security

Contributions are welcome — read CONTRIBUTING.md and follow the Code of Conduct.

Do not report vulnerabilities in a public issue. Follow SECURITY.md for private reporting instructions.

License

StarNet is open source under the MIT License. Third-party components remain under their original licenses — see NOTICE.md.

The MIT License covers the code only. The StarNet name, the logo, the station artwork and sprites, and the rest of the project's brand identity are owned by Andrew Sims and are not licensed with it — no trademark or other brand rights are granted, expressly or by implication.

MIT means you may fork, modify, and redistribute the code, including commercially. What you may not do is ship it as StarNet: forks and derivatives must use their own name, logo, and artwork, and must not present themselves as this project or as endorsed by it.

starnet (androoAGI/starnet)

Searching Database…

1.5K ·GitHub
What is this?StarNet is a local-first desktop harness where you create AI agents, arrange them into a pixel-art space station, and watch them actually perform work with real models and tools — the layout is a live projection of the harness's real runtime state, not decoration.
Is the station just a decorative UI, or does it mean something?The map is the actual permission model: a room is a capability-scoped team, a hallway is an authorized handoff lane, and any placed object is a real capability grant — the layout you draw is literally the workflow the agents execute.
How do I get it running?Download a prebuilt desktop installer from the releases page (Windows x64-setup.exe, macOS aarch64.dmg for Apple Silicon, or macOS x64.dmg for Intel), or run from source with Node.js 18+ and Git (Rust and Tauri prerequisites are only needed to build the desktop shell).
Do I need an API key to use it?Not necessarily — you can bring your own OpenRouter key or sign in with Anthropic, OpenAI, or Google, but you can also run entirely free by installing Ollama, pulling a local model, and picking OLLAMA as the provider.
Is this ready to run on Linux, or just Windows and macOS?Only Windows and macOS get supported public releases; Linux builds are internal artifacts only, not a shipped target. It's also an early release — Windows is the most-tested desktop target, while macOS has less real-world coverage.
Can I reach my agents when I'm away from the desktop?Yes — you can wire agents to Telegram, Discord, Slack, Signal, or Matrix to message your station remotely, and a Night Shift mode lets agents keep working unattended within an adjustable, logged leash.
Where do my API keys and agent data actually go?Provider requests leave your machine when an agent runs, but secrets live in the OS keychain/sidecar and never touch the frontend, and station state, transcripts, memory, and ledgers stay in your local workspace unless you use a network tool or connector.
Can I fork this and ship my own branded version?The code is MIT and can be forked, modified, and redistributed (including commercially), but the StarNet name, logo, station artwork, and brand identity are not covered by the license, so forks must use their own name and art and not present themselves as StarNet.
What happens when an agent is unsure what to do?Instead of guessing silently, StarNet's Task Briefs turn ambiguity into one concrete question with options, sent over any connected channel, so you make the call before work proceeds.
Where do finished agent outputs end up?Completed deliverables land in an OUTBOX as real files you open directly, instead of being buried in chat scrollback you have to dig through.
Can I migrate agents from OpenClaw or Hermes?Yes — point StarNet at your existing OpenClaw or Hermes home directory and it will mint a new StarNet agent from the found persona, instructions, memory, and model, though API keys are never transferred and must be re-entered.
How can I extend what an agent is allowed to touch?You can attach Model Context Protocol (MCP) servers and paste-a-key/OAuth connectors to grant agents access to additional tools and services beyond the built-in capabilities.
What are similar projects?brigade, evenfire, holaOS, hive, turnstone, 1code, laya, openworker
Creator
androoAGI
Size
1.8 GB
Stars
1.5K
Age
4mo
Commits · 90 Days