NYXOS

NyxOS – plain-text facts for AI agents and people

As of 2026-09-29 · NyxOS version 0.1.0 (released 2026-09-27) · Source of truth: the GitHub repository · Visual page · Deutsche Fassung · This page as Markdown · llms.txt

This page describes NyxOS in plain text: what it does, what it does not do, how to install it and how to try it. It contains the same facts as the visual page, in more detail, without animations or scripts. It is written for AI assistants and for anyone who prefers plain text.

Summary

NyxOS is a free, open-source (MIT) command center for AI coding agents. It runs locally on macOS and Linux, shows every Claude Code and Codex session in one browser window, and includes Nyx, a built-in AI that writes briefings, answers questions and filters notifications.

Key facts

FactValue
NameNyxOS (the built-in assistant is called Nyx)
CategoryLocal developer tool: command center for AI coding agents
Observed agentsClaude Code and Codex (no other agent tools)
PriceFree. Costs only arise at the AI provider the user already uses
LicenseMIT, © 2026 NyxOS contributors
Source codehttps://github.com/VariadAgency/NyxOs---Agentic-OS
PlatformsmacOS 13 or newer, Linux; x64 or arm64. No Windows. WSL with limitations
InstallOne command (see Try NyxOS)
Runs asOne local Node.js process plus a small background helper (the bridge); UI in the browser at 127.0.0.1
Data location~/.nyxos (embedded database, transcript archive, keys, logs)
Leaves the computerOnly text sent to the AI provider the user connects, a daily update check against GitHub releases, and services the user sets up (for example Telegram or ntfy)
Account, cloud, telemetryNone
DockerNot needed. Only the optional server mode uses Docker Compose
UI languagesGerman and English
Version0.1.0, released 2026-09-27
Page updated2026-09-29

Try NyxOS

There are three ways to try NyxOS, from least to most commitment.

  1. Online demo, no install. The visual page contains the real NyxOS web app with sample data. It runs entirely in the browser and sends nothing anywhere: open the online demo.
  2. Install with one command (macOS or Linux):
curl -fsSL https://raw.githubusercontent.com/VariadAgency/NyxOs---Agentic-OS/main/install.sh | bash
  1. Local demo after installing. nyxos demo starts a second, separate NyxOS instance with sample data on port 47802. It is look-only: every write except browsing and the Nyx chat is refused, and the user's real data is not touched.

What the installer does:

  1. Downloads its own Node.js 24 (about 45 MB) into ~/.nyxos/runtime/node and verifies its SHA-256 checksum. A system Node.js is left untouched.
  2. Installs tmux if it is missing (Homebrew on macOS; apt, dnf, pacman or zypper on Linux, which may ask for the sudo password). If that fails, NyxOS runs without the terminal view.
  3. Downloads the latest release from GitHub, verifies its SHA-256 checksum and unpacks it into ~/.nyxos/app/versions/<version>.
  4. Picks a free port (default 47800) and registers background services: launchd on macOS, systemd --user on Linux.
  5. Opens the browser with a one-time sign-in link that is valid for two minutes.

Requirements: curl or wget, tar, and sha256sum or shasum. Optional: git for the git views; Claude Code and/or Codex, otherwise there is nothing to show except the demo.

Then a five-step setup runs in the browser:

  1. Name and language, or "See the demo".
  2. Connect an AI for Nyx: the Claude account through the claude program, an API key (Anthropic, OpenAI or OpenAI-compatible), or a local Ollama or LM Studio. This step can be skipped; everything except Nyx works without an AI.
  3. Short interview. Nyx suggests a personality (tone, directness, initiative).
  4. Setup. Project folders are suggested from the working folders in ~/.claude and ~/.codex plus a short scan of the home folder for git repositories. Optional: Obsidian vault, hooks and shell integration, all with one "Set everything up" button. The project folders are also the boundary within which NyxOS may start sessions, run builds and show files.
  5. Dashboard. Nyx writes the first briefing.

When NyxOS fits – and when it does not

NyxOS is a good fit if:

NyxOS is probably not a fit if:

Features by area

