Overview
PhreshOS is an operating system for software built with web technologies. It runs on the machine where it is installed, keeps Programs active there, and serves a Desktop that can be opened from a browser.
The System repository contains both the machine-level service and the Desktop it provides. System state remains on the host rather than being held by the browser.
Key Features
- Keeps each Program’s server running even when no browser is open.
- Provides one owner sign-in while Programs avoid handling accounts, sessions, or connections.
- Supports communication among endpoints, services, and Programs without requiring each Program to configure its own transport.
- Controls permissions, storage, uploads, and logs centrally.
- Makes the same Desktop and Programs available from any browser that can reach the machine.
- Lets AI agents use the same Programs through the command line and SDKs while a person uses the Desktop.
System Model
PhreshOS owns the runtime state for Programs, their Processes, and their Server and Client Endpoints. It also manages authentication for the owner and every connection, along with Desktop elements such as windows, layers, views, and appearance.
A browser Desktop, a Node script, and the Phresh command can reach the same System through contracts defined in the project’s core package. Desktop components including the file manager, Settings, and wallpaper are themselves Programs built on the System.
Installation and Development
Installation is supported on macOS, Linux, and Windows with Node.js 24.15 or newer. The command-line installer adds the System as a user service, starts it, and provides the Desktop address; the first visit creates the owner account.
Source development requires Bun 1.3 and Node.js 24.15 or newer. The repository includes commands for type checking, building the server and Desktop, testing, and running a complete verification workflow.