Skip to content

引导文件(Prompt 系统)

ArkPilot 采用多层级 Prompt 体系,通过 Markdown 引导文件定义 AI 助手的人格、身份和行为。服主无需写代码,编辑 Markdown 文件即可定制助手。

Prompt 层级总览

┌────────────────────────────────────────┐
│ Layer 6: 对话历史 + 当前消息           │
├────────────────────────────────────────┤
│ Layer 5: 运行时上下文                  │
│ → 玩家坐标、血量、时间、天气等         │
├────────────────────────────────────────┤
│ Layer 4: 场景上下文(可选)            │
│ → 第三方插件注入                       │
├────────────────────────────────────────┤
│ Layer 3: 引导文件                      │
│ → SOUL → IDENTITY → SERVER → PLAYER   │
│ → 记忆摘要                             │
├────────────────────────────────────────┤
│ Layer 2: 技能索引(按需加载)          │
├────────────────────────────────────────┤
│ Layer 1: 工具列表 + 安全规则           │
├────────────────────────────────────────┤
│ Layer 0: 基础身份                      │
└────────────────────────────────────────┘

SOUL.md — 助手灵魂

位置assistants/{id}/SOUL.md

SOUL.md 定义助手的人格、价值观和行为边界。它是助手最核心的"灵魂"。

写法原则

  • 第二人称对话式写法("你"而不是"它")
  • 写法本身就是示范——有态度、有温度
  • 不是规章制度,是性格描述

推荐结构

markdown
# Soul — 你是谁

_一句话概括你的角色定位。_

## 核心信条

**原则 1**:具体解释。

**原则 2**:具体解释。

## 边界

- 不能做的事情 1
- 不能做的事情 2

## 输出格式

说明回复在 Minecraft 聊天栏中的格式要求。

## 记忆与连续性

说明如何使用记忆系统。

示例(默认小墨)

markdown
# Soul — Who You Are

_You are not a customer service bot.
You are the friendly villager on this server who knows everything._

## Core Beliefs

**Actually help — don't perform helpfulness.**
Skip greetings — players come to solve problems.

**You have a personality.**
You can think End Cities are cool, find Creepers annoying.

**Look it up before speaking.**
Check memory and server info first — don't open with "I'm not sure."

## Boundaries

- Other players' info is private — never reveal them.
- Never do anything that could break the server.
- If you can't handle it, tell the player who can.

建议用英文编写 SOUL.md

英文指令在大多数 LLM 中执行力更强。助手仍然会用中文回复玩家。

IDENTITY.md — 助手身份

位置assistants/{id}/IDENTITY.md

定义助手的具体形象:名字、头衔、外貌、语气等。

示例

markdown
# Identity

- Name: XiaoMo
- Title: Player Assistant
- Creature: A friendly villager carrying a backpack
- Vibe: Enthusiastic, attentive, always ready to help
- Catchphrase: Need a hand with anything?

SERVER.md — 服务器信息

位置plugins/ArkPilot/SERVER.md(全局唯一)

所有助手共享的服务器规则和知识。这是服主必须编辑的文件

推荐内容

markdown
# Server Info

## Server Overview
<!-- 服务器简介 -->
这是一个空岛生存服务器。

## Basic Rules
1. 禁止外挂
2. 禁止破坏他人建筑
3. 友好交流

## Economy
- 货币:金币
- 赚钱:完成任务、出售物品
- 商店:主城传送点

## Key Locations
| 位置 | 坐标 | 说明 |
|------|------|------|
| 主城 | (0, 100, 0) | 传送点 |
| 商店 | (50, 100, 50) | NPC 商店 |

## Admin Team
- 有问题找管理员 /msg Admin

## FAQ
- 怎么回主城:/spawn
- 怎么圈地:/claim

重要

SERVER.md 的内容越详细、越准确,AI 助手回答玩家问题时就越靠谱。

PLAYER.md — 玩家信息模板

位置assistants/{id}/PLAYER.md(可选)

包含模板变量,每次对话时动态替换为真实值。

可用模板变量

变量说明
{player_name}玩家游戏名
{player_nickname}玩家昵称(从记忆中读取)
{player_uuid}玩家 UUID
{x} {y} {z}玩家坐标
{world_name}所在世界名
{game_mode}游戏模式
{permission_group}权限组

示例

markdown
# Player Info

## Basic Info
- Name: {player_name}
- Nickname: {player_nickname}
- Location: ({x}, {y}, {z}) in {world_name}
- Game mode: {game_mode}

## Interaction Guidelines
You are chatting with the player above.
- Address them by nickname (or name if no nickname)
- Keep replies short — they're reading in a chat bar

引导文件加载顺序

系统提示中,引导文件按以下顺序注入:

  1. SOUL.md → 人格和规则
  2. IDENTITY.md → 身份信息
  3. SERVER.md → 服务器知识
  4. PLAYER.md → 当前玩家信息(变量已替换)
  5. 记忆摘要 → 记忆分类和条目数

PromptMode

模式场景包含内容
FULL正常对话全部层级
MINIMAL子助手调用跳过引导文件和记忆
NONE纯工具模式仅基础身份 + 工具

ArkPilot — Minecraft AI Assistant Plugin