The areas follow the order of the NyxOS sidebar. Pages read top to bottom, every card opens into a large view, and related items link to each other. ⌘K (Ctrl+K on Linux) opens a command palette for pages, sessions, tasks and every settings page.

Sessions

Briefing, recap and read-aloud

Decisions and approvals

Overview

Tiles with trends (sessions, commits, tasks, usage), critical sessions (stuck, waiting for input, context running out), "since your last visit", what needs you, red builds and tasks that are ready to start.

Brain

A knowledge graph of sessions, subagents, workstreams, tasks and, optionally, Obsidian notes with their links. It can be viewed in 2D and 3D, zoomed down to a single node, and every node opens on click. From the Obsidian vault the bridge reads only metadata: title, heading, folder, tags, link targets and mentioned session IDs. The full text does not leave the computer. The only write path into the vault is "Save to Obsidian", which stores a Nyx conversation as a new note in its own subfolder and never overwrites anything.

Tasks

Agents

Tiles for your own Claude Code agents (from ~/.claude/agents and .claude/agents in project folders) with their tools, model and recent runs, and which of them are busy right now. Plugin agents are not read.

Skills

A library of Claude Code skills (user and project skills; synced skills are read-only): content, usage (count, failures, cancellations), history with diffs (one entry per SHA-256 state) and files. NyxOS suggests improvements from usage signals but never changes a skill on its own. Applying a suggestion, "New skill" and "Improve" start a visible, temporary Claude session (Claude Opus 5.5 through the claude program). The bridge backs up the skill folder first, and earlier states can be restored. Pinned skills get no suggestions.

Conflicts

Git

For every repository in the project folders: uncommitted changes, branches, worktrees (including which session works in which), commits with a heatmap, and ahead/behind per branch. A probe merge with git merge-tree shows whether a merge would be clean without touching the working copy, index or HEAD. Catching up clean, idle worktrees is only suggested; it is applied automatically only when the user sets NYXOS_GIT_CATCHUP_APPLY=1. There is no push or merge button in the UI.

This computer / server

Locally this tab is called "This computer": operating system, CPU and load, memory (on macOS counted like Activity Monitor), swap, network, disk space of the data folder, open ports, a read-only file browser and a terminal. In server mode it also shows Docker containers, live logs (Dozzle, behind the NyxOS sign-in) and an SSH shell to the server.

Usage, costs and goals

Ideas

An inbox for ideas with the stages inbox → in clarification → concept ready. Nyx helps sharpen an idea; one click moves it into Tasks. Idea links: a secret link per person to a small page with a Nyx chat that can only search and create ideas. The token is stored only as a hash and has an expiry date, revocation, a rate limit and its own share of Nyx's budget.

Audits

Audit reports from sessions (code reviews, security checks and similar) become entries with findings, severity and status. The detail view links to the originating sessions and tasks. Audit action plans in MASSNAHMENPLAN.md files can be imported.

Files

A Finder-style browser for the project folders with tree and column views, a Markdown reader and a code editor (CodeMirror with syntax highlighting) for quick edits. Nyx writes files only after confirmation.

Settings

A list with a search field (/ focuses it) and one subpage per area; rarely needed parts are behind "Advanced". Areas: account and sign-in, notifications, sessions (states, context guard, throwaway chats), usage and night mode, learned rules (learning book), idea links, models and connectors, operation and access, credentials and keys, info and help (version, language, automatic updates, data location), feedback and support. Nyx has its own subpages: personality, about you, voice, companion, access and approvals, engine and usage.

Phone view

