TL;DR

  • PhreshOS는 설치된 머신에서 프로그램을 계속 실행하고 브라우저 데스크톱으로 접근하게 하는 웹 앱용 운영체제임.
  • 시스템은 프로그램마다 실행 공간, 단일 로그인, 프로그램 간 통신, 저장 공간, 권한을 제공하며 프로그램은 자체 로직만 담당함.
  • 파일 관리자와 설정, 배경 화면을 포함한 데스크톱의 모든 요소는 시스템 일부가 아니라 시스템 위에서 실행되는 프로그램임.
  • 사용자는 macOS, Linux, Windows에서 Node.js 24.15 이상으로 설치할 수 있고, 라이브 데모는 설치 없이 한 시간 동안 이용 가능함.
  • 브라우저, Node 스크립트, phresh 명령은 @phreshos/core에 정의된 계약을 통해 동일한 시스템 상태에 접근함.

PhreshOS

  • 웹 기술로 만든 소프트웨어를 위한 운영체제임.
  • 설치된 머신에서 실행되며 프로그램을 계속 구동하고, 브라우저 데스크톱에서 프로그램을 사용할 수 있게 함.
  • 시스템은 프로그램마다 실행 공간, 단일 로그인, 다른 프로그램과의 통신, 저장 공간, 권한을 제공해 프로그램이 자체 로직만 보유하게 함.
  • 파일 관리자, 설정, 배경 화면을 포함한 데스크톱의 모든 요소는 시스템에 내장된 부분이 아니라 시스템 위에서 만든 프로그램임.
  • 이 저장소는 머신에서 실행되는 서비스인 시스템과 시스템이 제공하는 데스크톱을 포함함.
  • 관련 항목: 웹사이트, 문서, 라이브 데모, 릴리스.

프로그램이 제공받는 기능

  • 실행 공간: 프로그램의 서버는 브라우저가 열려 있는지와 관계없이 머신에서 계속 실행됨.
  • 단일 로그인: 소유자가 시스템에 로그인하며, 프로그램은 계정·세션·연결을 직접 처리하지 않음.
  • 통신: 프로그램은 별도의 전송 계층 설정 없이 자체 구성 요소와 다른 프로그램 사이에서 요청하고, 게시하고, 수신할 수 있음.
  • 권한: 시스템이 각 프로그램이 접근할 수 있는 대상을 결정함.
  • 모든 브라우저에서 접근: 머신에 연결할 수 있는 브라우저라면 어디서든 데스크톱을 열 수 있고, 프로그램은 이전 상태 그대로 표시됨.
  • 에이전트와 동시 사용: AI 에이전트는 phresh 명령줄과 SDK를 통해 프로그램을 사용하며, 사용자는 동시에 데스크톱에서 같은 프로그램을 사용할 수 있음.

사용해 보기

  • 라이브 데모는 설치할 필요 없이 한 시간 동안 사용할 수 있는 일회용 데스크톱을 제공함.
  • macOS, Linux, Windows에 설치하려면 Node.js 24.15 이상이 필요함.
  • 전역으로 @phreshos/cli를 설치한 뒤 phresh system install을 실행하면 시스템이 사용자 서비스로 설치되고 시작됨.
  • 설치 명령은 데스크톱 주소를 출력하며, 기본 주소는 http://localhost:4300임.
  • 첫 방문 시 소유자 계정이 생성됨.
  • 업데이트, 중지, 제거, 데이터 저장 위치 변경 방법은 설치 문서에서 확인할 수 있음.
  • 첫 프로그램은 phresh create my-program으로 만들고, 생성된 디렉터리로 이동한 뒤 phresh dev를 실행해 시작함.

시스템의 역할

  • 시스템은 PhreshOS의 실행 상태를 소유하며 다음을 관리함.
  • 프로그램, 프로그램 프로세스, 프로그램이 실행하는 서버 및 클라이언트 엔드포인트.
  • 엔드포인트, 서비스, 프로그램 사이의 통신.
  • 소유자 및 모든 연결의 인증.
  • 권한, 저장 공간, 업로드, 로그.
  • 창, 레이어, 뷰 평면, 모양새를 포함한 데스크톱.
  • 브라우저는 이 상태를 보여 주지만 상태 자체를 보유하지 않음.
  • 데스크톱, Node 스크립트, phresh 명령은 모두 @phreshos/core에 정의된 계약을 통해 같은 시스템에 접근함.
  • 전체 모델은 시스템 문서에서 확인할 수 있음.

개발

  • 개발 환경에는 Bun 1.3과 Node.js 24.15 이상이 필요함.
  • bun install --frozen-lockfile로 의존성을 설치하고 bun run dev로 소스에서 시스템을 실행함.
  • 개발 시스템은 이 저장소의 storage/에 데이터를 저장하고, 5300번부터 시작하는 첫 번째 사용 가능 포트를 데스크톱에 할당함.
  • 설치된 시스템은 ~/.phreshos를 사용하고 4300번부터 포트를 할당하므로 개발 시스템과 나란히 실행 가능함.
  • PHRESHOS_HOME과 PHRESHOS_PORT로 다른 홈 디렉터리나 포트를 지정할 수 있음.
  • 명령별 동작:
  • bun run check: 소스의 타입을 검사함.
  • bun run build: 서버와 데스크톱을 dist/에 빌드함.
  • bun run test: tests/의 테스트를 실행함.
  • bun run verify: 검사, 빌드, 테스트를 실행하며 릴리스 패키징, 임시 폴더 설치, 부팅 테스트도 포함함.
  • bun run pack: 릴리스 아카이브와 체크섬을 빌드함.
  • 소스는 세 부분으로 구성됨: source/server는 시스템, source/client는 데스크톱, source/shared는 양쪽에서 사용하는 코드임.

관련 저장소

  • core: PhreshOS 각 부분이 공유하는 계약.
  • client: 프로그램의 창에서 사용하는 클라이언트 엔드포인트 SDK.
  • server: 프로그램의 서버 엔드포인트 SDK.
  • node: 실행 중인 시스템에 연결하는 Node.js 코드용 SDK.
  • react: SDK용 React 바인딩.
  • react-ui: 데스크톱과 프로그램이 사용하는 컴포넌트 라이브러리.
  • cli: 시스템 설치, 프로그램 빌드, 실행 중인 시스템 접근을 담당하는 phresh 명령.
  • website: phreshos.com 및 문서.

기여

  • 기여 방법은 CONTRIBUTING.md에서 확인할 수 있음.
  • 취약점을 비공개로 신고하려면 SECURITY.md를 참고함.

라이선스

  • MIT 라이선스임.
  • 저작권 표기: © 2026 Zohayr SLILEH.