# 架构:它是怎么搭起来的 Saker 建在 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) 上,分知识层与能力层两半,可以整套装,也可以只装一部分。 本页说明两层的分工、23 个插件的位置分布,以及一次完整作业的流转。 --- Saker建在 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) 上,本身分成两层,可以整套装,也可以只装其中一部分。 **模式包 `dsh-saker`** 提供三种专业模式的persona、playbook和离线参考资料——这是「怎么测」的知识层。 **21个独立插件** 提供界面、工具接入、过程治理、成果记录和协作能力——这是「用什么测」的能力层。每个插件都是独立bundle,各有README,互不依赖。 知识层和能力层通过DSH的平面机制松耦合。模式只声明它需要什么(阶段门、工具就绪度、知识指针),插件负责提供;换掉任何一个插件,模式照常工作。你可以只装扫描器封装、不装WebShell管理,也可以用自己的插件替换掉我们写的任何一个。 按作业环节看,这21个插件分布在五个位置上: | 位置 | 数量 | 在作业里扮演什么 | |---|---|---| | 界面与配置 | 6 | 开工前把工具路径、MCP服务、知识库、技能和方法编排一次性配好 | | 工具 | 4 | 执行阶段的「手」:本机扫描器、Semgrep、资产平台、WebShell | | 过程 | 5 | 每一步的护栏:阶段门、写入边界、高危拦截、上下文补充 | | 记录 | 4 | 每一步的账本:覆盖状态、发现、调用过程、战役经验 | | 协作 | 2 | 独立复核路径与会话状态面板 | 对应到「想改什么、改哪里」: | 你想改的东西 | 改哪里 | |---|---| | 提示词的组合与顺序 | 输入框「方法 ▾」直接切换,或「设置 → 方法编排」编辑 | | 工具清单与分类 | 设置 → 安全配置,增删工具、自己划分类别 | | 接哪个MCP服务 | 设置 → MCP工作台,stdio / streamable HTTP都行 | | 模式的性格和底线 | 模式包的persona段,或整套换掉 `dsh-saker` | | 作战手册的章节 | 模式包内playbook技能,按你的方法论重写 | | 覆盖矩阵的列 | AttackAtlas,列序就是你的方法论序 | | 知识库内容 | 20 个知识包自动同步到 `DSH_HOME/refs/imports/`;用户层 `DSH_HOME/refs/` 同名覆盖,也可导入自己的资料 | | 界面组件 | 21个插件里任何一个都可以单独替换 | 改完重新打包安装即可生效,不用动dsh宿主。 会话里的一次完整作业,大致是这样流转的: ```mermaid flowchart LR A[范围确认] --> B[目标台账] --> C[攻击面拆解] --> D[工具/MCP执行] D --> E[命中待核对] --> F[证据留痕] --> G[独立复核] --> H[阶段门检查] H --> I[成果台账与报告] H -. 未收口 .-> C ``` 每个阶段都会在工具调用层留下可检查的事实:有日志、有台账、有产物,不只是模型说它做了。 ## 一次完整任务怎样推进 1. 在新会话选择 `pentest` 或 `code-audit`,写清目标、授权范围和限制。 2. Saker建立目标与任务台账,按模式拆解攻击面或审计链路。 3. Agent调用本机工具、MCP服务或子代理执行任务,过程和产物留在工作区。 4. 扫描命中进入待核对区;确认项补齐复现步骤、证据与影响说明。 5. 关键发现经独立路径复核,状态回写成果台账。 6. 阶段门检查必需产物;尚未收口的任务会阻止提前生成报告。 走完这六步,你手上会有可复现的证据、可追溯的台账,以及一份分得清哪些结论站得住、哪些还只是线索的报告。