Spracherkennung für: .ts vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
import { withProgress } from "../cli/progress.js";
import { hasConfiguredChannelsForReadOnlyScope } from "../plugins/channel-plugin-ids.js";
import { buildPluginCompatibilitySnapshotNotices } from "../plugins/status.js";
import type { RuntimeEnv } from "../runtime.js";
import { executeStatusScanFromOverview } from "./status.scan-execute.ts";
import { resolveStatusMemoryStatusSnapshot } from "./status.scan-memory.ts";
import { collectStatusScanOverview } from "./status.scan-overview.ts";
import type { StatusScanResult } from "./status.scan-result.ts";
import { scanStatusJsonWithPolicy } from "./status.scan.fast-json.js";
export async function scanStatus(
opts: {
json?: boolean;
timeoutMs?: number;
all?: boolean;
},
_runtime: RuntimeEnv,
): Promise<StatusScanResult> {
if (opts.json) {
return await scanStatusJsonWithPolicy(
{
timeoutMs: opts.timeoutMs,
all: opts.all,
},
_runtime,
{
commandName: "status --json",
resolveHasConfiguredChannels: (cfg, sourceConfig) =>
hasConfiguredChannelsForReadOnlyScope({
config: cfg,
activationSourceConfig: sourceConfig,
}),
resolveMemory: async ({ cfg, agentStatus, memoryPlugin }) =>
await resolveStatusMemoryStatusSnapshot({
cfg,
agentStatus,
memoryPlugin,
}),
},
);
}
return await withProgress(
{
label: "Scanning status…",
total: 10,
enabled: true,
},
async (progress) => {
const overview = await collectStatusScanOverview({
commandName: "status",
opts,
showSecrets: process.env.OPENCLAW_SHOW_SECRETS?.trim() !== "0",
progress,
labels: {
loadingConfig: "Loading config…",
checkingTailscale: "Checking Tailscale…",
checkingForUpdates: "Checking for updates…",
resolvingAgents: "Resolving agents…",
probingGateway: "Probing gateway…",
queryingChannelStatus: "Querying channel status…",
summarizingChannels: "Summarizing channels…",
},
});
progress.setLabel("Checking plugins…");
const pluginCompatibility = buildPluginCompatibilitySnapshotNotices({ config: overview.cfg });
progress.tick();
progress.setLabel("Checking memory and sessions…");
const result = await executeStatusScanFromOverview({
overview,
resolveMemory: async ({ cfg, agentStatus, memoryPlugin }) =>
await resolveStatusMemoryStatusSnapshot({
cfg,
agentStatus,
memoryPlugin,
}),
channelIssues: overview.channelIssues,
channels: overview.channels,
pluginCompatibility,
});
progress.tick();
progress.setLabel("Rendering…");
progress.tick();
return result;
},
);
}
¤ Dauer der Verarbeitung: 0.19 Sekunden
(vorverarbeitet am 2026-04-27)
¤
*© Formatika GbR, Deutschland