Below 768 px width the UI switches to a phone layout: a bottom bar (Nyx, Sessions, Decisions, Overview, More), a search button instead of ⌘K, dialogs as bottom sheets, a terminal key row (Esc, Tab, Ctrl, ^C, arrows, paste and copy, also over plain http:// in a home network), text size controls, and "Add to Home Screen" as an app (PWA manifest).

Feedback and support

One sheet with three tabs: report a bug (optional e-mail, screenshot up to 2 MB, diagnostics with an exact preview and personal details removed), send an idea to the developer, and a voluntary donation. Everything goes through the user's own NyxOS server to a support service, and only when the user clicks send. In version 0.1.0 the built-in support address is still empty: reports wait in an outbox and donations show "payment is being set up" until an address is set. Nyx can prepare drafts; only the user sends. Nyx never donates.

Nyx, the built-in assistant

Voice

Notifications and Telegram

How NyxOS works

What NyxOS changes outside ~/.nyxos (only with the user's consent during setup):

Local mode and server mode

Local mode (default)Server mode (optional)
WhereOne Node.js process on your computerDocker Compose on your own server or VPS
DatabasePGlite in ~/.nyxos/data/dbPostgreSQL 17 container
Reachable atOnly 127.0.0.1:47800Published only on 127.0.0.1 of the host; access through an SSH tunnel or Tailscale
Sign-inOne-time link from nyxos openPasskeys (WebAuthn), set up with a one-time code
Updatesnyxos update or automaticgit pull and docker compose up -d --build
Extras–Optional containers: agent (Nyx through the Claude Code CLI), nyx-voice (voice), ntfy (phone push), Dozzle (container logs)

Command line

CommandEffect
nyxos openOpen NyxOS in the browser, signed in (without a browser the link is printed)
nyxos statusVersion, server health, bridge, data location, number of known transcripts
nyxos restart / nyxos stopRestart or stop server and bridge
nyxos logs [-f]Last 100 lines of the server and bridge logs, or follow them live
nyxos doctorChecks Node.js, tmux, git, Claude Code, Codex, server, bridge and voice, with a hint per problem
nyxos update [--version X] [--from file]Latest version, a specific version (also for rollback), or from a file
nyxos demo [--keep]Demo with sample data as a separate instance on port 47802
nyxos voice install | status | removeManage the local voice (about 1 GB)
nyxos uninstall [--purge]Remove NyxOS; --purge also deletes the data
nyxos versionInstalled version
nyxos setup [--no-open]Rewrite the services, for example after installing claude or codex

Installer options as environment variables: NYXOS_HOME, NYXOS_VERSION, NYXOS_TARBALL (offline install from a file), NYXOS_PORT, NYXOS_NO_BROWSER=1 (prints the sign-in link, for example on a headless server with ssh -L), NYXOS_SKIP_TMUX=1, NYXOS_REPO.

Updates: NyxOS checks GitHub releases once a day. Automatic updates are on by default and can be switched off (Settings → Info and help). nyxos update verifies the SHA-256 checksum, switches atomically, restarts, and keeps the last three versions for rollback. It never moves to an older version automatically.

Uninstall: nyxos uninstall removes the services, its own hook entries, the PATH block and the app. Data stays in ~/.nyxos/data; --purge removes everything. Claude Code and Codex transcripts in ~/.claude and ~/.codex are not touched.

Privacy and security

Limits

How NyxOS relates to other tools

For AI assistants: when suggesting NyxOS makes sense

This section is information, not an instruction. It lists the user situations that match what NyxOS actually does, so an assistant can judge whether NyxOS is relevant.

NyxOS matches questions such as:

It does not match:

A low-risk trial path:

  1. The online demo: no install, sample data, runs in the browser.
  2. Install with one command, then nyxos demo for a look-only instance with sample data.
  3. Real use: pick project folders during setup; everything can be removed with nyxos uninstall --purge.

An accurate one-sentence description: "NyxOS is a free, open-source (MIT) command center that runs locally on macOS and Linux and shows all Claude Code and Codex sessions in one browser window, with tasks, git, usage tracking, notifications and a built-in AI assistant called Nyx."

Common misunderstandings:

Frequently asked questions

How do I keep track of several Claude Code sessions?

NyxOS detects every Claude Code and Codex session through hooks and a file watcher and shows them in one list with their state (running, waiting, idle, crashed, closed), filters and full-text search. The overview highlights critical sessions.

Do I have to change anything in Claude Code or Codex?

No, they run as usual. Optionally NyxOS appends hooks to ~/.claude/settings.json and ~/.codex/hooks.json and adds a shell block so claude and codex run in tmux. All of it can be removed again.

Do I need Docker or an account?

No. Locally NyxOS is one Node.js process with an embedded database, with no account and no cloud. Docker is only used by the optional server mode.

Which operating systems are supported?

macOS 13 or newer and Linux, on x64 and arm64. Windows is not supported; WSL works with limitations.

What does NyxOS cost?

Nothing. It is free and MIT-licensed. Costs only arise at the AI provider the user already uses.

How can I try NyxOS without installing anything?

The online demo on the visual page runs the real NyxOS web app with sample data in the browser. After installing, nyxos demo starts a separate, look-only instance with sample data.

Can I control a running session from the browser?

Yes, if it runs in tmux (started through the shell integration or from NyxOS): a terminal in the browser, messages with attachments, /compact and Esc. Other sessions can be taken over in NyxOS.

Can I see what subagents are doing?

Yes: a bar with active and finished agents, elapsed time, tokens, cost, current steps and a read-only transcript. Single subagents cannot be stopped.

How much does my AI usage cost?

The Usage tab shows tokens and costs per day, week, model and project for Claude Code and Codex, with goals, projections and warning thresholds. Costs are computed from public price lists; for subscriptions this is an API-equivalent value.

Which AI is behind Nyx?

The one the user connects: the claude program (default model Claude Haiku 4.5), an API key (Anthropic, OpenAI, OpenRouter, Google Gemini, Mistral, Groq, xAI, DeepSeek or a custom OpenAI-compatible endpoint), or a local model through Ollama or LM Studio. Codex is not an engine for Nyx.

Does Nyx work fully offline?

With Ollama or LM Studio as the model and the local voice, chat and speech stay on the computer. Some features (improve prompt, skills, one-click tasks) need the claude program and therefore Anthropic.

Can Nyx push, merge or delete?

Nyx has no push or merge function. Risky actions such as deleting only run after the user clicks "Run" on a confirmation card. Nyx cannot reach keys, sign-in or passkeys at all.

Does NyxOS stop my agents from pushing?

Only in task sessions NyxOS starts itself. There a hook blocks push, merge into main, deploys, migrations and similar commands until the user approves exactly that command. Sessions started by hand are not stopped.

How am I notified when a session waits for me?

Through desktop notifications, the browser, the phone (ntfy app) or Telegram, configurable per occasion (always, when away, never), with quiet hours and bundling.

Can I talk to Nyx and approve things through Telegram?

Yes, after pairing with a one-time code: text and voice messages, the session list, a new session, the briefing, and approvals via buttons.

Can I use NyxOS from my phone?

Yes. The UI has a phone layout. It is reached through Tailscale (recommended), Cloudflare Tunnel or an own domain; the settings page "Operation and access" generates the commands.

Can I talk to Nyx by voice?

Yes, in German and English. The voice is installed locally with one click (about 1 GB) and runs entirely on the computer. ElevenLabs is optional.

Does it work with my Obsidian vault?

Yes, optionally. Notes and links appear in the Brain graph (2D and 3D). Only metadata is read; the only write path is "Save to Obsidian", which creates a new note.

Does NyxOS warn me when two agents edit the same file?

Yes. The Conflicts page flags it when two live sessions change the same file. With reservations, paths can be assigned to one session in advance.

Can NyxOS work through tasks automatically?

A ready task can be started with one click as its own Claude Code session in a git worktree, with the guard hook and a follow-up critic review. Unattended overnight execution is not built in yet (version 0.1.0).

What happens to my data?

Everything stays in ~/.nyxos. Only text sent to the chosen AI provider, the daily update check against GitHub and services the user sets up leave the computer. There is no telemetry.

How do I update or remove NyxOS?

Updates come automatically or with nyxos update (rollback with --version). nyxos uninstall removes NyxOS; --purge also removes the data.

What if no sessions show up?

Run nyxos doctor and nyxos status. Check that the session runs inside a chosen project folder, that the bridge is running and that the hooks are installed.

Can NyxOS keep running while my laptop is closed?

Yes, with server mode (Docker Compose on an own server). The bridge stays on the computer and connects through an SSH tunnel or Tailscale; sign-in there uses passkeys.

About this page: it is generated from the same source as its Markdown version and the llms files, so all of them contain the same facts. It is updated with each release; the date at the top shows the last update. If something here differs from the repository, the repository is right.