openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
3,340 lines • 48.7 kB
JavaScript
import { n as NODE_GATEWAY_METHOD_SCOPE, t as DYNAMIC_GATEWAY_METHOD_SCOPE } from "./descriptor-CsSjfpp-.mjs";
import { a as isSessionProfileDependentMethod } from "./session-method-policy-B_ndZirn.mjs";
//#region src/gateway/methods/core-descriptors.ts
const CONTROL_PLANE_WRITE = { controlPlaneWrite: true };
const SIDECAR_CONTROL_PLANE_WRITE = {
startup: true,
controlPlaneWrite: true
};
const OBSERVATION = { lifetime: "observation" };
const SESSION_WRITE = { sessionAccess: { mode: "write" } };
const PORTAL_SESSION_WRITE = { sessionAccess: {
mode: "write",
allowOwnSessionScope: true,
requiredTool: "portal"
} };
const CORE_GATEWAY_METHOD_SPECS = [
[
"health",
"health",
"operator.read",
"<=2026.7"
],
[
"diagnostics.stability",
"diagnostics",
"operator.read",
"<=2026.7"
],
[
"doctor.memory.status",
"doctor",
"operator.read",
"<=2026.7"
],
[
"doctor.memory.dreamDiary",
"doctor",
"operator.read",
"<=2026.7"
],
[
"doctor.memory.backfillDreamDiary",
"doctor",
"operator.write",
"<=2026.7"
],
[
"doctor.memory.resetDreamDiary",
"doctor",
"operator.write",
"<=2026.7"
],
[
"doctor.memory.resetGroundedShortTerm",
"doctor",
"operator.write",
"<=2026.7"
],
[
"doctor.memory.repairDreamingArtifacts",
"doctor",
"operator.write",
"<=2026.7"
],
[
"doctor.memory.dedupeDreamDiary",
"doctor",
"operator.write",
"<=2026.7"
],
[
"logs.tail",
"logs",
"operator.read",
"<=2026.7"
],
[
"channels.status",
"channels",
"operator.read",
"<=2026.7"
],
[
"channels.start",
"channels",
"operator.admin",
"<=2026.7"
],
[
"channels.stop",
"channels",
"operator.admin",
"<=2026.7"
],
[
"channels.logout",
"channels",
"operator.admin",
"<=2026.7"
],
[
"status",
"health",
"operator.read",
"<=2026.7"
],
[
"usage.status",
"usage",
"operator.read",
"<=2026.7"
],
[
"usage.cost",
"usage",
"operator.read",
"<=2026.7"
],
[
"tts.status",
"tts",
"operator.read",
"<=2026.7"
],
[
"tts.providers",
"tts",
"operator.read",
"<=2026.7"
],
[
"tts.personas",
"tts",
"operator.read",
"<=2026.7"
],
[
"tts.enable",
"tts",
"operator.write",
"<=2026.7"
],
[
"tts.disable",
"tts",
"operator.write",
"<=2026.7"
],
[
"tts.convert",
"tts",
"operator.write",
"<=2026.7"
],
[
"tts.setProvider",
"tts",
"operator.write",
"<=2026.7"
],
[
"tts.setPersona",
"tts",
"operator.write",
"<=2026.7"
],
[
"config.get",
"config",
"operator.read",
"<=2026.7"
],
[
"config.set",
"config",
"operator.admin",
"<=2026.7"
],
[
"config.apply",
"config",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"config.patch",
"config",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"config.schema",
"config",
"operator.read",
"<=2026.7"
],
[
"config.schema.lookup",
"config",
"operator.read",
"<=2026.7"
],
[
"exec.approvals.get",
"exec-approvals",
"operator.admin",
"<=2026.7"
],
[
"exec.approvals.set",
"exec-approvals",
"operator.admin",
"<=2026.7"
],
[
"exec.approvals.node.get",
"exec-approvals",
"operator.admin",
"<=2026.7"
],
[
"exec.approvals.node.set",
"exec-approvals",
"operator.admin",
"<=2026.7"
],
[
"exec.approval.get",
null,
"operator.approvals",
"<=2026.7"
],
[
"exec.approval.list",
null,
"operator.approvals",
"<=2026.7"
],
[
"exec.approval.request",
null,
"operator.approvals",
"<=2026.7"
],
[
"exec.approval.waitDecision",
null,
"operator.approvals",
"<=2026.7",
OBSERVATION
],
[
"exec.approval.resolve",
null,
"operator.approvals",
"<=2026.7"
],
[
"exec.approval.grants.list",
null,
"operator.approvals",
"2026.8"
],
[
"exec.approval.grants.revoke",
null,
"operator.approvals",
"2026.8"
],
[
"question.request",
null,
"operator.questions",
"2026.7"
],
[
"question.waitAnswer",
null,
"operator.questions",
"2026.7",
OBSERVATION
],
[
"question.resolve",
null,
"operator.questions",
"2026.7"
],
[
"question.get",
null,
"operator.questions",
"2026.7"
],
[
"question.list",
null,
"operator.questions",
"2026.7"
],
[
"plugin.approval.list",
null,
"operator.approvals",
"<=2026.7"
],
[
"plugin.approval.request",
null,
"operator.approvals",
"<=2026.7"
],
[
"plugin.approval.waitDecision",
null,
"operator.approvals",
"<=2026.7",
OBSERVATION
],
[
"plugin.approval.resolve",
null,
"operator.approvals",
"<=2026.7"
],
[
"plugins.uiDescriptors",
"plugin-host-hooks",
"operator.read",
"<=2026.7"
],
[
"plugins.sessionAction",
"plugin-host-hooks",
"dynamic",
"<=2026.7"
],
[
"openclaw.chat",
"system-agent",
"operator.admin",
"<=2026.7"
],
[
"openclaw.chat.history",
"system-agent",
"operator.admin",
"2026.7"
],
[
"openclaw.changes.list",
"system-changes",
"operator.admin",
"<=2026.7"
],
[
"openclaw.approval.list",
"system-agent-approvals",
"operator.approvals",
"<=2026.7"
],
[
"openclaw.setup.detect",
"system-agent",
"operator.admin",
"<=2026.7"
],
[
"openclaw.setup.activate",
"system-agent",
"operator.admin",
"<=2026.7"
],
[
"openclaw.setup.activate.start",
"system-agent",
"operator.admin",
"2026.8"
],
[
"openclaw.setup.auth.start",
"system-agent",
"operator.admin",
"<=2026.7"
],
[
"openclaw.setup.prepare.start",
"system-agent",
"operator.admin",
"<=2026.7"
],
[
"wizard.start",
"wizard",
"operator.admin",
"<=2026.7"
],
[
"wizard.next",
"wizard",
"operator.admin",
"<=2026.7"
],
[
"wizard.cancel",
"wizard",
"operator.admin",
"<=2026.7"
],
[
"wizard.status",
"wizard",
"operator.admin",
"<=2026.7"
],
[
"talk.catalog",
"talk",
"operator.read",
"<=2026.7"
],
[
"talk.config",
"talk",
"dynamic",
"<=2026.7"
],
[
"talk.client.create",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.client.transcript",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.client.close",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.client.toolCall",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.client.steer",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.session.create",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.session.appendAudio",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.session.cancelOutput",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.session.acknowledgeMark",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.session.submitToolResult",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.session.steer",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.session.close",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.speak",
"talk",
"operator.talk",
"<=2026.7"
],
[
"talk.mode",
"talk-mode",
"operator.talk",
"<=2026.7"
],
[
"commands.list",
"commands",
"operator.read",
"<=2026.7"
],
[
"models.list",
"models",
"operator.read",
"<=2026.7",
{ startup: true }
],
[
"models.authStatus",
"models-auth-status",
"operator.read",
"<=2026.7"
],
[
"models.authLogout",
"models-auth-status",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"tools.catalog",
"tools-catalog",
"operator.read",
"<=2026.7"
],
[
"tools.effective",
"tools-effective",
"operator.read",
"<=2026.7",
{ startup: true }
],
[
"tools.invoke",
"tools-invoke",
"operator.write",
"<=2026.7"
],
[
"mcp.app.view",
"mcp-app",
"operator.read",
"<=2026.7"
],
[
"mcp.app.listTools",
"mcp-app",
"operator.read",
"<=2026.7"
],
[
"mcp.app.listResources",
"mcp-app",
"operator.read",
"<=2026.7"
],
[
"mcp.app.listResourceTemplates",
"mcp-app",
"operator.read",
"<=2026.7"
],
[
"mcp.app.readResource",
"mcp-app",
"operator.read",
"<=2026.7"
],
[
"mcp.app.callTool",
"mcp-app",
"operator.write",
"<=2026.7"
],
[
"mcp.app.updateModelContext",
"mcp-app",
"operator.write",
"<=2026.7"
],
[
"board.get",
"board",
"operator.read",
"<=2026.7"
],
[
"board.update",
"board",
"operator.write",
"<=2026.7"
],
[
"board.widget.put",
"board",
"operator.write",
"<=2026.7"
],
[
"board.widget.grant",
"board",
"operator.approvals",
"<=2026.7"
],
[
"board.widget.appView",
"board",
"operator.read",
"2026.7"
],
[
"board.event",
"board",
"operator.write",
"<=2026.7"
],
[
"audit.list",
"audit",
"operator.read",
"2026.7"
],
[
"audit.activity.list",
"audit",
"operator.read",
"2026.7"
],
[
"users.list",
"users",
"operator.read",
"<=2026.7"
],
[
"users.self",
"users",
"operator.read",
"<=2026.7"
],
[
"users.linkEmail",
"users",
"operator.admin",
"<=2026.7"
],
[
"users.setDisplayName",
"users",
"operator.write",
"<=2026.7"
],
[
"users.setAvatar",
"users",
"operator.write",
"<=2026.7"
],
[
"users.setRole",
"users",
"operator.admin",
"2026.8"
],
[
"users.listAuthLinks",
"users",
"operator.read",
"2026.8"
],
[
"users.listModelAccounts",
"users",
"operator.read",
"2026.8"
],
[
"users.selectModelAccount",
"users",
"operator.write",
"2026.8"
],
[
"users.linkAuthProfile",
"users",
"operator.admin",
"2026.8"
],
[
"users.unlinkAuthProfile",
"users",
"operator.write",
"2026.8"
],
[
"users.authConnect.start",
"users",
"operator.write",
"2026.8"
],
[
"users.authConnect.answer",
"users",
"operator.write",
"2026.8"
],
[
"users.authConnect.status",
"users",
"operator.write",
"2026.8"
],
[
"users.authConnect.cancel",
"users",
"operator.write",
"2026.8"
],
[
"users.authConnect.catalog",
"users",
"operator.write",
"2026.8"
],
[
"taskSuggestions.list",
"task-suggestions",
"operator.read",
"<=2026.7"
],
[
"taskSuggestions.create",
"task-suggestions",
"operator.write",
"<=2026.7"
],
[
"taskSuggestions.accept",
"task-suggestions",
"operator.admin",
"<=2026.7"
],
[
"taskSuggestions.dismiss",
"task-suggestions",
"operator.write",
"<=2026.7"
],
[
"environments.list",
"environments",
"dynamic",
"2026.7"
],
[
"environments.status",
"environments",
"operator.read",
"2026.7"
],
[
"worktrees.list",
"worktrees",
"operator.read",
"2026.7"
],
[
"worktrees.branches",
"worktrees",
"operator.write",
"2026.7"
],
[
"fs.listDir",
"fs",
"dynamic",
"<=2026.7"
],
[
"worktrees.create",
"worktrees",
"operator.write",
"2026.7",
CONTROL_PLANE_WRITE
],
[
"worktrees.remove",
"worktrees",
"operator.admin",
"2026.7",
CONTROL_PLANE_WRITE
],
[
"worktrees.restore",
"worktrees",
"operator.admin",
"2026.7",
CONTROL_PLANE_WRITE
],
[
"worktrees.gc",
"worktrees",
"operator.admin",
"2026.7",
CONTROL_PLANE_WRITE
],
[
"agents.list",
"agents",
"operator.read",
"<=2026.7"
],
[
"agents.create",
"agents",
"operator.admin",
"<=2026.7"
],
[
"agents.update",
"agents",
"operator.admin",
"<=2026.7"
],
[
"agents.delete",
"agents",
"operator.admin",
"<=2026.7"
],
[
"agents.files.list",
"agents",
"operator.read",
"<=2026.7"
],
[
"agents.files.get",
"agents",
"operator.read",
"<=2026.7"
],
[
"agents.files.set",
"agents",
"operator.admin",
"<=2026.7"
],
[
"sessions.files.list",
"sessions-files",
"operator.read",
"<=2026.7"
],
[
"sessions.files.get",
"sessions-files",
"operator.read",
"<=2026.7"
],
[
"sessions.files.set",
"sessions-files",
"operator.admin",
"<=2026.7"
],
[
"sessions.files.reveal",
"sessions-files",
"operator.admin",
"<=2026.7"
],
[
"artifacts.list",
"artifacts",
"operator.read",
"<=2026.7"
],
[
"artifacts.get",
"artifacts",
"operator.read",
"<=2026.7"
],
[
"artifacts.download",
"artifacts",
"operator.read",
"<=2026.7"
],
[
"skills.status",
"skills",
"operator.read",
"<=2026.7"
],
[
"skills.library.list",
"skills",
"operator.read",
"2026.8"
],
[
"skills.library.read",
"skills",
"operator.read",
"2026.8"
],
[
"skills.library.save",
"skills",
"operator.write",
"2026.8"
],
[
"skills.library.mutate",
"skills",
"operator.write",
"2026.8"
],
[
"skills.library.activate",
"skills",
"operator.write",
"2026.8"
],
[
"skills.library.import",
"skills",
"operator.write",
"2026.8"
],
[
"skills.library.upload",
"skills",
"operator.write",
"2026.8"
],
[
"skills.search",
"skills",
"operator.read",
"<=2026.7"
],
[
"skills.detail",
"skills",
"operator.read",
"<=2026.7"
],
[
"skills.securityVerdicts",
"skills",
"operator.read",
"<=2026.7"
],
[
"skills.skillCard",
"skills",
"operator.read",
"<=2026.7"
],
[
"skills.bins",
"skills",
"node",
"<=2026.7"
],
[
"skills.upload.begin",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.upload.chunk",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.upload.commit",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.install",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.update",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.curator.status",
"skills",
"operator.read",
"<=2026.7"
],
[
"skills.curator.pin",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.curator.unpin",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.curator.restore",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.proposals.list",
"skills",
"operator.read",
"<=2026.7"
],
[
"skills.proposals.inspect",
"skills",
"operator.read",
"<=2026.7"
],
[
"skills.proposals.historyStatus",
"skills",
"operator.read",
"<=2026.7"
],
[
"skills.proposals.historyScan",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.proposals.create",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.proposals.update",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.proposals.revise",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.proposals.requestRevision",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.proposals.apply",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.proposals.reject",
"skills",
"operator.admin",
"<=2026.7"
],
[
"skills.proposals.quarantine",
"skills",
"operator.admin",
"<=2026.7"
],
[
"update.status",
"update",
"operator.admin",
"<=2026.7"
],
[
"update.run",
"update",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"voicewake.get",
"voicewake",
"operator.read",
"<=2026.7"
],
[
"voicewake.set",
"voicewake",
"operator.write",
"<=2026.7"
],
[
"secrets.reload",
null,
"operator.admin",
"<=2026.7"
],
[
"secrets.resolve",
null,
"operator.admin",
"<=2026.7"
],
[
"voicewake.routing.get",
"voicewake-routing",
"operator.read",
"<=2026.7"
],
[
"sessions.list",
"sessions-read",
"operator.read",
"<=2026.7",
{ startup: true }
],
[
"sessions.subscribe",
"sessions-subscriptions",
"operator.read",
"<=2026.7",
{ startup: true }
],
[
"sessions.messages.subscribe",
"sessions-subscriptions",
"operator.read",
"<=2026.7"
],
[
"sessions.messages.unsubscribe",
"sessions-subscriptions",
"operator.read",
"<=2026.7"
],
[
"sessions.viewers.set",
"sessions-subscriptions",
"operator.read",
"2026.7"
],
[
"sessions.preview",
"sessions-read",
"operator.read",
"<=2026.7"
],
[
"sessions.describe",
"sessions-read",
"operator.read",
"<=2026.7",
{ lifetime: "observation" }
],
[
"sessions.branches.list",
"sessions-rewind",
"operator.read",
"<=2026.7"
],
[
"sessions.branches.switch",
"sessions-rewind",
"operator.admin",
"<=2026.7"
],
[
"sessions.rewind",
"sessions-rewind",
"operator.admin",
"<=2026.7"
],
[
"sessions.fork",
"sessions-rewind",
"operator.write",
"<=2026.7"
],
[
"sessions.create",
"sessions-create",
"dynamic",
"<=2026.7",
{ startup: true }
],
[
"sessions.recover",
"sessions-recover",
"operator.write",
"2026.8",
{ startup: true }
],
[
"sessions.send",
"sessions-messaging",
"operator.write",
"<=2026.7",
{ startup: true }
],
[
"sessions.abort",
"sessions-abort",
"operator.write",
"<=2026.7",
{ startup: true }
],
[
"sessions.patch",
"sessions-mutations",
"dynamic",
"<=2026.7"
],
[
"sessions.goal.update",
"sessions-goal",
"operator.write",
"2026.8"
],
[
"sessions.goal.clear",
"sessions-goal",
"operator.write",
"2026.8"
],
[
"sessions.pluginPatch",
"sessions-mutations",
"operator.admin",
"<=2026.7"
],
[
"sessions.cleanup",
"sessions-read",
"operator.admin",
"<=2026.7"
],
[
"sessions.reset",
"sessions-mutations",
"operator.admin",
"<=2026.7"
],
[
"sessions.delete",
"sessions-delete",
"dynamic",
"<=2026.7"
],
[
"sessions.compact",
"sessions-compact",
"operator.admin",
"<=2026.7"
],
[
"sessions.groups.list",
"sessions-groups",
"operator.read",
"<=2026.7"
],
[
"sessions.groups.defaults",
"sessions-groups",
"operator.write",
"2026.8"
],
[
"sessions.groups.put",
"sessions-groups",
"operator.write",
"<=2026.7"
],
[
"sessions.groups.rename",
"sessions-groups",
"operator.write",
"<=2026.7"
],
[
"sessions.groups.update",
"sessions-groups",
"operator.write",
"2026.8"
],
[
"sessions.groups.delete",
"sessions-groups",
"operator.write",
"<=2026.7"
],
[
"last-heartbeat",
"system",
"operator.read",
"<=2026.7"
],
[
"set-heartbeats",
"system",
"operator.admin",
"<=2026.7"
],
[
"wake",
"cron",
"operator.write",
"<=2026.7"
],
[
"node.pair.list",
"nodes",
"operator.pairing",
"<=2026.7"
],
[
"node.pair.approve",
"nodes",
"operator.pairing",
"<=2026.7"
],
[
"node.pair.reject",
"nodes",
"operator.pairing",
"<=2026.7"
],
[
"node.pair.remove",
"nodes",
"operator.pairing",
"<=2026.7"
],
[
"device.pair.list",
"devices",
"operator.pairing",
"<=2026.7"
],
[
"device.pair.approve",
"devices",
"operator.pairing",
"<=2026.7"
],
[
"device.pair.reject",
"devices",
"operator.pairing",
"<=2026.7"
],
[
"device.pair.remove",
"devices",
"operator.pairing",
"<=2026.7"
],
[
"device.pair.rename",
"devices",
"operator.pairing",
"2026.7"
],
[
"device.token.rotate",
"devices",
"operator.pairing",
"<=2026.7"
],
[
"device.token.revoke",
"devices",
"operator.pairing",
"<=2026.7"
],
[
"device.pair.setupCode",
"device-pair-setup",
"operator.admin",
"<=2026.7",
{ advertise: false }
],
[
"device.pair.setupStatus",
"device-pair-setup",
"operator.admin",
"2026.8",
{ advertise: false }
],
[
"node.rename",
"nodes",
"operator.pairing",
"<=2026.7"
],
[
"node.list",
"nodes",
"operator.read",
"<=2026.7"
],
[
"node.describe",
"nodes",
"operator.read",
"<=2026.7"
],
[
"node.pluginSurface.refresh",
"nodes",
"node",
"<=2026.7"
],
[
"node.pluginTools.update",
"nodes",
"node",
"<=2026.7"
],
[
"node.skills.update",
"nodes",
"node",
"<=2026.7"
],
[
"node.runnerInventory.update",
"nodes",
"node",
"2026.8",
{ advertise: false }
],
[
"node.pending.drain",
"nodes-pending",
"node",
"<=2026.7"
],
[
"node.pending.enqueue",
"nodes-pending",
"operator.write",
"<=2026.7"
],
[
"node.invoke",
"nodes",
"dynamic",
"<=2026.7"
],
[
"node.pending.pull",
"nodes",
"node",
"<=2026.7"
],
[
"node.pending.ack",
"nodes",
"node",
"<=2026.7"
],
[
"node.invoke.progress",
"nodes",
"node",
"<=2026.7"
],
[
"node.invoke.result",
"nodes",
"node",
"<=2026.7"
],
[
"node.event",
"nodes",
"node",
"<=2026.7"
],
[
"cron.get",
"cron",
"operator.read",
"<=2026.7"
],
[
"cron.list",
"cron",
"operator.read",
"<=2026.7"
],
[
"cron.status",
"cron",
"operator.read",
"<=2026.7"
],
[
"cron.scratch.get",
"cron",
"operator.admin",
"2026.7"
],
[
"cron.scratch.set",
"cron",
"operator.admin",
"2026.7"
],
[
"cron.add",
"cron",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"cron.update",
"cron",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"cron.remove",
"cron",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"cron.run",
"cron",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"cron.runs",
"cron",
"operator.read",
"<=2026.7"
],
[
"gateway.identity.get",
"system",
"operator.read",
"<=2026.7"
],
[
"gateway.restart.preflight",
"restart",
"operator.read",
"<=2026.7",
{ compatibilityRestored: true }
],
[
"gateway.restart.request",
"restart",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"system-presence",
"system",
"operator.read",
"<=2026.7"
],
[
"system-event",
"system",
"operator.admin",
"<=2026.7"
],
[
"message.action",
"send",
"operator.write",
"<=2026.7"
],
[
"conversations.send",
"conversations",
"operator.admin",
"<=2026.7"
],
[
"conversations.turn",
"conversations",
"operator.admin",
"<=2026.7"
],
[
"conversations.turn.cancel",
"conversations",
"operator.admin",
"<=2026.7"
],
[
"send",
"send",
"operator.write",
"<=2026.7"
],
[
"agent",
"agent",
"dynamic",
"<=2026.7",
{ startup: true }
],
[
"agent.identity.get",
"agent-identity",
"operator.read",
"<=2026.7"
],
[
"agent.wait",
"agent",
"operator.write",
"<=2026.7",
{
startup: true,
lifetime: "observation"
}
],
[
"chat.history",
"chat",
"operator.read",
"<=2026.7",
{ startup: true }
],
[
"chat.startup",
"chat",
"operator.read",
"<=2026.7",
{ startup: true }
],
[
"chat.metadata",
"chat",
"operator.read",
"<=2026.7",
{ startup: true }
],
[
"chat.message.get",
"chat",
"operator.read",
"<=2026.7",
{ startup: true }
],
[
"chat.abort",
"chat-abort",
"operator.write",
"<=2026.7"
],
[
"chat.send",
"chat-send",
"operator.write",
"<=2026.7",
{ startup: true }
],
[
"terminal.open",
"terminal",
"operator.admin",
"2026.7"
],
[
"terminal.input",
"terminal",
"operator.admin",
"2026.7"
],
[
"terminal.resize",
"terminal",
"operator.admin",
"2026.7"
],
[
"terminal.close",
"terminal",
"operator.admin",
"2026.7"
],
[
"channels.pairing.list",
"channel-pairing",
"operator.pairing",
"2026.7"
],
[
"channels.pairing.approve",
"channel-pairing",
"dynamic",
"2026.7"
],
[
"channels.pairing.dismiss",
"channel-pairing",
"operator.pairing",
"2026.7"
],
[
"assistant.media.get",
null,
"operator.read",
"<=2026.7",
{ advertise: false }
],
[
"sessions.get",
"sessions-read",
"operator.read",
"<=2026.7",
{
advertise: false,
lifetime: "observation"
}
],
[
"sessions.resolve",
"sessions-read",
"operator.read",
"<=2026.7",
{ advertise: false }
],
[
"sessions.usage",
"usage",
"operator.read",
"<=2026.7",
{ advertise: false }
],
[
"sessions.usage.timeseries",
"usage",
"operator.read",
"<=2026.7",
{ advertise: false }
],
[
"sessions.usage.logs",
"usage",
"operator.read",
"<=2026.7",
{ advertise: false }
],
[
"poll",
"send",
"operator.write",
"<=2026.7",
{ advertise: false }
],
[
"sessions.steer",
"sessions-messaging",
"operator.write",
"<=2026.7",
{
advertise: false,
description: "Deprecated alias for chat.send queueMode interrupt; removal per protocol deprecation policy."
}
],
[
"push.test",
"push",
"operator.write",
"<=2026.7",
{ advertise: false }
],
[
"attach.grant",
"attach",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"attach.revoke",
"attach",
"operator.admin",
"<=2026.7"
],
[
"push.web.vapidPublicKey",
"push",
"operator.write",
"<=2026.7",
{ advertise: false }
],
[
"push.web.subscribe",
"push",
"operator.write",
"<=2026.7",
{ advertise: false }
],
[
"push.web.unsubscribe",
"push",
"operator.write",
"<=2026.7",
{ advertise: false }
],
[
"push.web.test",
"push",
"operator.write",
"<=2026.7",
{ advertise: false }
],
[
"push.web.preferences.get",
"push",
"operator.read",
"2026.8"
],
[
"push.web.preferences.set",
"push",
"operator.write",
"2026.8"
],
[
"config.openFile",
"config",
"operator.admin",
"<=2026.7",
{ advertise: false }
],
[
"connect",
"connect",
"operator.admin",
"<=2026.7",
{ advertise: false }
],
[
"chat.inject",
"chat",
"operator.admin",
"<=2026.7",
{ advertise: false }
],
[
"nativeHook.invoke",
"native-hook-relay",
"operator.admin",
"<=2026.7",
{ advertise: false }
],
[
"web.login.start",
"web",
"operator.admin",
"<=2026.7",
{ advertise: false }
],
[
"web.login.wait",
"web",
"operator.admin",
"<=2026.7",
{ advertise: false }
],
[
"terminal.attach",
"terminal",
"operator.admin",
"2026.7"
],
[
"terminal.list",
"terminal",
"operator.admin",
"2026.7"
],
[
"controlUi.githubPreview",
"control-ui",
"operator.read",
"<=2026.7"
],
[
"system.info",
"system",
"operator.read",
"<=2026.7"
],
[
"agents.workspace.list",
"agents-workspace",
"operator.read",
"2026.7"
],
[
"agents.workspace.get",
"agents-workspace",
"operator.read",
"2026.7"
],
[
"tts.speak",
"tts",
"operator.write",
"2026.7"
],
[
"plugins.list",
"plugins",
"operator.read",
"<=2026.7"
],
[
"plugins.search",
"plugins",
"operator.read",
"<=2026.7"
],
[
"plugins.install",
"plugins-mutations",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"plugins.setEnabled",
"plugins-mutations",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"plugins.uninstall",
"plugins-mutations",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"plugins.refresh",
"plugins-mutations",
"operator.admin",
"<=2026.7",
CONTROL_PLANE_WRITE
],
[
"controlUi.sessionPullRequests.subscribe",
"control-ui",
"operator.read",
"2026.7"
],
[
"controlUi.sessionPreview",
"control-ui",
"operator.read",
"2026.8"
],
[
"gateway.suspend.prepare",
"suspend",
"operator.admin",
"2026.7",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"gateway.suspend.status",
"suspend",
"operator.read",
"2026.7"
],
[
"gateway.suspend.resume",
"suspend",
"operator.admin",
"2026.7"
],
[
"chat.toolTitles",
"chat",
"operator.write",
"<=2026.7"
],
[
"sessions.diff",
"sessions-diff",
"operator.read",
"<=2026.7"
],
[
"openclaw.setup.verify",
"system-agent",
"operator.admin",
"<=2026.7"
],
[
"environments.create",
"environments",
"operator.admin",
"2026.7",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"environments.destroy",
"environments",
"operator.admin",
"2026.7",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"sessions.catalog.list",
"session-catalog",
"operator.read",
"2026.7"
],
[
"sessions.catalog.read",
"session-catalog",
"operator.read",
"2026.7"
],
[
"terminal.upload",
"terminal",
"operator.admin",
"2026.7"
],
[
"sessions.catalog.continue",
"session-catalog",
"operator.write",
"2026.7"
],
[
"sessions.catalog.archive",
"session-catalog",
"operator.write",
"2026.7"
],
[
"approval.get",
null,
"operator.approvals",
"2026.7"
],
[
"approval.resolve",
null,
"operator.approvals",
"2026.7"
],
[
"sessions.search",
"sessions-read",
"operator.read",
"<=2026.7"
],
[
"sessions.dispatch",
"sessions-dispatch",
"dynamic",
"2026.7",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"sessions.reclaim",
"sessions-dispatch",
"operator.write",
"2026.7",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"models.probe",
"models-probe",
"operator.admin",
"<=2026.7"
],
[
"migrations.memory.plan",
"migrations",
"operator.admin",
"2026.7"
],
[
"migrations.memory.apply",
"migrations",
"operator.admin",
"2026.7",
CONTROL_PLANE_WRITE
],
[
"ui.command",
"ui-command",
"operator.write",
"2026.7"
],
[
"approval.history",
null,
"operator.approvals",
"2026.7"
],
[
"plugin.surface.refresh",
"nodes",
"operator.read",
"<=2026.7"
],
[
"conversations.list",
"conversations",
"operator.admin",
"<=2026.7"
],
[
"session.discussion.info",
"session-discussion",
"operator.read",
"2026.7"
],
[
"session.discussion.open",
"session-discussion",
"operator.write",
"2026.7"
],
[
"board.prompt.authorize",
"board",
"operator.read",
"2026.7"
],
[
"board.data.read",
"board",
"operator.read",
"2026.7"
],
[
"board.action",
"board",
"operator.write",
"2026.7"
],
[
"sessions.observer.visibility",
"session-observer-rpc",
"operator.read",
"2026.7"
],
[
"session.visibility.set",
"sessions-sharing",
"operator.write",
"2026.7"
],
[
"session.members.list",
"sessions-sharing",
"operator.read",
"2026.7"
],
[
"session.members.add",
"sessions-sharing",
"operator.write",
"2026.7"
],
[
"session.members.remove",
"sessions-sharing",
"operator.write",
"2026.7"
],
[
"session.suggestions.add",
"sessions-suggestions",
"operator.write",
"2026.7"
],
[
"session.suggestions.list",
"sessions-suggestions",
"operator.read",
"2026.7"
],
[
"session.suggestions.resolve",
"sessions-suggestions",
"operator.write",
"2026.7"
],
[
"session.reactions.set",
"sessions-reactions",
"operator.write",
"2026.9"
],
[
"session.reactions.list",
"sessions-reactions",
"operator.read",
"2026.9"
],
[
"session.typing",
"sessions-suggestions",
"operator.write",
"2026.7"
],
[
"sessions.companion.ask",
"session-companion-rpc",
"operator.read",
"2026.7"
],
[
"sessions.companion.state",
"session-companion-rpc",
"operator.read",
"2026.7"
],
[
"sessions.companion.reset",
"session-companion-rpc",
"operator.write",
"2026.7",
CONTROL_PLANE_WRITE
],
[
"memory.search",
"memory-search",
"operator.read",
"2026.7"
],
[
"skills.proposals.events.list",
"skills",
"operator.read",
"2026.7"
],
[
"skills.proposals.evaluate",
"skills",
"operator.admin",
"2026.7",
CONTROL_PLANE_WRITE
],
[
"hooks.status",
"hooks-status",
"operator.read",
"2026.7"
],
[
"audit.run.inspect",
"audit",
"operator.read",
"2026.7"
],
[
"sessions.patchMany",
"sessions-mutations",
"dynamic",
"2026.8"
],
[
"update.hold",
"update",
"operator.admin",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"sessions.catalog.startTerminal",
"session-catalog",
"operator.admin",
"2026.8"
],
[
"worker.desktop.observe",
"environments",
"operator.admin",
"2026.8",
{ startup: true }
],
[
"projects.list",
"projects",
"operator.read",
"2026.8"
],
[
"projects.register",
"projects",
"operator.admin",
"2026.8"
],
[
"projects.remove",
"projects",
"operator.admin",
"2026.8"
],
[
"worker.desktop.launch",
"environments",
"operator.admin",
"2026.8",
{ startup: true }
],
[
"secrets.store.list",
null,
"operator.admin",
"2026.8"
],
[
"secrets.store.set",
null,
"operator.admin",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"secrets.store.delete",
null,
"operator.admin",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"users.prefs.get",
"users",
"operator.read",
"2026.8"
],
[
"users.prefs.set",
"users",
"operator.write",
"2026.8"
],
[
"projects.add",
"projects",
"operator.write",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"projects.searchRemote",
"projects",
"operator.read",
"2026.8",
{ description: "Search GitHub repositories that can be cloned as managed projects." }
],
[
"desktop.observe",
"environments",
"operator.admin",
"2026.8",
{ startup: true }
],
[
"desktop.launch",
"environments",
"operator.admin",
"2026.8",
{ startup: true }
],
[
"device.scopes.requestUpgrade",
"devices",
"operator.read",
"2026.8"
],
[
"device.scopes.waitUpgrade",
"devices",
"operator.read",
"2026.8",
OBSERVATION
],
[
"portal.list",
"portals",
"operator.read",
"2026.8"
],
[
"portal.open",
"portals",
"operator.write",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"portal.close",
"portals",
"operator.write",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"sessions.move",
"sessions-dispatch",
"dynamic",
"2026.8",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"sessions.assignOwner",
"sessions-mutations",
"operator.write",
"2026.8"
],
[
"progressCard.get",
"progress-card",
"operator.read",
"2026.8"
],
[
"progressCard.put",
"progress-card",
"operator.write",
"2026.8"
],
[
"tools.github.status",
"tools-github",
"operator.read",
"2026.8"
],
[
"tools.github.configure",
"tools-github",
"operator.admin",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"tools.github.authorize.start",
"tools-github",
"operator.admin",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"tools.github.authorize.poll",
"tools-github",
"operator.admin",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"tools.github.authorize.cancel",
"tools-github",
"operator.admin",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"sessions.github.publish",
"sessions-github",
"operator.sessions.write",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"diagnostics.lanes",
"diagnostics",
"operator.read",
"2026.8"
],
[
"session.members.listEvidence",
"sessions-sharing",
"operator.read",
"2026.8"
],
[
"plugins.inspect",
"plugins",
"operator.read",
"2026.8"
],
[
"users.github.status",
"users",
"operator.read",
"2026.8",
{ startup: true }
],
[
"users.github.authorize.start",
"users",
"operator.read",
"2026.8",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"users.github.authorize.poll",
"users",
"operator.read",
"2026.8",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"users.github.authorize.cancel",
"users",
"operator.read",
"2026.8",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"users.github.disconnect",
"users",
"operator.read",
"2026.8",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"sessions.github.options",
"sessions-github",
"operator.read",
"2026.8",
{ startup: true }
],
[
"sessions.github.status",
"sessions-github",
"operator.read",
"2026.8",
{ startup: true }
],
[
"sessions.github.confirm",
"sessions-github",
"operator.write",
"2026.8",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"sessions.title.prepare",
"sessions-title",
"operator.write",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"users.mentionable",
"users-mentionable",
"operator.read",
"2026.8",
{ startup: true }
],
[
"mentions.list",
"mentions",
"operator.read",
"2026.8",
{ startup: true }
],
[
"mentions.dismiss",
"mentions",
"operator.read",
"2026.8",
{ startup: true }
],
[
"transcripts.list",
"transcripts",
"operator.read",
"2026.8"
],
[
"transcripts.get",
"transcripts",
"operator.read",
"2026.8"
],
[
"models.authOrderSet",
"models-auth-order",
"operator.admin",
"2026.8",
CONTROL_PLANE_WRITE
],
[
"canvas.document.view",
"canvas",
"operator.read",
"2026.9"
],
[
"plugins.controlUi.list",
"plugins-control-ui",
"operator.read",
"2026.9"
],
[
"plugins.controlUi.reload",
"plugins-control-ui",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"plugins.controlUi.report",
"plugins-control-ui",
"operator.read",
"2026.9"
],
[
"plugins.controlUi.status",
"plugins-control-ui",
"operator.admin",
"2026.9"
],
[
"update.runs.get",
"update",
"operator.admin",
"2026.9"
],
[
"update.runs.list",
"update",
"operator.admin",
"2026.9"
],
[
"gateway.suspend.handoff",
"suspend",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"transcripts.export",
"transcripts",
"operator.read",
"2026.9"
],
[
"transcripts.status",
"transcripts",
"operator.read",
"2026.9"
],
[
"update.report",
"update",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"skills.workshop.read",
"skills",
"operator.read",
"2026.9"
],
[
"session.publicShare.set",
"sessions-sharing",
"operator.write",
"2026.9"
],
[
"claws.monitors",
"claws-monitors",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"plugins.catalog.browse",
"plugins",
"operator.read",
"2026.9"
],
[
"plugins.catalog.categories",
"plugins",
"operator.read",
"2026.9"
],
[
"plugins.catalog.get",
"plugins",
"operator.read",
"2026.9"
],
[
"environments.prepare",
"environments",
"operator.admin",
"2026.9",
SIDECAR_CONTROL_PLANE_WRITE
],
[
"models.authRefresh",
"models-auth-status",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"models.authLogin",
"models-auth-login",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"models.authSetApiKey",
"models-auth-status",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"sessions.storage.status",
"sessions-read",
"operator.admin",
"2026.9"
],
[
"sessions.storage.run",
"sessions-read",
"operator.admin",
"2026.9"
],
[
"plugins.reload",
"plugins-mutations",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"claws.packages.remove",
"claws-packages",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"canvas.document.preview",
"canvas",
"operator.read",
"2026.9"
],
[
"computer.status",
"computer",
"operator.read",
"2026.9"
],
[
"computer.invoke",
"computer",
"operator.write",
"2026.9"
],
[
"sessions.activitySummary.ensure",
"session-activity-summary",
"operator.write",
"2026.9"
],
[
"controlUi.sessionPullRequests.checks",
"control-ui",
"operator.read",
"2026.9"
],
[
"diagnostics.cpuProfile",
"diagnostics",
"operator.admin",
"2026.9"
],
[
"talk.voice.get",
"talk",
"operator.talk",
"2026.9"
],
[
"talk.voice.set",
"talk",
"operator.talk",
"2026.9"
],
[
"talk.voice.complete",
"talk",
"operator.talk",
"2026.9"
],
[
"plugins.credentials.inspect",
"plugins",
"operator.admin",
"2026.9"
],
[
"plugins.skills.read",
"plugins",
"operator.read",
"2026.9"
],
[
"diagnostics.heapProfile",
"diagnostics",
"operator.admin",
"2026.9"
],
[
"desktop.release",
"environments",
"operator.admin",
"2026.9",
{ startup: true }
],
[
"mcp.authLogin",
"mcp-auth-login",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"environments.session.status",
"environments",
"operator.read",
"2026.9"
],
[
"environments.session.create",
"environments",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"environments.session.destroy",
"environments",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"environments.session.exec",
"environments",
"operator.admin",
"2026.9"
],
[
"sessions.setInvolvement",
"sessions-mutations",
"operator.read",
"2026.9"
],
[
"transcripts.summarize",
"transcripts",
"operator.write",
"2026.9"
],
[
"controlUi.linkPreview",
"control-ui",
"operator.read",
"2026.9"
],
[
"themes.list",
"themes",
"operator.read",
"2026.9"
],
[
"themes.get",
"themes",
"operator.read",
"2026.9"
],
[
"themes.set",
"themes",
"operator.write",
"2026.9"
],
[
"themes.import",
"themes",
"operator.write",
"2026.9"
],
[
"controlUi.githubDetail",
"control-ui",
"operator.read",
"2026.9"
],
[
"progressCard.refresh",
"progress-card",
"operator.write",
"2026.9"
],
[
"webSearch.status",
"web-search",
"operator.read",
"2026.9"
],
[
"webSearch.test",
"web-search",
"operator.admin",
"2026.9"
],
[
"sessions.providerReview.continue",
"sessions-provider-review",
"operator.write",
"2026.9"
],
[
"users.linkChannelIdentity",
"users",
"operator.admin",
"2026.9"
],
[
"users.unlinkChannelIdentity",
"users",
"operator.admin",
"2026.9"
],
[
"users.listChannelIdentities",
"users",
"operator.admin",
"2026.9"
],
[
"users.personalFile.get",
"users",
"operator.read",
"2026.9"
],
[
"users.personalFile.set",
"users",
"operator.read",
"2026.9"
],
[
"portal.session.list",
"portals",
"operator.write",
"2026.9",
PORTAL_SESSION_WRITE
],
[
"portal.session.open",
"portals",
"operator.write",
"2026.9",
PORTAL_SESSION_WRITE
],
[
"portal.session.close",
"portals",
"operator.write",
"2026.9",
PORTAL_SESSION_WRITE
],
[
"cron.history",
"cron",
"operator.read",
"2026.9"
],
[
"presence.activity",
"system",
"operator.read",
"2026.9"
],
[
"presence.query",
"presence",
"operator.read",
"2026.9"
],
[
"users.merge",
"users",
"operator.admin",
"2026.9"
],
[
"gateway.stop.request",
"restart",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"diagnostics.heapSnapshot",
"diagnostics",
"operator.admin",
"2026.9"
],
[
"sessions.catalog.import",
"session-catalog",
"operator.write",
"2026.9"
],
[
"backup.status",
"backup",
"operator.read",
"2026.9"
],
[
"storage.locations.list",
"storage",
"operator.read",
"2026.9"
],
[
"storage.locations.probe",
"storage",
"operator.read",
"2026.9"
],
[
"mcp.app.onboard",
"mcp-app-onboarding",
"operator.write",
"2026.9",
SESSION_WRITE
],
[
"mcp.app.discover",
"mcp-app-extensions",
"operator.write",
"2026.9",
SESSION_WRITE
],
[
"mcp.app.launch",
"mcp-app-extensions",
"operator.write",
"2026.9",
SESSION_WRITE
],
[
"mcp.app.settings",
"mcp-app-extensions",
"operator.write",
"2026.9",
SESSION_WRITE
],
[
"mcp.app.mention",
"mcp-app-extensions",
"operator.write",
"2026.9",
SESSION_WRITE
],
[
"mcp.app.formResource",
"mcp-app",
"operator.write",
"2026.9"
],
[
"mcp.app.modelContext",
"mcp-app",
"operator.read",
"2026.9"
],
[
"mcp.app.removeModelContext",
"mcp-app",
"operator.write",
"2026.9"
],
[
"mcp.app.writeResource",
"mcp-app",
"operator.write",
"2026.9"
],
[
"mcp.app.subscribeResource",
"mcp-app",
"operator.read",
"2026.9"
],
[
"mcp.app.unsubscribeResource",
"mcp-app",
"operator.read",
"2026.9"
],
[
"mcp.app.openFile",
"mcp-app",
"operator.read",
"2026.9"
],
[
"memory.get",
"memory-search",
"operator.read",
"2026.9"
],
[
"memory.status",
"memory-search",
"operator.read",
"2026.9"
],
[
"sessions.files.assets",
"sessions-files",
"operator.read",
"2026.9"
],
[
"worktrees.recoverRemoval",
"worktrees",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
],
[
"worktrees.retireSnapshot",
"worktrees",
"operator.admin",
"2026.9",
CONTROL_PLANE_WRITE
]
];
//#endregion
//#region src/gateway/methods/core-profile-access.ts
const PROFILE_DEPENDENT_CORE_METHODS = /* @__PURE__ */ new Set([
"agent.wait",
"presence.activity",
"models.list",
"presence.query",
"webSearch.status",
"webSearch.test",
"talk.config",
"talk.voice.get",
"ui.command",
"users.linkAuthProfile",
"users.linkEmail",
"users.merge",
"users.linkChannelIdentity",
"users.unlinkChannelIdentity",
"users.listChannelIdentities",
"users.listAuthLinks",
"users.listModelAccounts",
"users.selectModelAccount",
"users.mentionable",
"users.setAvatar",
"users.setDisplayName",
"users.setRole",
"users.unlinkAuthProfile"
]);
const PROFILE_DEPENDENT_CORE_PREFIXES = [
"artifacts.",
"chat.",
"conversations.",
"controlUi.session",
"mcp.app.",
"mentions.",
"openclaw.approval.",
"openclaw.chat",
"progressCard.",
"projects.",
"secrets.",
"session.",
"sessions.",
"taskSuggestions.",
"terminal.",
"transcripts.",
"users.authConnect.",
"users.prefs.",
"themes.",
"users.github.",
"skills.library."
];
/** Classifies core methods whose behavior reads or mutates durable user/session ownership. */
function isCoreGatewayMethodProfileDependent(method) {
return isSessionProfileDependentMethod(method) || PROFILE_DEPENDENT_CORE_METHODS.has(method) || PROFILE_DEPENDENT_CORE_PREFIXES.some((prefix) => method.startsWith(prefix));
}
//#endregion
//#region src/gateway/methods/core-method-policy.ts
const CORE_GATEWAY_METHOD_SPEC_LIST = CORE_GATEWAY_METHOD_SPECS.map(([name, family, scope, since, policy]) => Object.assign({
name,
scope,
since,
...family ? { family } : {}
}, policy));
const CORE_GATEWAY_METHOD_SPEC_BY_NAME = new Map(CORE_GATEWAY_METHOD_SPEC_LIST.map((spec) => [spec.name, spec]));
/** Core methods that are listed early but return retryable unavailable until sidecars are ready. */
const STARTUP_UNAVAILABLE_GATEWAY_METHODS = CORE_GATEWAY_METHOD_SPEC_LIST.filter((spec) => spec.startup === true).map((spec) => spec.name);
/** Returns the core methods that should be advertised to external gateway clients. */
function listCoreAdvertisedGatewayMethodNames() {
return CORE_GATEWAY_METHOD_SPEC_LIST.filter((spec) => spec.advertise !== false).map((spec) => spec.name);
}
/** Returns all registered core method names, including hidden/internal compatibility methods. */
function listCoreGatewayMethodNames() {
return CORE_GATEWAY_METHOD_SPEC_LIST.map((spec) => spec.name);
}
/** Groups lazy-owned core methods by the module family that dispatches them. */
function listCoreGatewayHandlerMethodNames() {
const methodsByFamily = /* @__PURE__ */ new Map();
for (const [name, family] of CORE_GATEWAY_METHOD_SPECS) if (family) {
const methods = methodsByFamily.get(family) ?? [];
methods.push(name);
methodsByFamily.set(family, methods);
}
return methodsByFamily;
}
/** Looks up an operator-only core method scope, excluding node and dynamic methods. */
function resolveCoreOperatorGatewayMethodScope(method) {
const scope = CORE_GATEWAY_METHOD_SPEC_BY_NAME.get(method)?.scope;
return scope === "node" || scope === "dynamic" ? void 0 : scope;
}
/** Returns true for core methods reserved for authenticated node clients. */
function isCoreNodeGatewayMethod(method) {
return CORE_GATEWAY_METHOD_SPEC_BY_NAME.get(method)?.scope === NODE_GATEWAY_METHOD_SCOPE;
}
/** Returns true for core methods whose required operator scope is resolved by the handler. */
function isDynamicOperatorGatewayMethod(method) {
return CORE_GATEWAY_METHOD_SPEC_BY_NAME.get(method)?.scope === DYNAMIC_GATEWAY_METHOD_SCOPE;
}
/** Returns true when a method name has an explicit core policy entry. */
function isCoreGatewayMethodClassified(method) {
return CORE_GATEWAY_METHOD_SPEC_BY_NAME.has(method);
}
/** Creates dispatch descriptors for core handlers and fails if any handler lacks policy. */
function createCoreGatewayMethodDescriptors(handlers) {
const descriptors = [];
for (const spec of CORE_GATEWAY_METHOD_SPEC_LIST) {
const handler = handlers[spec.name];
if (!handler) continue;
descriptors.push({
name: spec.name,
handler,
owner: {
kind: "core",
area: "gateway"
},
scope: spec.scope,
profileAccess: spec.sessionAccess || isCoreGatewayMethodProfileDependent(spec.name) ? "required" : "independent",
...spec.since ? { since: spec.since } : {},
...spec.advertise === false ? { advertise: false } : {},
...spec.startup === true ? { startup: "unavailable-until-sidecars" } : {},
...spec.lifetime ? { lifetime: spec.lifetime } : {},
...spec.controlPlaneWrite === true ? { controlPlaneWrite: true } : {},
...spec.description ? { description: spec.description } : {},
...spec.sessionAccess ? { sessionAccess: spec.sessionAccess } : {}
});
}
for (const name of Object.keys(handlers)) if (!CORE_GATEWAY_METHOD_SPEC_BY_NAME.has(name)) throw new Error(`gateway method handler is missing a descriptor: ${name}`);
return descriptors;
}
//#endregion
export { isDynamicOperatorGatewayMethod as a, listCoreGatewayMethodNames as c, isCoreNodeGatewayMethod as i, resolveCoreOperatorGatewayMethodScope as l, createCoreGatewayMethodDescriptors as n, listCoreAdvertisedGatewayMethodNames as o, isCoreGatewayMethodClassified as r, listCoreGatewayHandlerMethodNames as s, STARTUP_UNAVAILABLE_GATEWAY_METHODS as t };