内容
<p align="center"><img src="brand/sophia-stack-logo.svg" width="380" alt="索菲亚栈"></p>
<h1 align="center">索菲亚栈</h1>
<p align="center"><b>您自己的网站,由 AI 构建和编辑 — 您托管,它归您所有。</b></p>
---
索菲亚栈是一个完整的网站,您可以将其部署到您自己的普通托管服务器上,只需一个 zip 文件(无需 `npm install`)。在一次性设置完成后,您可以通过与 AI 对话来构建和编辑网站 — 可以使用**内置构建工具**(自带密钥)或您交给令牌的**任何外部 AI 代理**。没有平台锁定,没有每月 SaaS 绑定您的网站。它归您所有。
> Replit/Bolt/Lovable 的强大功能 — 但**远程、受限、且归您所有**,在您控制的托管服务器上。
## 截图
| 您的品牌网站 | 通过与索菲亚聊天构建 |
|---|---|
| [](docs/screenshots/01-landing.png) | [](docs/screenshots/04-build-chat.png) |
| **连接任意 AI(令牌 / MCP / OpenAPI)** | **自带密钥 — 一键提供商** |
| [](docs/screenshots/03-connect.png) | [](docs/screenshots/05-settings.png) |
**…以及从一个提示构建的完整页面**("为我构建一个咖啡店登陆页面"):
<p align="center"><a href="docs/screenshots/06-built-page.png"><img src="docs/screenshots/06-built-page.png" width="520" alt="索菲亚构建的页面"></a></p>
## 功能
1. **部署** zip 文件到任何 Node.js 服务器(Hostinger "Setup Node.js App", Railway, Render, VPS)。
2. **开始使用** — 设置管理员登录;您将获得一个**五字恢复短语**(仅显示一次)。
3. **使用 AI 构建** — 两种方式:
- **内置构建工具(聊天):** 在设置中添加 AI 密钥(OpenAI, DeepSeek, Groq, OpenRouter, Together, Mistral — 一键预设 + "获取密钥" 链接)。然后在仪表板中聊天。真正的**代理循环**读取您的网站,进行更改,修复自己的错误,并迭代。
- **任何外部代理:** 生成一个 `mykey-` 令牌,并将**技能 + URL + 令牌**交给任何具有网页能力的 AI,它通过 REST API 或内置的 **MCP** 服务器直接编辑实时网站。
4. **拥有所有权** — 页面,自定义 HTML/CSS/JS,具有自动 CRUD 的数据层,媒体托管,沙盒服务器函数,全部在您的域名上。
## 为什么与众不同
- **您拥有它。** 自主托管,单一工件,无平台锁定。取消任何服务 — 它是您的文件。
- **任何 AI 都可以操作它。** 已部署的网站本身就是一个代理可操作端点:一个令牌门控的 **REST API**,一个 **MCP 服务器**(`/mcp`),和一个 **OpenAPI 模式**(`/openapi.json`)。
- **设计安全。** 每次编辑都在**提交前验证**(拒绝错误编辑),具有**版本历史 + 一键回滚**,和一个**不可变核心 + 页脚**,AI 无法删除。
- **真正的应用平台**,不是模板:多页面,自定义代码,数据库 + 表单,媒体,和沙盒后端函数。
- **所有权恢复。** 忘记密码或有人进入?您的恢复短语重置登录并撤销所有密钥 + 会话 — 无需支持票,因为中间没有公司。
## 连接外部 AI
- **ChatGPT:** 参见 **[docs/Connect-ChatGPT.md](docs/Connect-ChatGPT.md)** — 从 `/openapi.json` 构建自定义 GPT 操作(Bearer = 您的 `mykey-` 令牌)。
- **Claude / MCP 客户端:** 添加 `/mcp` 作为自定义连接器,带有 Bearer 令牌。
- **Cursor / Cline / Claude Code:** 将**技能 + URL + 令牌**交给它;它通过 API 直接编辑。
> 一个普通的聊天,没有网络工具(例如 Grok 应用),可以*读取*您的网站,但不能*发送*请求 — 那是应用的限制,而不是令牌。令牌在 AI 可以调用的任何地方都具有完全身份验证。
## AI 可以和不能做什么
**可以:** 编辑页面,编写自定义 HTML/CSS/JS,定义数据 + 表单(CRUD),上传媒体,编写沙盒后端函数,使用区块/样式/效果,回滚。
**不能:** 触及框架核心或删除页脚/品牌 · 读取您的密码,恢复短语或密钥 · 访问主机 OS/文件系统/网络(后端代码在锁定沙盒中运行) · 在沙盒外运行代码。详细内容请参见 **[SECURITY.md](SECURITY.md)**。
## 从预构建的 zip 文件部署
获取 **`release/sophia-stack.zip`**(或构建它 — 如下),上传到您的托管服务器,设置启动文件为 `app.js`(Node.js 18+),启动它,打开 URL。zip 文件中的完整逐步指南在 `README.txt` 中。
## 从源代码构建
```bash
npm install
npm run build # SSR + 客户端捆绑
npm test # 完整测试套件(运行 demo/*.mjs)
node scripts/package.mjs # -> package/ (可部署的工件)
```
## 仓库映射
| 路径 | 内容 |
|---|---|
| `src/` | 服务器 · 代理循环 · 存储 · 数据 · 媒体 · 沙盒 · 区块 · 样式 · 效果 · 仪表板 |
| `scripts/` | 构建 · 打包 · 目录 |
| `mcp/` | 零依赖 stdio MCP 包装器 |
| `demo/` | 测试套件(服务器,代理,仪表板,恢复,mcp,页面,专业版,UI,包…) |
| `docs/` | 连接 ChatGPT 指南 |
| `brand/` | 标志 |
| `ARCHITECTURE.md` · `SECURITY.md` | 设计 + 安全模型 |
## 状态 — v1
可部署,具有品牌,端到端测试: onboarding + 恢复,会话式代理构建器,代理可操作的 REST/MCP/OpenAPI 接口,数据 + 媒体 + 沙盒函数,验证后再提交 + 回滚 + 不可变核心。在 CommonJS Express 应用中运行,以适应广泛的托管兼容性。
*在 SophiaXT 操作下构建。*