import { listChannelPlugins } from "../channels/plugins/index.js" ;
import { GATEWAY_EVENT_UPDATE_AVAILABLE } from "./events.js" ;
const BASE_METHODS = [
"health" ,
"diagnostics.stability" ,
"doctor.memory.status" ,
"doctor.memory.dreamDiary" ,
"doctor.memory.backfillDreamDiary" ,
"doctor.memory.resetDreamDiary" ,
"doctor.memory.resetGroundedShortTerm" ,
"doctor.memory.repairDreamingArtifacts" ,
"doctor.memory.dedupeDreamDiary" ,
"logs.tail" ,
"channels.status" ,
"channels.start" ,
"channels.logout" ,
"status" ,
"usage.status" ,
"usage.cost" ,
"tts.status" ,
"tts.providers" ,
"tts.enable" ,
"tts.disable" ,
"tts.convert" ,
"tts.setProvider" ,
"config.get" ,
"config.set" ,
"config.apply" ,
"config.patch" ,
"config.schema" ,
"config.schema.lookup" ,
"exec.approvals.get" ,
"exec.approvals.set" ,
"exec.approvals.node.get" ,
"exec.approvals.node.set" ,
"exec.approval.get" ,
"exec.approval.list" ,
"exec.approval.request" ,
"exec.approval.waitDecision" ,
"exec.approval.resolve" ,
"plugin.approval.list" ,
"plugin.approval.request" ,
"plugin.approval.waitDecision" ,
"plugin.approval.resolve" ,
"wizard.start" ,
"wizard.next" ,
"wizard.cancel" ,
"wizard.status" ,
"talk.config" ,
"talk.realtime.session" ,
"talk.speak" ,
"talk.mode" ,
"commands.list" ,
"models.list" ,
"models.authStatus" ,
"tools.catalog" ,
"tools.effective" ,
"agents.list" ,
"agents.create" ,
"agents.update" ,
"agents.delete" ,
"agents.files.list" ,
"agents.files.get" ,
"agents.files.set" ,
"skills.status" ,
"skills.search" ,
"skills.detail" ,
"skills.bins" ,
"skills.install" ,
"skills.update" ,
"update.run" ,
"voicewake.get" ,
"voicewake.set" ,
"secrets.reload" ,
"secrets.resolve" ,
"sessions.list" ,
"sessions.subscribe" ,
"sessions.unsubscribe" ,
"sessions.messages.subscribe" ,
"sessions.messages.unsubscribe" ,
"sessions.preview" ,
"sessions.compaction.list" ,
"sessions.compaction.get" ,
"sessions.compaction.branch" ,
"sessions.compaction.restore" ,
"sessions.create" ,
"sessions.send" ,
"sessions.abort" ,
"sessions.patch" ,
"sessions.reset" ,
"sessions.delete" ,
"sessions.compact" ,
"last-heartbeat" ,
"set-heartbeats" ,
"wake" ,
"node.pair.request" ,
"node.pair.list" ,
"node.pair.approve" ,
"node.pair.reject" ,
"node.pair.verify" ,
"device.pair.list" ,
"device.pair.approve" ,
"device.pair.reject" ,
"device.pair.remove" ,
"device.token.rotate" ,
"device.token.revoke" ,
"node.rename" ,
"node.list" ,
"node.describe" ,
"node.pending.drain" ,
"node.pending.enqueue" ,
"node.invoke" ,
"node.pending.pull" ,
"node.pending.ack" ,
"node.invoke.result" ,
"node.event" ,
"node.canvas.capability.refresh" ,
"cron.list" ,
"cron.status" ,
"cron.add" ,
"cron.update" ,
"cron.remove" ,
"cron.run" ,
"cron.runs" ,
"gateway.identity.get" ,
"system-presence" ,
"system-event" ,
"message.action" ,
"send" ,
"agent" ,
"agent.identity.get" ,
"agent.wait" ,
// WebChat WebSocket-native chat methods
"chat.history" ,
"chat.abort" ,
"chat.send" ,
];
export function listGatewayMethods(): string[] {
const channelMethods = listChannelPlugins().flatMap((plugin) => plugin.gatewayMethods ?? []);
return Array.from(new Set([...BASE_METHODS, ...channelMethods]));
}
export const GATEWAY_EVENTS = [
"connect.challenge" ,
"agent" ,
"chat" ,
"session.message" ,
"session.tool" ,
"sessions.changed" ,
"presence" ,
"tick" ,
"talk.mode" ,
"shutdown" ,
"health" ,
"heartbeat" ,
"cron" ,
"node.pair.requested" ,
"node.pair.resolved" ,
"node.invoke.request" ,
"device.pair.requested" ,
"device.pair.resolved" ,
"voicewake.changed" ,
"exec.approval.requested" ,
"exec.approval.resolved" ,
"plugin.approval.requested" ,
"plugin.approval.resolved" ,
GATEWAY_EVENT_UPDATE_AVAILABLE,
];
Messung V0.5 in Prozent C=100 H=100 G=100
¤ Dauer der Verarbeitung: 0.9 Sekunden
¤
*© Formatika GbR, Deutschland