Skip to content

助手配置

每个 AI 助手对应 assistants/ 目录下的一个子目录。

目录结构

assistants/
├── player-helper/           # 助手 ID = player-helper
│   ├── config.yml           # 助手配置(必需)
│   ├── SOUL.md              # 助手灵魂/人格(必需)
│   ├── IDENTITY.md          # 助手身份信息(必需)
│   ├── PLAYER.md            # 玩家信息模板(可选)
│   └── skills/              # 助手专属技能(可选)
│       └── my-skill/
│           └── SKILL.md
├── builder/
│   ├── config.yml
│   ├── SOUL.md
│   └── IDENTITY.md
└── my-custom-assistant/     # 你的自定义助手
    ├── config.yml
    ├── SOUL.md
    └── IDENTITY.md

创建新助手

1. 创建目录

assistants/my-guide/

2. 创建 config.yml

yaml
enabled: true
id: my-guide
name: "小导"
default: false
description: "服务器导游,带你了解服务器的方方面面。"

model:
  primary: ""          # 留空用全局默认
  fallbacks: []
  temperature: 0.7
  maxTokens: 2048
  thinkingLevel: "off"

tools:
  load:
    - execute-command

executeCommand:
  whitelist:
    - "tp"
    - "warp"
  blockChaining: true

skills:
  load:
    - server-wiki

memory:
  enabled: true
  autoUpdate: true

session:
  maxContextTokens: 8000
  compaction:
    enabled: true
    reserveTokens: 4000
    summaryModel: ""

permissions:
  allowedGroups: []
  deniedGroups: []
  cooldownSeconds: 5
  maxDailyUses: 100

interaction:
  chatTrigger: "@guide"
  npcId: ""
  responseDelay: 500
  streaming: false

3. 创建引导文件

创建 SOUL.md 和 IDENTITY.md,参见引导文件

4. 重载配置

执行 /ark reload,新助手会立即可用。

config.yml 完整字段

基本信息

字段类型必填说明
enabledbool是否启用
idstring唯一 ID(默认取目录名)
namestring显示名称
defaultbool是否为默认助手(全局只能一个)
descriptionstring助手描述

model — 模型配置

覆盖 models.yml 中的全局默认值。

字段类型默认值说明
primarystring""主模型(留空用全局默认)
fallbackslist[]备选模型
temperaturefloat0.7采样温度
maxTokensint2048最大输出 token
thinkingLevelstring"off"思维链级别

tools — 工具配置

字段类型说明
loadlist需要加载的工具 key 列表

自动加载

skill-read 始终自动加载;memory-read / memory-writememory.enabled 控制。此处只需列出额外需要的工具。

内置工具列表参见工具系统

executeCommand — 命令执行

仅对 execute-command 工具生效。

字段类型默认值说明
whitelistlist[]console 权限命令白名单
blockChainingbooltrue阻止链式操作符

白名单中的命令以 console(OP)权限执行,不在白名单中的命令以玩家权限执行。

skills — 技能配置

字段类型说明
loadlist需要加载的技能名称列表

技能对应 skills/ 目录下的文档,参见技能系统

memory — 记忆配置

字段类型默认值说明
enabledbooltrue启用长期记忆
autoUpdatebooltrue允许 AI 自动记录

session — 会话配置

字段类型默认值说明
maxContextTokensint8000历史最大 token(0 = 用全局默认)
compaction.enabledbooltrue启用压缩
compaction.reserveTokensint4000压缩保留 token
compaction.summaryModelstring""压缩用模型(留空用主模型)

permissions — 权限配置

字段类型默认值说明
allowedGroupslist[]允许使用的权限组(空 = 所有人)
deniedGroupslist[]禁止使用的权限组(优先于 allowed)
cooldownSecondsint5冷却时间(秒)
maxDailyUsesint100每日限额(0 = 无限)

interaction — 交互配置

字段类型默认值说明
chatTriggerstring聊天触发前缀(如 @helper
npcIdstring""绑定的 Citizens NPC ID
responseDelayint500回复延迟(毫秒)
streamingboolfalse流式输出

内部助手

蓝图生成器是一个内部助手的示例——它不直接与玩家交互,而是被其他助手通过 call-agent 工具调用。

内部助手的特征:

  • chatTrigger: "" — 无聊天触发
  • memory.enabled: false — 不需要记忆
  • session.maxContextTokens: 0 — 不需要会话历史
  • 权限由调用方控制

配置优先级

助手 config.yml > models.yml defaults > config.yml 全局 > 代码默认值
配置覆盖来源
模型助手 → models.yml
会话 token助手 → config.yml
记忆开关助手 → config.yml
命令白名单助手 → config.yml
冷却/限额助手 → config.yml rateLimit

ArkPilot — Minecraft AI Assistant Plugin