指令一览
TIP
除了聊天,机器人还支持一组以 chatluna 开头的指令,用来管理对话、切换模型、查看状态,以及在群里处理定时任务和审批。
指令与普通聊天走两条不同的流程。在群里发送「今天天气真好」会交给模型处理;发送 chatluna.status 则由指令系统直接返回结果,不调用模型。所以指令响应更快、结果更确定。
WARNING
大多数管理类指令需要主人权限。还没绑定主人时,先在控制台获取绑定码,再私聊机器人发送绑定指令。
怎么发
格式通常是「指令名 + 空格 + 参数」:
- 尖括号
<>:必选参数。 - 方括号
[]:可选参数。 - 选项以
--开头,部分选项可以带参数值。
常用指令都有简短的别名。记不清时,随时发送 help 查看。
TIP
不同平台的指令前缀可能不同。发送指令没反应时,先确认是否需要加 / 或 . 之类的前缀。
查看状态
chatluna:根指令,返回所有子指令的列表和说明。chatluna.status:查看当前会话的概况,包括会话编号、运行状态(空闲、生成中、待处理消息数)、日志条目数、模型可见的消息数,以及当前的提供商和模型。机器人疑似卡住、或想确认当前群用的是什么模型时使用。chatluna.routes:列出活跃的路由和引擎,用于排查场景规则是否正确接管了某个群。这是一条隐藏指令,不会出现在帮助中。
管理对话
| 指令 | 别名 | 作用 |
|---|---|---|
chatluna.new | new、clear | 开启新对话,旧记录保留 |
chatluna.session.fork | 无 | 从当前对话分出一个分支 |
chatluna.stop | stop | 停止正在生成的回复 |
chatluna.compact | compact | 压缩当前会话的上下文 |
chatluna.new:开启新话题。旧会话不会删除,仍可以在「轨迹」页面查看。chatluna.session.fork:在当前话题基础上开一个分支,之后的聊天写入分支,原对话不受影响。chatluna.stop:立即中断当前这轮生成,已排队的消息仍会保留。chatluna.compact:把较早的历史压缩成摘要,缩短模型可见的上下文,完整日志仍然保留。
切换模型
chatluna.model 不带参数时返回当前使用的模型;带上「提供商/模型」时切换模型,例如 chatluna.model openai/gpt-4o-mini,下一次请求生效。名称写错时会返回失败原因,模型保持不变。
TIP
这样切换只对当前会话临时生效。需要长期生效,请在「场景规则」中绑定模型,或修改模型角色。
定时任务
chatluna.schedule 可以在聊天窗口中管理定时任务:
| 动作 | 作用 |
|---|---|
list | 列出当前频道的任务 |
add | 新建任务 |
remove(或 cancel) | 删除任务 |
pause | 暂停任务 |
resume | 恢复任务 |
fire | 立即触发一次 |
不填动作时等同于 list,会显示任务编号、周期和状态。
add 需要从四种触发方式中选一种:指定时刻 --at(标准时间、时:分 或相对时间 +30m)、固定间隔 --every(如 30m、2h、1d)、五段式 cron 表达式 --cron,或监视条件 --watch;还必须用 --reason 说明任务目的。创建成功后返回任务编号。
任务只属于创建它的频道,其他群无法查看或管理。
WARNING
任务数量和执行频率都有上限,过于频繁的调度会被拒绝。详见定时与后台任务。
撤销文件修改
chatluna.undo 撤销模型最近一次对文件的修改。还支持两个选项:
- 本轮全部:撤销本轮对话中的所有文件改动。
- 强制覆盖:文件在模型修改后又被手动编辑过时,默认会拒绝撤销;加上此选项则强制回退。
该指令依赖文件历史插件。它适合挽回偶发的误操作,不能替代版本控制。
初始化与创作者模式
| 指令 | 别名 | 作用 |
|---|---|---|
chatluna.setup | setup | 重新开始人设配置 |
chatluna.bind | bind | 用绑定码把发送者设为主人 |
chatluna.creator | 无 | 进入创作者模式 |
chatluna.creator.off | 无 | 退出创作者模式 |
chatluna.setup:在私聊中发送,下一条消息开始进入人设配置流程。chatluna.bind:在私聊中发送控制台给出的绑定码,完成主人绑定。chatluna.creator:允许机器人在当前会话中修改自身配置,用于现场调试。chatluna.creator.off:退出创作者模式。
WARNING
创作者模式会大幅放宽模型的权限。不要在公开群聊中长期开启,调试结束后及时关闭。
审批
工具调用涉及敏感操作时,系统会在聊天窗口中发起提问并附带编号选项,通常是「仅允许本次」「本次对话内始终允许」和「拒绝」。直接回复编号即可。
只有权限等级符合要求的用户回复才有效,模型不能代答。长时间无人处理时按未批准处理。关闭「附带编号选项」后,需要输入完整的判定内容。
帮助
单独发送 help 会列出当前权限下可用的所有指令;help chatluna.status 这样带上指令名,会返回该指令的语法、参数、选项和示例。帮助由各插件注册,安装新插件后会自动出现新指令。
常见组合
- 回复卡顿:先发
chatluna.status看状态和排队,再到「轨迹」页面查看详情。 - 上下文太长:发送
chatluna.compact。 - 临时换模型:发送
chatluna.model 提供商/模型。 - 设置提醒:
chatluna.schedule add --at +30m --reason 提醒大家准备开会。 - 撤销改动:发送
chatluna.undo,多文件改动时加上「本轮全部」选项。
常见问题
发送指令没有反应:检查是否需要前缀、消息是否被当作普通聊天,以及发送者是否已绑定主人。
提示「当前入口未绑定路由」:这个群或私聊没有匹配任何场景规则,到「场景规则」页面添加。
提示「当前路由暂无活跃会话」:规则已匹配但还没有对话,先发一条普通消息。
切换模型失败:检查「提供商/模型」是否在可用模型列表中,提供商是否已启用。
定时任务创建失败:检查是否同时指定了多种触发方式、时间格式是否正确、任务数是否已达上限。
审批无人处理:确认回复者的权限等级;关闭编号选项时检查输入格式。