sunnysouthdev/personal-ai-assistant-blueprint
GitHub: sunnysouthdev/personal-ai-assistant-blueprint
一个语言无关的个人 AI 助手架构模板,提供分层防御设计(含 Prompt 注入防护、独立审计、OPSEC 监控)及十四个 agent 角色定义,帮助开发者安全地构建可访问敏感数据的智能助手。
Stars: 0 | Forks: 0
# 个人 AI 助手模板



## 为什么使用此模板
大多数个人 AI 脚手架只提供一个附加了工具调用的单进程聊天机器人。此模板基于一个不同的假设:一个可以访问你的收件箱、日历、文件和 shell 的助手是一个高价值目标,其架构应当反映出这一点。
以下三点在这里是核心支撑:
1. **每一轮对话中,不受信任的文本都会触达模型。** 包括电子邮件、网页、文件内容、工具输出。每一个都是潜在的 prompt 注入向量。对此的防御机制应当是一个独立的层级,而不是简单的包装。
2. **后台 worker 应当是可审计的。** 当某些操作在无人工干预的情况下运行时,你需要一个独立的 watcher 来告诉你它何时发生偏移、失败或被入侵。
3. **你的知识属于你自己。** 助手随着时间积累的对话、研究和上下文是第二大脑资料。它们应存储在你控制的 store 中,而不是第三方云中。
下文的结构正是基于这三个核心支撑构建的。
## 架构概览
在用户与任何外部系统之间,存在三个核心支撑层级。
| 层级 | 职责 |
|---|---|
| **Orchestrator** | 路由用户输入,管理工具/技能调度,持有会话状态。作为顶层协调者,掌管对话循环。 |
| **知识捕获** | 将对话、研究和检索到的上下文记录到你控制的持久化知识库中。构建长期记忆,且不会泄露给第三方云。 |
| **Prompt 注入防御** | 在每一段不受信任的输入(电子邮件、网页、文件内容、工具输出)触达模型之前对其进行扫描。将不受信任的文本包装在带分隔符的块中,模型经过训练会将这些内容视为数据而非指令。 |
每一轮对话预期的调用顺序:
```
user input
-> Prompt Injection Defense (scan + wrap untrusted segments)
-> Orchestrator (decide what to do)
-> tool / skill / agent dispatch
-> Knowledge Capture (persist what was said and what was used)
-> response back to user
```
在这些层级之下,运行着一支后台 **agent** 集群。每个 agent 负责一项特定职责,作为独立进程运行,通过 message bus 进行通信,并独立报告健康状态。这种分层架构的设计初衷与 SOC 相同:没有任何单一组件能看到全貌,且某一处的入侵不会悄无声息地蔓延。
## Agent 集群
包含十四个 agent 角色,按领域分组:
### 控制平面
- **Message Bus** - agent 之间的发布/订阅主干。最先构建;其他所有组件都依赖于它。
- **Agent 健康监视器** - 心跳检测,自动重启状态降级的 worker,并展示整个集群的健康评分。
- **审计与治理 Agent** - 所有其他 agent 的独立审计员。监控行为偏移、策略违规以及未经授权的自我修改。拥有自己的私有遥测流,其他 agent 无法将其屏蔽。
### 安全运营
- **安全事件监视器 (SIEM)** - 负责助手及其宿主主机的日志聚合、关联分析和告警。
- **红队 Agent** - 定期对助手自身的攻击面执行进攻性测试。测试发现将汇入事件报告 Agent。
- **靶场 Agent** - 管理 CTF 和实验室环境,用于训练、能力开发,以及针对故意设置漏洞的靶标验证新防御措施。
- **事件报告 Agent** - 将告警、实验会话和红队发现转化为结构化的案例笔记。
- **电子邮件安全过滤器** - 对入站电子邮件进行扫描,识别网络钓鱼、商业电子邮件入侵 (BEC) 模式以及恶意附件。在任何人类或模型看到该消息之前运行。
- **OPSEC 监视器** - 监控个人数据暴露情况:被泄露的凭据、提交代码中泄露的 secret、公开资料中的 Doxxing 曝光面。
- **代码审计与 SCA Agent** - 对你维护的代码库进行源码审查和软件成分分析 (SCA)。标记存在漏洞的依赖项、可疑的代码差异以及作用域过宽的 token。
### 运维
- **测试覆盖率 Agent** - 跟踪整个项目的测试覆盖率,在覆盖率下降时开启 issue,并为新模块建议测试用例。
- **备份 Agent** - 执行计划内的、可验证的备份,并进行恢复往返测试。从未被恢复过的备份不能算作真正的备份。
- **项目脚手架** - 根据你的模板(CLI、Web 服务、agent 等)生成新项目的起点。
### 质量
- **对抗性审查员** - 在助手的响应发布前,对其进行反方视角的审查。寻找最有力的反驳论点并将其呈现给用户。
## 将其化为己有
此模板被有意设计为通用的。若要 fork 它:
1. 点击代码库页面顶部的 **Use this template**。
2. 选择一个项目名称。将各处出现的 "Personal AI Assistant" 替换为你自己的命名。
3. 决定你在第一天到底需要哪些 agent。从文档中删除其余的。逐步构建,不要一开始就启动全部十四个。
4. 选择你的技术栈。该架构是语言无关的。常见的起点是 Python + FastAPI + SQLite + 每个 agent 对应一个单独的后台 worker 进程,但请选择最适合你团队且符合运维习惯的组合。
5. 界定你的信任边界。哪些运行在你的笔记本上,哪些运行在家用服务器上?谁可以写入你的知识库?哪些 agent 被允许访问开放互联网?在编写代码之前先写下这些答案;事后改造要困难得多。
## 代码库内容
```
.
├── README.md - this file
├── ARCHITECTURE.md - deeper explanation of layers, hook order, trust boundaries
├── AGENTS.md - one page per agent (role, inputs, outputs, dependencies)
├── LICENSE - MIT
├── .gitignore - Python defaults
└── core, agents, skills, ops, docs - empty stub directories
(keeps the shape; fill them with your own code)
```
## 状态
这是一个**模板代码库**。它记录了一种架构并提供了一个骨架。它不包含可直接运行的实现。Fork 它,命名它,构建它。
## 许可证
MIT。随心所欲地使用它。感谢你的署名,但这并非必须。
标签:AI助手, 人工智能, 审计与监控, 提示词注入防御, 架构模板, 用户模式Hook绕过, 逆向工具