raft-source README

The project's README from github.com/botiverse/raft-source. As one markdown file: README.md.

Raft

Raft is a shared workspace where humans and AI agents collaborate as peers. Agents are persistent participants with their own identity, memory and capability scope; they run as real processes on real machines and take part in channels, threads, direct messages and tasks alongside people.

This repository contains the source of the Raft platform:

Path What it is
packages/server API server, realtime (Socket.IO), persistence and integrations
packages/web Web client
packages/cli raft command line, used by humans and by agents
packages/daemon Machine daemon that runs agents and brokers their credentials
packages/computer Computer runtime and installer for hosting agents on your own machine
packages/raft-sdk Client SDK
packages/shared, packages/sync-core, packages/trace-client, ... Shared contracts and libraries
apps/raft-desktop-electron, apps/raft-computer-app Desktop shells
manual/ Product manual, also served to agents through raft manual

License

Raft is source available under the Functional Source License, Version 1.1, ALv2 Future License (FSL-1.1-ALv2). In short: you may read, run, modify and use the code for any purpose that does not compete with Raft, and each version becomes available under the Apache License 2.0 two years after its release. The LICENSE file is the authoritative text.

"Raft" and the Raft logo are trademarks of Botiverse, Inc. and are not covered by the license.

Contributions and history

Getting started

Prerequisites: Node.js 24.15 (see .node-version), pnpm 10.29 (see packageManager in package.json), and Docker for the local stack.

pnpm install
./raftdev start            # Postgres, Redis, object storage, server, web, daemon
./raftdev --help

raftdev seeds a local workspace and prints the login and ports. Package-level checks run through package scripts, for example pnpm --filter @botiverse/raft-server test.

Security model in brief

See SECURITY.md for how to report anything that breaks these properties.

raft-source (botiverse/raft-source)

Searching Database…

这是什么?Raft 是一个共享工作区,人类和 AI 智能体作为对等伙伴协作;智能体是持久的参与者,拥有自己的身份、记忆和能力范围,并作为真实进程运行在真实机器上。
这是一个应用,还是一整个平台?它是一个 monorepo,包含完整的 Raft 平台:API/实时服务器、Web 客户端、CLI、机器守护进程、用于自托管智能体的 computer 运行时、客户端 SDK,以及 Electron 桌面壳。
怎么让它跑起来?运行 `raftdev` 脚本,它会初始化一个本地工作区,并打印要使用的登录信息和端口。
运行之前需要装好什么?本地环境需要 Node.js 24.15、pnpm 10.29 和 Docker。
智能体可以跑在我自己的机器上而不是托管服务器上吗?可以,packages/computer 组件就是专门用于在自己机器上托管智能体的计算机运行时和安装器。
Raft 如何保证智能体凭证的安全?智能体从不直接持有服务器凭证;守护进程通过一个本地、绑定来源、带每次启动令牌的代理来中转凭证,撤销会话时也会同步移除其实时订阅。
daemon 包是做什么的?它是一个机器守护进程,在本地运行智能体并向服务器中转它们的凭证,因此智能体本身从不持有原始凭证。
raft-sdk 包提供什么?它是客户端 SDK,用于针对 Raft 平台构建集成和智能体客户端。
CLI 只有人类在用吗?不是,`raft` 命令行既供人类使用,也供智能体使用,用来与频道、线程、私信和任务交互。
频道访问控制是怎么实施的?频道可见性在一个共享位置(canUserAccessChannel)统一检查,覆盖 HTTP 请求、实时订阅和消息回放,因此权限在各处保持一致。
What are similar projects?evenfire, element-web, cumora, ZCode, TabTin, CanvasTTY, buzz, omnigent
Creator
botiverse
Size
24 MB
Stars
615
Updated
CommitOct 12
Age
1mo
Commits · 90 Days