Skip to content

Repository files navigation

灵构 · 智能体生成平台

面向零代码用户的本地优先智能体生成平台。当前版本已经跑通“创建 → 对话使用 → 工具执行 → 知识与产物沉淀”的前后端闭环。

已实现

  • 五步问卷生成智能体,创建时独立配置联网搜索、CLI 与兼容 Skill
  • 基于 LangGraph.js 的统一运行图:规划、搜索、RAG、CLI、回答与文件生成
  • DeepSeek 结构化生成、行动决策与流式回答
  • AnySearch POST /v1/search 联网检索、过程状态和引用来源
  • SQLite 本地持久化:智能体、对话、文件元数据与向量索引
  • 每个智能体独立 knowledge/artifacts/skills/config.json
  • 每个智能体拥有持久工作目录和串行 CLI 运行队列,命令固定以该目录为 cwd
  • CLI stdout/stderr 流式输出、退出码、60 秒默认超时、运行中取消和 JSONL 审计
  • 只读白名单自动执行;写入、联网、安装依赖、启动服务和删除操作使用一次性审批
  • PDF、DOCX、Markdown、TXT 上传、解析、切块与本地向量检索
  • 对话历史加载,生成文档自动落盘并支持预览、下载、删除
  • 名称、头像、语气、联网、CLI 与 Skill 可在创建后继续修改
  • 删除智能体时先停止运行中的 CLI,再级联删除全部记录和独立沙箱目录
  • 本地数据目录查看、打开和迁移
  • 本地日志、单文件 20 MB、单智能体 200 MB 和最多 10 个知识文件限制

本地运行

需要 Node.js 22.13 或更高版本。

  1. 复制 .env.example.env,填入:
DEEPSEEK_API_KEY=你的密钥
ANYSEARCH_API_KEY=你的密钥
  1. 安装并启动:
npm install
npm run dev

按照终端显示的本地地址打开。未填写 DeepSeek Key 时,应用会明确显示“本地演示模式”,便于先验证界面和存储闭环;AnySearch 未填写 Key 时会使用其匿名额度。

默认数据目录为项目内 .linggou/,也可以通过 LINGGOU_DATA_DIR 或设置页修改。该目录和 .env 都已加入 Git 忽略。

验证

npm test
npm run lint

CLI 全链路验收(需先在 3111 端口启动本地服务):

node tests/cli-smoke.mjs

验收覆盖只读自动执行、写命令审批恢复、父目录逃逸拒绝、流式输出和取消运行。

CLI 安全模型

  • 自动命令只开放目录查看、文本读取、rg、只读 Git 子命令和版本查询。
  • 其他命令必须由用户逐条批准;批准记录绑定智能体、对话和完整命令,不能复用。
  • 子进程只获得最小环境变量,不会继承 DeepSeek、AnySearch 等后端密钥。
  • 禁止绝对路径、.. 父目录跳转、宿主机主目录环境变量和环境变量枚举。
  • 不同智能体不能直接读取彼此的目录;文件只能通过上传或后续显式移交能力进入工作空间。
  • 当前采用“独立目录 + 固定 cwd”的逻辑隔离,不是操作系统安全边界,不能抵御刻意构造的恶意程序。WorkspaceRuntime 已独立封装,后续应替换为长期容器运行时。

Skill 模型

  • 从项目 .agents/skills、用户 ~/.codex/skills~/.agents/skills 扫描本机 Skill。
  • 只展示通过兼容性检查的 Skill;依赖 MCP、浏览器、图像等当前未提供工具的 Skill 不可选择。
  • 包含脚本的 Skill 要求同时开启 CLI;关闭 CLI 会自动移除这类 Skill。
  • 创建或修改配置时,把完整 Skill 复制到 agents/<agent-id>/skills/,运行时只加载该快照。
  • 单个 Skill 最多 80 个文件、2 MB,包含符号链接的 Skill 会被拒绝。

当前边界

  • 仅桌面 Web、本机单用户、浅色模式
  • 不含登录、分享与克隆、市场、多智能体编排、长期记忆和多模态
  • CLI MVP 不支持交互式 TTY、后台常驻进程和端口转发;这些能力留到容器运行时
  • 扫描版 PDF 暂不做 OCR;只有带文本层的 PDF 能建立知识索引
  • 现有 .openai/hosting.json 仅保留原项目身份;本 MVP 使用本地文件系统,因此本轮不进行生产部署

About

多智能体应用平台

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages