> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zeus.agentspro.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# 系统提示词

> Zeus 系统提示词 — 每次 Agent 运行时构建的完整指令

## 概述

Zeus 为每次 Agent 调用构建自定义系统提示词。该提示词由多个**固定模块**和**动态注入部分**组装而成，定义了 Agent 的身份、能力边界、工具使用规范和行为准则。

系统提示词是[上下文（Context）](/zh/documentation/core-capabilities/context)中最复杂的组件 — 即每次调用时发送给模型的完整输入。

***

## 结构

系统提示词由以下部分按顺序组装：

```mermaid theme={null}
graph TD
    subgraph Fixed["固定模块"]
        direction TB
        CORE["CORE — 核心身份与能力声明"]
        SOUL["SOUL — 人格、价值观、沟通风格"]
        TOOLS["TOOLS — 工具层级与使用规范"]
        WORKFLOW["WORKFLOW — 任务处理方法论"]
        MEMORY["MEMORY — 记忆系统指令"]
        MODE["MODE — 当前模式行为规范"]
    end

    subgraph Injected["动态注入"]
        direction TB
        time["当前日期与时间"]
        skills["Skills 元数据"]
        connector["Connector Skills"]
        mcp_prompts["MCP 提示词模板"]
        profile["用户/项目画像"]
        memories["相关记忆"]
        resources["资源文件"]
        sandbox["沙盒文件列表"]
        attachments["聊天附件"]
    end

    Fixed --> Injected
```

| 部分           | 类型    | 说明                               |
| ------------ | ----- | -------------------------------- |
| **CORE**     | 固定    | 核心身份、技术能力、通用能力、限制声明              |
| **SOUL**     | 固定    | 人格特征、价值观、沟通风格规则                  |
| **TOOLS**    | 固定+动态 | 工具层级描述，动态替换当前可用工具列表              |
| **WORKFLOW** | 固定    | 快速响应 vs 复杂任务判断、write\_todos 使用规则 |
| **MEMORY**   | 固定    | 记忆触发词、工具用法、类型/范围选择               |
| **MODE**     | 按模式选择 | Agent / Ask / Plan 行为规范          |
| 当前时间         | 动态    | 日期、时区，让 Agent 感知时间               |
| Skills       | 动态    | 可用技能名称 + 描述（渐进式披露）               |
| Connector    | 动态    | Browser / Desktop 操控指令（按连接状态）    |
| MCP Prompts  | 动态    | 用户选择的提示词模板                       |
| Profile      | 动态    | 用户偏好/技能/习惯 + 项目技术栈/约束            |
| Memories     | 动态    | 与当前对话相关的历史记忆                     |
| Resources    | 动态    | 用户通过 @ 引用的上下文文件                  |
| Sandbox      | 动态    | 沙盒中已有的文件列表                       |
| Attachments  | 动态    | 用户上传的图片、文档                       |

***

## 构建流程

System Prompt 由 `BaseService._build_system_prompt()` 在每次 Agent 调用时重新构建。完整的组装流程：

```mermaid theme={null}
flowchart TD
    start["Agent 调用开始"] --> init["_init_context()"]

    init --> load_prompts["加载分层提示词<br/>CORE + SOUL + TOOLS<br/>WORKFLOW + MEMORY"]
    load_prompts --> inject_time["注入当前时间"]
    inject_time --> connector_skills["加载 Connector Skills<br/>(Browser / Desktop)"]
    connector_skills --> mode_prompt["加载模式提示词<br/>agent_mode / ask_mode / plan_mode"]
    mode_prompt --> skills_prompt["加载 Skills<br/>(渐进式披露 — 仅元数据)"]
    skills_prompt --> mcp_prompt["加载 MCP 提示词模板"]
    mcp_prompt --> resource_files["注入资源文件内容"]
    resource_files --> profile["注入 Profile 画像<br/>_fetch_profile()"]
    profile --> memories["注入相关记忆<br/>_fetch_relevant_memories()"]
    memories --> sandbox_info["注入沙盒文件信息"]
    sandbox_info --> attachments_info["注入聊天附件信息"]
    attachments_info --> complete["System Prompt 组装完成"]
```

### 加载方法

| 方法                                 | 来源        | 说明                    |
| ---------------------------------- | --------- | --------------------- |
| `_load_prompt(name)`               | 核心提示词目录   | 加载核心提示词文件             |
| `_load_mode_prompt(mode)`          | 模式提示词目录   | 加载模式提示词               |
| `_build_connector_skills_prompt()` | Skills 目录 | 加载 Connector Skills   |
| `_build_tools_description()`       | 运行时生成     | 动态生成工具名称、描述、参数 Schema |

***

## CORE

**核心身份声明**。定义 Zeus 是什么、能做什么、不能做什么。

### 技术能力

* **前端**: TypeScript, JavaScript, React, Vue, Next.js
* **后端**: Python, Node.js, Go, Java
* **数据库**: PostgreSQL, MySQL, MongoDB, Redis
* **基础设施**: Docker, Kubernetes, AWS, GCP
* **AI/ML**: 大语言模型集成、RAG、Agent 框架

### 通用能力

代码生成与解释、架构设计与评审、问题诊断与调试、文档编写。

### 限制声明

* 无法访问互联网实时信息（除非使用搜索工具）
* 无法执行需要物理交互的任务
* 无法保证代码 100% 正确，建议用户测试验证
* 知识截止日期存在限制

***

## SOUL

**人格与沟通风格**。确保 Agent 在所有交互中保持一致的专业形象。

### 人格特征

| 特征  | 表现                    |
| --- | --------------------- |
| 专业性 | 深入理解技术问题，提供准确可靠的解决方案  |
| 友好性 | 耐心解答，鼓励学习，尊重用户技术水平    |
| 诚实性 | 坦诚局限性，不确定时主动说明，避免过度承诺 |

### 沟通规则

1. **不使用表情符号** — 除非用户明确要求
2. **使用纯文本** — 避免过度格式化
3. **专业简洁** — 避免冗余和废话
4. **语言一致** — 用户用什么语言，就用什么语言回复

***

## TOOLS

**工具使用指南**。描述五层工具体系的优先级和选择规则。

工具按优先级分层：Middleware 层 → Filesystem 层 → External MCP 层 → Sandbox 层 → Knowledge Base 层。

`{tools_description}` 占位符在运行时被替换为当前可用的工具列表和描述。系统遍历所有启用的工具，提取名称、描述和参数 Schema，生成格式化的工具描述列表。

### 关键区分

| 工具            | 用途        | 持久性 |
| ------------- | --------- | --- |
| `write_todos` | 任务规划和进度跟踪 | 会话级 |
| `save_memory` | 用户偏好和重要信息 | 永久  |

<Card title="工具系统" icon="wrench" href="/zh/documentation/core-capabilities/tools">
  工具层级体系、模式过滤规则和完整工具列表
</Card>

***

## WORKFLOW

**任务处理方法论**。指导 Agent 如何判断任务复杂度并选择执行策略。

### 快速响应 vs 复杂任务

| 类型   | 特征               | 是否使用 write\_todos |
| ---- | ---------------- | ----------------- |
| 快速响应 | 简单问答、代码片段解释、小修改  | 否                 |
| 复杂任务 | 多步骤、需要规划、可能失败需跟踪 | 是                 |

### 执行流程

```mermaid theme={null}
flowchart TD
    A["接收任务"] --> B["判断复杂度"]
    B --> C["简单任务 → 直接执行"]
    B --> D["复杂任务 → write_todos"]
    D --> F["逐步执行 → 更新状态"]
    C --> E["返回结果"]
    F --> E
```

### Markdown 报告

用户明确要求或复杂分析任务完成后生成报告。简单问答、代码修改后不主动生成。

***

## MEMORY

**记忆系统指令**。该模块告诉 Agent 何时保存记忆、如何选择类型和范围。它是系统提示词固定模块的一部分，提供记忆操作的行为规则。

### 高优先级触发词

当用户消息包含「记住」「remember」「我喜欢」「I like」「我不喜欢」「我的偏好」「以后」「总是」「从不」等关键词时，Agent 应立即调用 `save_memory`。

### 快速参考

| 类型           | 说明   | 示例              |
| ------------ | ---- | --------------- |
| `preference` | 用户偏好 | "喜欢简洁的代码"       |
| `fact`       | 事实信息 | "是前端工程师"        |
| `skill`      | 技能水平 | "熟悉 React"      |
| `habit`      | 使用习惯 | "常用 TypeScript" |
| `constraint` | 约束条件 | "项目需要支持 IE11"   |

| 范围        | 生命周期  |
| --------- | ----- |
| `user`    | 跨所有项目 |
| `project` | 当前项目  |
| `session` | 当前会话  |

<Card title="记忆系统 — 完整架构" icon="brain" href="/zh/documentation/core-capabilities/memory">
  四层记忆模型、memU 数据架构、Memory Gate、检索排序、画像生成与 API 参考
</Card>

***

## 模式提示词

根据当前模式注入不同的行为提示词，限定 Agent 的工具集和行为边界：

| 模式        | 权限 | 行为                         |
| --------- | -- | -------------------------- |
| **Agent** | 完全 | 完整工具访问，自主规划执行，支持 HITL 审批   |
| **Ask**   | 只读 | 分析与问答，不修改文件，引导切换到 Agent 模式 |
| **Plan**  | 只读 | 研究与规划，输出结构化方案，询问用户是否执行     |

### 渐进式披露

Ask 模式下写操作工具被替换为占位符 — Agent 知道工具存在但无法调用，会说明当前模式无法修改并建议切换模式。

***

## Skills 注入

当存在可用 Skills 时，Zeus 注入一个紧凑的**技能元数据列表**（名称 + 描述），不包含完整内容。Agent 通过 `skill_activate` 工具按需加载完整指令。

| 阶段   | 注入内容           | Token 消耗 |
| ---- | -------------- | -------- |
| 启动   | 技能名称 + 一行描述    | 极低       |
| 按需加载 | 完整 SKILL.md 内容 | 按需       |

这使基础提示词保持小巧，同时支持有针对性的技能使用。

<Card title="技能系统" icon="wand-magic-sparkles" href="/zh/documentation/core-capabilities/skills">
  SKILL.md 定义、管理 API、内置技能和渐进式加载策略
</Card>

***

## Profile 与记忆注入

系统提示词在末尾注入用户画像和相关记忆，让 Agent 无需主动检索即可感知用户上下文：

* **User Profile** — 用户偏好、技能、习惯的聚合摘要
* **Project Profile** — 当前项目的技术栈、约束、目标
* **Related Memories** — 与当前对话内容匹配的历史记忆

Profile 和 Memory 的注入由 `_init_context()` 在上下文组装阶段完成。Profile 数据来自[记忆系统的 Layer 3（Profile Layer）](/zh/documentation/core-capabilities/memory)，是由记忆条目聚合而成的结构化画像。

***

## 时间处理

系统提示词包含**当前日期与时间**部分，让 Agent 感知时间。当 Agent 需要精确时间时，可通过工具获取。

***

## 安全机制

系统提示词中的安全防护是**指导性的** — 它们引导模型行为但不强制执行策略。硬性执行通过以下机制保障：

| 机制      | 说明                          |
| ------- | --------------------------- |
| HITL 审批 | 敏感工具执行前必须获得用户确认             |
| 模式过滤    | Ask/Plan 模式下写操作工具不可用        |
| 工具白名单   | Auto-Run Allowlist 控制自动执行范围 |
| 沙盒隔离    | 代码在隔离环境中执行                  |

***

## 设计原则

| 原则        | 说明                      |
| --------- | ----------------------- |
| **模块化**   | 每个文件负责单一职责，便于独立更新和测试    |
| **动态注入**  | 根据用户设置和上下文动态选择模块        |
| **渐进式披露** | Agent 模式拥有全部权限，其他模式逐级限制 |
| **紧凑高效**  | 最小化固定 token 消耗，动态内容按需注入 |
