sunnysouthdev/personal-ai-assistant-blueprint

GitHub: sunnysouthdev/personal-ai-assistant-blueprint

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

Stars: 0 | Forks: 0

# 个人 AI 助手模板 ![许可证](https://img.shields.io/badge/License-MIT-blue?style=for-the-badge) ![状态](https://img.shields.io/badge/Status-Template-orange?style=for-the-badge) ![语言](https://img.shields.io/badge/Language%20Agnostic-2C2C2C?style=for-the-badge) ## 为什么使用此模板 大多数个人 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绕过, 逆向工具