宏与变量占位符:双花括号语法速查
宏是什么
宏是写成 {{name}} 形式的占位符,在提示词组装时被替换成动态内容。预设、世界书、角色卡、聊天消息、斜杠命令里——任何会被拼进提示词的文本字段都能用。请求真正发出去之前,所有宏都已替换为最终文本。
基本语法
{{user}} 当前用户名
{{char}} 当前角色名
{{name::参数}} 带参数的宏
{{random::a::b::c}} 随机选一个
- 宏名大小写不敏感
- 参数之间用
::分隔 - 支持嵌套,内层先解析
- 想输出字面双花括号,前面加反斜杠转义
控制流与变量
这里用的是新的实验性宏引擎(对应上游 Macros 2.0),支持条件与迭代:
{{if .difficulty == "hard"}}这段更狠的描写{{/if}}
{{each::quests}}{{loop_value::status}}{{/each}}
变量分两种作用域:聊天变量(跟随当前对话)与全局变量(跨对话)。读写都有对应宏,也有一套读起来像赋值语句的简写写法。变量可以存 JSON 对象,用点号路径直接取字段。
在哪里生效
只要会被提示词管线吃进去的文本字段都行:预设条目、世界书内容、角色卡字段、作者笔记、首楼消息等。在任何可解析字段里输入 {{ 会触发自动补全。
应用内输入斜杠命令 /? macros 可以打开宏浏览器,查看当前版本的全部内置宏与即时用法——记不住语法时的最佳去处。
和逐楼层变量的关系
传统宏里的副作用写法(在提示词模板里设变量)只在模板位置生效;而 AI 自己在回复里写的变量赋值要靠另一套机制处理,见逐楼层变量。
宏引擎的行为可能随版本调整,完整宏目录以应用内浏览器为准。