Ecosystem Map
4개 코어 프로젝트가 어떻게 얹히고 호출하는지를 그림으로 본다. oxicode는 토대, oxios는 그 위에 얹히는 OS, oxibrain은 standalone second brain, oxibrowser는 oxios의 search/pub에 끼어드는 브라우저다.
구조
프로젝트 상세
모든 프로젝트의 토대. AI 에이전트, 도구, 공급자 라우팅, hashline edit, snapcompact를 라이브러리 + 바이너리 양면으로 제공.
ports/adapters 헥사고날. oxibrain-ports 5개 trait(ClockPort/EmbeddingPort/LlmPort/RerankPort/TokenizerPort)으로 인터페이스 분리, llm/embed/mcp가 어댑터. brain-ui가 1st-class client.
Rust-native 풀스택 브라우저. boa_engine으로 JS 평가, CDP 12개 도메인, search-only와 pub 두 경로 모두 지원.
Kernel/Supervisor/Surface 3계층. oxicode-sdk를 단일 wire 의존으로 사용. oxibrain은 Unix socket BrainClient로 호출.
소비자 / 클라이언트
- OMP (Oh My Pi) 에이전트 하네스 — xd:// 도구 20+, skills 60+, AGENTS.md 표준, hub, mnemopi memory
- Claude Code Anthropic의 CLI 코딩 에이전트 (외부 벤더)
- OpenClaw 독립 AI 코딩 어시스턴트 (외부, [INFERENCE])
- oxios companion (React Native + Expo) 모바일 / 원격 채팅 클라이언트. Noise_XX_ChaChaPoly 와이어 프로토콜.
- apps/brain-ui (Vite + React 19) oxibrain의 1st-class web client. oxios web과 동등한 지위.
oxibrain 분리 product 진행 상황
AGENTS.md가 "It is a standalone product, not an oxios component" 명시. cargo tree guard로 oxios/oxicode 의존이 빌드에 들어오는 것 자체를 차단.
oxibrain-mcp가 5-transport 제공 (stdio/stdio_at/socket/socket_auth/http). oxios는 oxibrain-client로 socket 호출. 단일 바이너리 안에 CLI + MCP server + daemon subcommands.
oxibrain은 github.com/a7garden/oxibrain 단독 repo의 daemon. apps/brain-ui가 표준 web client.
token/Scope 기반. oxibrain이 multi-tenant 형태로 출시, 여러 client(brain-ui, oxios, 모바일)가 동시 접속.
왜 이런 분리인가
- oxicode: 모든 에이전트 코드의 토대. CLI는 SDK의 thin wrapper일 뿐이다 (SDK = behavior, consumer = policy).
- oxibrain: 지식/메모리는 선택적 standalone product. oxios가 망가져도 산다.
- oxibrowser: 검색/게시는 에이전트의 도구일 뿐. search-only / pub 두 경로를 feature-gate로 노출.
- oxios: 4개 위에 얹히는 OS. 모든 것을 glue하는 Kernel + Surface.