aiden
本地优先的操作系统级 AI 代理引擎,通过 6 层记忆系统实现跨会话自主任务执行
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
本地优先的操作系统级 AI 代理引擎,通过 6 层记忆系统实现跨会话自主任务执行
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下:你正在深夜编程,忽然想起明天要给客户演示一个产品功能——但你不在工位上,身边只有手机。传统做法是记个备忘录,明天再处理。但如果有一个 AI 助手,它不仅能记住你的所有项目上下文,还能在后台自动帮你完成代码审查、文件整理、甚至帮你起草回复邮件——你只需要发一条消息,剩下全部交给它。这正是 Aiden 要做的事。
Aiden 的作者是独立开发者 whitelotus9625(GitHub: taracodlabs),仓库创建于 2026 年 3 月,至今已获得 408 颗星、78 个 fork、13 个 open issues,版本已迭代至 v4.12.0。这不是一个新手的练手项目,而是一个经过多次重大版本迭代、生产级别可用的 AI Agent 框架。
它的核心理念是 local-first(本地优先)。在 Aiden 之前,如果你想用 AI 辅助工作,要么把数据发送到云端(隐私风险),要么本地部署一个笨重的 Ollama 环境(配置复杂)。Aiden 通过 6 层记忆系统 + 智能 Provider 路由,把这两种体验融合在一起:既能在完全离线的 Ollama 模式下运行,也能在需要时无缝切换到 OpenAI/Anthropic 等云端模型。
![]()
项目定位:不是简单的聊天机器人,而是一个能在你的操作系统上自主执行任务的 AI 代理引擎。它通过 60+ 内置工具和 74 个可组合的 Skill,能够完成从浏览器自动化、代码执行、邮件管理到 Docker 容器操控的复杂工作流。
Aiden 的架构文档(ARCHITECTURE.md)清晰描述了数据流:
Channel Input (Discord / Slack / Telegram / Email / CLI / Desktop / Webhook)
│
▼
ChannelAdapter → Normalised Message Object
│
▼
Planner (分解任务,选择 Skill)
│
▼
AgentLoop (core/agentLoop.ts)
├── ToolDispatcher → 60+ 内置工具
├── SubagentManager → 并行子 Agent 管理
└── MemoryManager → 读写全部 6 层记忆
│
▼
ProviderRouter → 19 个 Provider 的自动切换
│
▼
Responder → 流式返回到原始 Channel
| 层级 | 存储方式 | 用途 |
|---|---|---|
| Episodic | 上下文窗口 | 最近对话轮次,按 token 预算自动裁剪 |
| BM25 关键词 | SQLite FTS5 | 全量历史会话的快速精确检索 |
| Vector 语义 | SQLite + Embeddings | 概念相似性召回 |
| Procedural | skills/*/SKILL.md | Skill 提示词按需加载 |
| Goal | JSON 文件 | 跨会话的持久化目标追踪 |
| LESSONS.md | 追加式 Markdown | 永久失败记录,沉淀为"经验壁垒" |
这套记忆系统的精妙之处在于层次分明:短期记忆处理即时上下文,中期记忆处理跨会话检索,长期记忆处理持久化目标和学习积累。最有趣的是 LESSONS.md——Aiden 每次失败都会自动写教训文档,随着使用时间增长,它的"经验壁垒"会越来越高。
每个 Skill 是一个自包含目录:
skills/stock-research/
SKILL.md ← 系统提示词片段
tools.ts ← 工具实现(可选)
sandbox.ts ← 隔离运行器(可选)
README.md
74 个内置 Skill 覆盖了:GitHub PR/Issue 管理、NSE/Zerodha 交易 API、Windows Defender 扫描、Docker 容器管理、YouTube 内容工具、安全研究(Censys/Shodan/VirusTotal)等。其中 GitHub 相关的 4 个 Skill(github-auth、github-issues、github-pr-workflow、github-repo-management)和 hermes-agent 的工具链高度重合——这说明两个项目在开发者工作流自动化上有相似的设计哲学。
providers/router.ts 实现了 19 个 Provider 的自动切换:
路由逻辑:优先使用 keepalive 缓存(< 30s 内的响应直接复用)→ 超时则指数退避 → 切换下一个 Provider。同时按日预算上限(DAILY_BUDGET_USD)控制每 Provider 成本,超额自动切换到更便宜的 Provider。
从 package.json 可以看出技术选型:
tsconfig.json + esbuild 打包)better-sqlite3 + sql.js)用于 BM25 FTS5 和 Vector 语义搜索playwright + puppeteer 双引擎)用于计算机控制@modelcontextprotocol/sdk)实现 Model Context Protocol 桥接better-sqlite3整个项目代码量巨大:core/ 目录下有 100+ 个 TypeScript 模块,覆盖 Agent 循环、记忆系统、工具分发、权限控制、安全审查等各个子系统。
Aiden 的安全设计有多个层次:
safe / caution / dangerous 三级,用户可按需审批rm -rf / 等)这套设计的哲学是"先放行、后审查"——允许 AI 执行操作,但事后扫描并纠正问题,比提前禁止更灵活但也更需要成熟度。
# Linux / WSL / macOS
npm install -g aiden-runtime
# Windows
powershell -ExecutionPolicy Bypass -File install.ps1
安装后主程序为 dist/cli/v4/aidenCLI.js,也发布在 npm 上(aiden-runtime 包)。
| 模式 | 说明 |
|---|---|
| CLI REPL | 终端交互界面,支持流式输出、Markdown 渲染、状态栏 |
| Electron 桌面 | electron electron/main.js,完整 GUI + 键盘录制 |
| API Server | npm run start → Express 服务(端口 4200),MCP 协议兼容 |
| Daemon 模式 | AIDEN_DAEMON=1,后台常驻,文件监听 + Webhook + 定时任务 |
主程序无 Dockerfile,不适合 Docker 一键部署。但提供了 docker-compose.searxng.yml 用于 SearxNG 搜索增强组件(为 Agent 提供本地搜索能力)。这是有意为之——核心定位是"操作系统上的 AI 引擎",图形环境和文件系统访问是必需能力,容器化反而会限制这些能力。
不需要 GPU,4GB RAM + 1GB 磁盘即可运行。完全离线模式下只需 Ollama + 本地模型(如 mistral-nemo:12b)。
Agent 自主性风险:能够操作文件、执行 Shell 命令的 AI 代理,一旦失控可能造成不可逆损害。官方也承认 Docker 沙箱模式 "still weakly hardened"。
Windows 强依赖:大量 Windows 特定配置(PowerShell 脚本、.bat 文件、%APPDATA% 路径、WMI 系统调用),Linux/macOS 兼容性不如 Windows 原生。
授权争议:核心代码 AGPL-3.0,但 Skill 系统是 Apache-2.0(可闭源)。混用许可证可能导致商业使用时的合规风险。
v4.5 架构升级代价:从旧版本升级可能遇到配置迁移问题。
Aiden 的出现代表了 AI Agent 从"对话助手"向"操作系统 AI 引擎"演进的一个重要节点。它不是又一个 ChatGPT 包装器,而是真正把 AI 能力嵌入到开发者日常工具链中的尝试。
几个值得关注的趋势信号:
如果你是一个需要同时管理多个开发工作流的工程师,或者希望有一个真正"懂你项目"的 AI 助手,Aiden 值得深入研究。它的学习曲线不低,但一旦掌握了 Skill 编写和 Provider 配置,你将拥有一个几乎可以在任何平台上自主工作的 AI 代理引擎。