Skip to content

什么是开放能力?

开放能力是平台注入到 代码块 中的一组宿主函数。代码块通过这些函数请求聊天页面执行明确允许的操作,而不是直接访问聊天页面本身。

所有开放能力函数都只能写在代码块中调用。目前开放的能力如下,每个能力有单独的教程:

函数作用教程酒馆助手兼容
setChatInput(text, option?)把文本填入扮演或指导输入框setChatInput:填写聊天输入框/setinput(triggerSlash)
setChatMessages(updates, option?)切换开场白版本setChatMessages:切换开场白同名函数

开放能力会持续扩充,后续陆续开放更多函数。

调用方式与错误处理

所有开放能力函数都返回 Promise:成功时 resolve;参数校验失败、操作失败或超时(10 秒)时 reject。不需要自己拼装 postMessage 消息,直接调用函数即可。

建议逐项做能力检测,并始终处理 Promise 拒绝:

js
if (typeof window.setChatInput === 'function') {
  try {
    await window.setChatInput('要填入的内容');
  } catch (error) {
    console.error(error.message);
  }
}

小提示

  • 调用开放能力前先做能力检测,并始终处理 Promise 拒绝
  • 代码块的写法、展示效果与运行环境限制,见 什么是代码块?