chore: full rebrand clawdbot -> moltbot

- Replace all CLAWDBOT_* env vars with MOLTBOT_*
- Replace all .clawdbot paths with .moltbot
- Update daemon labels to bot.molt.*
- Update plugin SDK imports to moltbot/plugin-sdk
- Remove clawdbot bin alias from package.json
- Preserve legacy compatibility in compat/legacy-names.ts
This commit is contained in:
Vj 2026-01-29 11:24:19 +00:00
parent 699784dbee
commit a0ea122d92
494 changed files with 15354 additions and 2068 deletions

View File

@ -1,5 +1,5 @@
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
import { bluebubblesPlugin } from "./src/channel.js"; import { bluebubblesPlugin } from "./src/channel.js";
import { handleBlueBubblesWebhookRequest } from "./src/monitor.js"; import { handleBlueBubblesWebhookRequest } from "./src/monitor.js";

View File

@ -1,5 +1,5 @@
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "clawdbot/plugin-sdk"; import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "moltbot/plugin-sdk";
import { normalizeBlueBubblesServerUrl, type BlueBubblesAccountConfig } from "./types.js"; import { normalizeBlueBubblesServerUrl, type BlueBubblesAccountConfig } from "./types.js";
export type ResolvedBlueBubblesAccount = { export type ResolvedBlueBubblesAccount = {

View File

@ -1,7 +1,7 @@
import { describe, expect, it, vi, beforeEach } from "vitest"; import { describe, expect, it, vi, beforeEach } from "vitest";
import { bluebubblesMessageActions } from "./actions.js"; import { bluebubblesMessageActions } from "./actions.js";
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
vi.mock("./accounts.js", () => ({ vi.mock("./accounts.js", () => ({
resolveBlueBubblesAccount: vi.fn(({ cfg, accountId }) => { resolveBlueBubblesAccount: vi.fn(({ cfg, accountId }) => {

View File

@ -10,7 +10,7 @@ import {
type ChannelMessageActionName, type ChannelMessageActionName,
type ChannelToolSend, type ChannelToolSend,
type MoltbotConfig, type MoltbotConfig,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { resolveBlueBubblesAccount } from "./accounts.js"; import { resolveBlueBubblesAccount } from "./accounts.js";
import { resolveBlueBubblesMessageId } from "./monitor.js"; import { resolveBlueBubblesMessageId } from "./monitor.js";

View File

@ -1,6 +1,6 @@
import crypto from "node:crypto"; import crypto from "node:crypto";
import path from "node:path"; import path from "node:path";
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
import { resolveBlueBubblesAccount } from "./accounts.js"; import { resolveBlueBubblesAccount } from "./accounts.js";
import { resolveChatGuidForTarget } from "./send.js"; import { resolveChatGuidForTarget } from "./send.js";
import { parseBlueBubblesTarget, normalizeBlueBubblesHandle } from "./targets.js"; import { parseBlueBubblesTarget, normalizeBlueBubblesHandle } from "./targets.js";

View File

@ -1,4 +1,4 @@
import type { ChannelAccountSnapshot, ChannelPlugin, MoltbotConfig } from "clawdbot/plugin-sdk"; import type { ChannelAccountSnapshot, ChannelPlugin, MoltbotConfig } from "moltbot/plugin-sdk";
import { import {
applyAccountNameToChannelSection, applyAccountNameToChannelSection,
buildChannelConfigSchema, buildChannelConfigSchema,
@ -12,7 +12,7 @@ import {
resolveBlueBubblesGroupRequireMention, resolveBlueBubblesGroupRequireMention,
resolveBlueBubblesGroupToolPolicy, resolveBlueBubblesGroupToolPolicy,
setAccountEnabledInConfigSection, setAccountEnabledInConfigSection,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { import {
listBlueBubblesAccountIds, listBlueBubblesAccountIds,

View File

@ -1,6 +1,6 @@
import crypto from "node:crypto"; import crypto from "node:crypto";
import { resolveBlueBubblesAccount } from "./accounts.js"; import { resolveBlueBubblesAccount } from "./accounts.js";
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
import { blueBubblesFetchWithTimeout, buildBlueBubblesApiUrl } from "./types.js"; import { blueBubblesFetchWithTimeout, buildBlueBubblesApiUrl } from "./types.js";
export type BlueBubblesChatOpts = { export type BlueBubblesChatOpts = {

View File

@ -1,4 +1,4 @@
import { MarkdownConfigSchema, ToolPolicySchema } from "clawdbot/plugin-sdk"; import { MarkdownConfigSchema, ToolPolicySchema } from "moltbot/plugin-sdk";
import { z } from "zod"; import { z } from "zod";
const allowFromEntry = z.union([z.string(), z.number()]); const allowFromEntry = z.union([z.string(), z.number()]);

View File

@ -1,7 +1,7 @@
import path from "node:path"; import path from "node:path";
import { fileURLToPath } from "node:url"; import { fileURLToPath } from "node:url";
import { resolveChannelMediaMaxBytes, type MoltbotConfig } from "clawdbot/plugin-sdk"; import { resolveChannelMediaMaxBytes, type MoltbotConfig } from "moltbot/plugin-sdk";
import { sendBlueBubblesAttachment } from "./attachments.js"; import { sendBlueBubblesAttachment } from "./attachments.js";
import { resolveBlueBubblesMessageId } from "./monitor.js"; import { resolveBlueBubblesMessageId } from "./monitor.js";

View File

@ -2,8 +2,8 @@ import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
import type { IncomingMessage, ServerResponse } from "node:http"; import type { IncomingMessage, ServerResponse } from "node:http";
import { EventEmitter } from "node:events"; import { EventEmitter } from "node:events";
import { removeAckReactionAfterReply, shouldAckReaction } from "clawdbot/plugin-sdk"; import { removeAckReactionAfterReply, shouldAckReaction } from "moltbot/plugin-sdk";
import type { MoltbotConfig, PluginRuntime } from "clawdbot/plugin-sdk"; import type { MoltbotConfig, PluginRuntime } from "moltbot/plugin-sdk";
import { import {
handleBlueBubblesWebhookRequest, handleBlueBubblesWebhookRequest,
registerBlueBubblesWebhookTarget, registerBlueBubblesWebhookTarget,

View File

@ -1,13 +1,13 @@
import type { IncomingMessage, ServerResponse } from "node:http"; import type { IncomingMessage, ServerResponse } from "node:http";
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
import { import {
logAckFailure, logAckFailure,
logInboundDrop, logInboundDrop,
logTypingFailure, logTypingFailure,
resolveAckReaction, resolveAckReaction,
resolveControlCommandGate, resolveControlCommandGate,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { markBlueBubblesChatRead, sendBlueBubblesTyping } from "./chat.js"; import { markBlueBubblesChatRead, sendBlueBubblesTyping } from "./chat.js";
import { resolveChatGuidForTarget, sendMessageBlueBubbles } from "./send.js"; import { resolveChatGuidForTarget, sendMessageBlueBubbles } from "./send.js";
import { downloadBlueBubblesAttachment } from "./attachments.js"; import { downloadBlueBubblesAttachment } from "./attachments.js";

View File

@ -4,14 +4,14 @@ import type {
MoltbotConfig, MoltbotConfig,
DmPolicy, DmPolicy,
WizardPrompter, WizardPrompter,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { import {
DEFAULT_ACCOUNT_ID, DEFAULT_ACCOUNT_ID,
addWildcardAllowFrom, addWildcardAllowFrom,
formatDocsLink, formatDocsLink,
normalizeAccountId, normalizeAccountId,
promptAccountId, promptAccountId,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { import {
listBlueBubblesAccountIds, listBlueBubblesAccountIds,
resolveBlueBubblesAccount, resolveBlueBubblesAccount,

View File

@ -1,5 +1,5 @@
import { resolveBlueBubblesAccount } from "./accounts.js"; import { resolveBlueBubblesAccount } from "./accounts.js";
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
import { blueBubblesFetchWithTimeout, buildBlueBubblesApiUrl } from "./types.js"; import { blueBubblesFetchWithTimeout, buildBlueBubblesApiUrl } from "./types.js";
export type BlueBubblesReactionOpts = { export type BlueBubblesReactionOpts = {

View File

@ -1,4 +1,4 @@
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
let runtime: PluginRuntime | null = null; let runtime: PluginRuntime | null = null;

View File

@ -6,7 +6,7 @@ import {
normalizeBlueBubblesHandle, normalizeBlueBubblesHandle,
parseBlueBubblesTarget, parseBlueBubblesTarget,
} from "./targets.js"; } from "./targets.js";
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
import { import {
blueBubblesFetchWithTimeout, blueBubblesFetchWithTimeout,
buildBlueBubblesApiUrl, buildBlueBubblesApiUrl,

View File

@ -1,4 +1,4 @@
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
const DEFAULT_BASE_URL = "http://localhost:3000/v1"; const DEFAULT_BASE_URL = "http://localhost:3000/v1";
const DEFAULT_API_KEY = "n/a"; const DEFAULT_API_KEY = "n/a";

View File

@ -1,5 +1,5 @@
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
import { createDiagnosticsOtelService } from "./src/service.js"; import { createDiagnosticsOtelService } from "./src/service.js";

View File

@ -95,8 +95,8 @@ vi.mock("@opentelemetry/semantic-conventions", () => ({
}, },
})); }));
vi.mock("clawdbot/plugin-sdk", async () => { vi.mock("moltbot/plugin-sdk", async () => {
const actual = await vi.importActual<typeof import("clawdbot/plugin-sdk")>("clawdbot/plugin-sdk"); const actual = await vi.importActual<typeof import("moltbot/plugin-sdk")>("moltbot/plugin-sdk");
return { return {
...actual, ...actual,
registerLogTransport: registerLogTransportMock, registerLogTransport: registerLogTransportMock,
@ -104,7 +104,7 @@ vi.mock("clawdbot/plugin-sdk", async () => {
}); });
import { createDiagnosticsOtelService } from "./service.js"; import { createDiagnosticsOtelService } from "./service.js";
import { emitDiagnosticEvent } from "clawdbot/plugin-sdk"; import { emitDiagnosticEvent } from "moltbot/plugin-sdk";
describe("diagnostics-otel service", () => { describe("diagnostics-otel service", () => {
beforeEach(() => { beforeEach(() => {

View File

@ -10,8 +10,8 @@ import { NodeSDK } from "@opentelemetry/sdk-node";
import { ParentBasedSampler, TraceIdRatioBasedSampler } from "@opentelemetry/sdk-trace-base"; import { ParentBasedSampler, TraceIdRatioBasedSampler } from "@opentelemetry/sdk-trace-base";
import { SemanticResourceAttributes } from "@opentelemetry/semantic-conventions"; import { SemanticResourceAttributes } from "@opentelemetry/semantic-conventions";
import type { MoltbotPluginService, DiagnosticEventPayload } from "clawdbot/plugin-sdk"; import type { MoltbotPluginService, DiagnosticEventPayload } from "moltbot/plugin-sdk";
import { onDiagnosticEvent, registerLogTransport } from "clawdbot/plugin-sdk"; import { onDiagnosticEvent, registerLogTransport } from "moltbot/plugin-sdk";
const DEFAULT_SERVICE_NAME = "moltbot"; const DEFAULT_SERVICE_NAME = "moltbot";

View File

@ -1,5 +1,5 @@
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
import { discordPlugin } from "./src/channel.js"; import { discordPlugin } from "./src/channel.js";
import { setDiscordRuntime } from "./src/runtime.js"; import { setDiscordRuntime } from "./src/runtime.js";

View File

@ -25,7 +25,7 @@ import {
type ChannelMessageActionAdapter, type ChannelMessageActionAdapter,
type ChannelPlugin, type ChannelPlugin,
type ResolvedDiscordAccount, type ResolvedDiscordAccount,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { getDiscordRuntime } from "./runtime.js"; import { getDiscordRuntime } from "./runtime.js";

View File

@ -1,4 +1,4 @@
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
let runtime: PluginRuntime | null = null; let runtime: PluginRuntime | null = null;

View File

@ -1,7 +1,7 @@
import { createHash, randomBytes } from "node:crypto"; import { createHash, randomBytes } from "node:crypto";
import { readFileSync } from "node:fs"; import { readFileSync } from "node:fs";
import { createServer } from "node:http"; import { createServer } from "node:http";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
// OAuth constants - decoded from pi-ai's base64 encoded values to stay in sync // OAuth constants - decoded from pi-ai's base64 encoded values to stay in sync
const decode = (s: string) => Buffer.from(s, "base64").toString(); const decode = (s: string) => Buffer.from(s, "base64").toString();

View File

@ -1,4 +1,4 @@
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
import { loginGeminiCliOAuth } from "./oauth.js"; import { loginGeminiCliOAuth } from "./oauth.js";
@ -6,8 +6,8 @@ const PROVIDER_ID = "google-gemini-cli";
const PROVIDER_LABEL = "Gemini CLI OAuth"; const PROVIDER_LABEL = "Gemini CLI OAuth";
const DEFAULT_MODEL = "google-gemini-cli/gemini-3-pro-preview"; const DEFAULT_MODEL = "google-gemini-cli/gemini-3-pro-preview";
const ENV_VARS = [ const ENV_VARS = [
"CLAWDBOT_GEMINI_OAUTH_CLIENT_ID", "MOLTBOT_GEMINI_OAUTH_CLIENT_ID",
"CLAWDBOT_GEMINI_OAUTH_CLIENT_SECRET", "MOLTBOT_GEMINI_OAUTH_CLIENT_SECRET",
"GEMINI_CLI_OAUTH_CLIENT_ID", "GEMINI_CLI_OAUTH_CLIENT_ID",
"GEMINI_CLI_OAUTH_CLIENT_SECRET", "GEMINI_CLI_OAUTH_CLIENT_SECRET",
]; ];

View File

@ -3,9 +3,9 @@ import { existsSync, readFileSync, readdirSync, realpathSync } from "node:fs";
import { createServer } from "node:http"; import { createServer } from "node:http";
import { delimiter, dirname, join } from "node:path"; import { delimiter, dirname, join } from "node:path";
const CLIENT_ID_KEYS = ["CLAWDBOT_GEMINI_OAUTH_CLIENT_ID", "GEMINI_CLI_OAUTH_CLIENT_ID"]; const CLIENT_ID_KEYS = ["MOLTBOT_GEMINI_OAUTH_CLIENT_ID", "GEMINI_CLI_OAUTH_CLIENT_ID"];
const CLIENT_SECRET_KEYS = [ const CLIENT_SECRET_KEYS = [
"CLAWDBOT_GEMINI_OAUTH_CLIENT_SECRET", "MOLTBOT_GEMINI_OAUTH_CLIENT_SECRET",
"GEMINI_CLI_OAUTH_CLIENT_SECRET", "GEMINI_CLI_OAUTH_CLIENT_SECRET",
]; ];
const REDIRECT_URI = "http://localhost:8085/oauth2callback"; const REDIRECT_URI = "http://localhost:8085/oauth2callback";

View File

@ -1,5 +1,5 @@
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
import { googlechatDock, googlechatPlugin } from "./src/channel.js"; import { googlechatDock, googlechatPlugin } from "./src/channel.js";
import { handleGoogleChatWebhookRequest } from "./src/monitor.js"; import { handleGoogleChatWebhookRequest } from "./src/monitor.js";

View File

@ -1,5 +1,5 @@
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "clawdbot/plugin-sdk"; import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "moltbot/plugin-sdk";
import type { GoogleChatAccountConfig, GoogleChatConfig } from "./types.config.js"; import type { GoogleChatAccountConfig, GoogleChatConfig } from "./types.config.js";

View File

@ -2,14 +2,14 @@ import type {
ChannelMessageActionAdapter, ChannelMessageActionAdapter,
ChannelMessageActionName, ChannelMessageActionName,
MoltbotConfig, MoltbotConfig,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { import {
createActionGate, createActionGate,
jsonResult, jsonResult,
readNumberParam, readNumberParam,
readReactionParams, readReactionParams,
readStringParam, readStringParam,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { listEnabledGoogleChatAccounts, resolveGoogleChatAccount } from "./accounts.js"; import { listEnabledGoogleChatAccounts, resolveGoogleChatAccount } from "./accounts.js";
import { import {

View File

@ -16,8 +16,8 @@ import {
type ChannelMessageActionAdapter, type ChannelMessageActionAdapter,
type ChannelPlugin, type ChannelPlugin,
type MoltbotConfig, type MoltbotConfig,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { GoogleChatConfigSchema } from "clawdbot/plugin-sdk"; import { GoogleChatConfigSchema } from "moltbot/plugin-sdk";
import { import {
listGoogleChatAccountIds, listGoogleChatAccountIds,

View File

@ -1,7 +1,7 @@
import type { IncomingMessage, ServerResponse } from "node:http"; import type { IncomingMessage, ServerResponse } from "node:http";
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
import { resolveMentionGatingWithBypass } from "clawdbot/plugin-sdk"; import { resolveMentionGatingWithBypass } from "moltbot/plugin-sdk";
import { import {
type ResolvedGoogleChatAccount type ResolvedGoogleChatAccount

View File

@ -1,4 +1,4 @@
import type { MoltbotConfig, DmPolicy } from "clawdbot/plugin-sdk"; import type { MoltbotConfig, DmPolicy } from "moltbot/plugin-sdk";
import { import {
addWildcardAllowFrom, addWildcardAllowFrom,
formatDocsLink, formatDocsLink,
@ -9,7 +9,7 @@ import {
DEFAULT_ACCOUNT_ID, DEFAULT_ACCOUNT_ID,
normalizeAccountId, normalizeAccountId,
migrateBaseNameToDefaultAccount, migrateBaseNameToDefaultAccount,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { import {
listGoogleChatAccountIds, listGoogleChatAccountIds,

View File

@ -1,4 +1,4 @@
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
let runtime: PluginRuntime | null = null; let runtime: PluginRuntime | null = null;

View File

@ -1,3 +1,3 @@
import type { GoogleChatAccountConfig, GoogleChatConfig } from "clawdbot/plugin-sdk"; import type { GoogleChatAccountConfig, GoogleChatConfig } from "moltbot/plugin-sdk";
export type { GoogleChatAccountConfig, GoogleChatConfig }; export type { GoogleChatAccountConfig, GoogleChatConfig };

View File

@ -1,5 +1,5 @@
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
import { imessagePlugin } from "./src/channel.js"; import { imessagePlugin } from "./src/channel.js";
import { setIMessageRuntime } from "./src/runtime.js"; import { setIMessageRuntime } from "./src/runtime.js";

View File

@ -21,7 +21,7 @@ import {
setAccountEnabledInConfigSection, setAccountEnabledInConfigSection,
type ChannelPlugin, type ChannelPlugin,
type ResolvedIMessageAccount, type ResolvedIMessageAccount,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { getIMessageRuntime } from "./runtime.js"; import { getIMessageRuntime } from "./runtime.js";

View File

@ -1,4 +1,4 @@
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
let runtime: PluginRuntime | null = null; let runtime: PluginRuntime | null = null;

View File

@ -1,5 +1,5 @@
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
import { linePlugin } from "./src/channel.js"; import { linePlugin } from "./src/channel.js";
import { registerLineCardCommand } from "./src/card-command.js"; import { registerLineCardCommand } from "./src/card-command.js";

View File

@ -1,4 +1,4 @@
import type { MoltbotPluginApi, LineChannelData, ReplyPayload } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi, LineChannelData, ReplyPayload } from "moltbot/plugin-sdk";
import { import {
createActionCard, createActionCard,
createImageCard, createImageCard,
@ -7,7 +7,7 @@ import {
createReceiptCard, createReceiptCard,
type CardAction, type CardAction,
type ListItem, type ListItem,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
const CARD_USAGE = `Usage: /card <type> "title" "body" [options] const CARD_USAGE = `Usage: /card <type> "title" "body" [options]

View File

@ -1,5 +1,5 @@
import { beforeEach, describe, expect, it, vi } from "vitest"; import { beforeEach, describe, expect, it, vi } from "vitest";
import type { MoltbotConfig, PluginRuntime } from "clawdbot/plugin-sdk"; import type { MoltbotConfig, PluginRuntime } from "moltbot/plugin-sdk";
import { linePlugin } from "./channel.js"; import { linePlugin } from "./channel.js";
import { setLineRuntime } from "./runtime.js"; import { setLineRuntime } from "./runtime.js";

View File

@ -1,5 +1,5 @@
import { describe, expect, it, vi } from "vitest"; import { describe, expect, it, vi } from "vitest";
import type { MoltbotConfig, PluginRuntime } from "clawdbot/plugin-sdk"; import type { MoltbotConfig, PluginRuntime } from "moltbot/plugin-sdk";
import { linePlugin } from "./channel.js"; import { linePlugin } from "./channel.js";
import { setLineRuntime } from "./runtime.js"; import { setLineRuntime } from "./runtime.js";

View File

@ -8,7 +8,7 @@ import {
type LineConfig, type LineConfig,
type LineChannelData, type LineChannelData,
type ResolvedLineAccount, type ResolvedLineAccount,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { getLineRuntime } from "./runtime.js"; import { getLineRuntime } from "./runtime.js";

View File

@ -1,4 +1,4 @@
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
let runtime: PluginRuntime | null = null; let runtime: PluginRuntime | null = null;

View File

@ -1,5 +1,5 @@
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
import { matrixPlugin } from "./src/channel.js"; import { matrixPlugin } from "./src/channel.js";
import { setMatrixRuntime } from "./src/runtime.js"; import { setMatrixRuntime } from "./src/runtime.js";

View File

@ -6,7 +6,7 @@ import {
type ChannelMessageActionContext, type ChannelMessageActionContext,
type ChannelMessageActionName, type ChannelMessageActionName,
type ChannelToolSend, type ChannelToolSend,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { resolveMatrixAccount } from "./matrix/accounts.js"; import { resolveMatrixAccount } from "./matrix/accounts.js";
import { handleMatrixAction } from "./tool-actions.js"; import { handleMatrixAction } from "./tool-actions.js";
import type { CoreConfig } from "./types.js"; import type { CoreConfig } from "./types.js";

View File

@ -1,6 +1,6 @@
import { beforeEach, describe, expect, it } from "vitest"; import { beforeEach, describe, expect, it } from "vitest";
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
import type { CoreConfig } from "./types.js"; import type { CoreConfig } from "./types.js";
import { matrixPlugin } from "./channel.js"; import { matrixPlugin } from "./channel.js";

View File

@ -8,7 +8,7 @@ import {
PAIRING_APPROVED_MESSAGE, PAIRING_APPROVED_MESSAGE,
setAccountEnabledInConfigSection, setAccountEnabledInConfigSection,
type ChannelPlugin, type ChannelPlugin,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { matrixMessageActions } from "./actions.js"; import { matrixMessageActions } from "./actions.js";
import { MatrixConfigSchema } from "./config-schema.js"; import { MatrixConfigSchema } from "./config-schema.js";

View File

@ -1,4 +1,4 @@
import { MarkdownConfigSchema, ToolPolicySchema } from "clawdbot/plugin-sdk"; import { MarkdownConfigSchema, ToolPolicySchema } from "moltbot/plugin-sdk";
import { z } from "zod"; import { z } from "zod";
const allowFromEntry = z.union([z.string(), z.number()]); const allowFromEntry = z.union([z.string(), z.number()]);

View File

@ -1,4 +1,4 @@
import type { ChannelDirectoryEntry } from "clawdbot/plugin-sdk"; import type { ChannelDirectoryEntry } from "moltbot/plugin-sdk";
import { resolveMatrixAuth } from "./matrix/client.js"; import { resolveMatrixAuth } from "./matrix/client.js";

View File

@ -1,4 +1,4 @@
import type { ChannelGroupContext, GroupToolPolicyConfig } from "clawdbot/plugin-sdk"; import type { ChannelGroupContext, GroupToolPolicyConfig } from "moltbot/plugin-sdk";
import { resolveMatrixRoomConfig } from "./matrix/monitor/rooms.js"; import { resolveMatrixRoomConfig } from "./matrix/monitor/rooms.js";
import type { CoreConfig } from "./types.js"; import type { CoreConfig } from "./types.js";

View File

@ -1,4 +1,4 @@
import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "clawdbot/plugin-sdk"; import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "moltbot/plugin-sdk";
import type { CoreConfig, MatrixConfig } from "../types.js"; import type { CoreConfig, MatrixConfig } from "../types.js";
import { resolveMatrixConfig } from "./client.js"; import { resolveMatrixConfig } from "./client.js";
import { credentialsMatchConfig, loadMatrixCredentials } from "./credentials.js"; import { credentialsMatchConfig, loadMatrixCredentials } from "./credentials.js";

View File

@ -22,7 +22,7 @@ export async function resolveActionClient(
if (opts.client) return { client: opts.client, stopOnDone: false }; if (opts.client) return { client: opts.client, stopOnDone: false };
const active = getActiveMatrixClient(); const active = getActiveMatrixClient();
if (active) return { client: active, stopOnDone: false }; if (active) return { client: active, stopOnDone: false };
const shouldShareClient = Boolean(process.env.CLAWDBOT_GATEWAY_PORT); const shouldShareClient = Boolean(process.env.MOLTBOT_GATEWAY_PORT);
if (shouldShareClient) { if (shouldShareClient) {
const client = await resolveSharedMatrixClient({ const client = await resolveSharedMatrixClient({
cfg: getMatrixRuntime().config.loadConfig() as CoreConfig, cfg: getMatrixRuntime().config.loadConfig() as CoreConfig,

View File

@ -3,7 +3,7 @@ import path from "node:path";
import { createRequire } from "node:module"; import { createRequire } from "node:module";
import { fileURLToPath } from "node:url"; import { fileURLToPath } from "node:url";
import type { RuntimeEnv } from "clawdbot/plugin-sdk"; import type { RuntimeEnv } from "moltbot/plugin-sdk";
import { getMatrixRuntime } from "../runtime.js"; import { getMatrixRuntime } from "../runtime.js";
const MATRIX_SDK_PACKAGE = "@vector-im/matrix-bot-sdk"; const MATRIX_SDK_PACKAGE = "@vector-im/matrix-bot-sdk";

View File

@ -1,4 +1,4 @@
import type { AllowlistMatch } from "clawdbot/plugin-sdk"; import type { AllowlistMatch } from "moltbot/plugin-sdk";
function normalizeAllowList(list?: Array<string | number>) { function normalizeAllowList(list?: Array<string | number>) {
return (list ?? []).map((entry) => String(entry).trim()).filter(Boolean); return (list ?? []).map((entry) => String(entry).trim()).filter(Boolean);

View File

@ -1,7 +1,7 @@
import type { MatrixClient } from "@vector-im/matrix-bot-sdk"; import type { MatrixClient } from "@vector-im/matrix-bot-sdk";
import { AutojoinRoomsMixin } from "@vector-im/matrix-bot-sdk"; import { AutojoinRoomsMixin } from "@vector-im/matrix-bot-sdk";
import type { RuntimeEnv } from "clawdbot/plugin-sdk"; import type { RuntimeEnv } from "moltbot/plugin-sdk";
import type { CoreConfig } from "../../types.js"; import type { CoreConfig } from "../../types.js";
import { getMatrixRuntime } from "../../runtime.js"; import { getMatrixRuntime } from "../../runtime.js";

View File

@ -1,5 +1,5 @@
import type { MatrixClient } from "@vector-im/matrix-bot-sdk"; import type { MatrixClient } from "@vector-im/matrix-bot-sdk";
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
import type { MatrixAuth } from "../client.js"; import type { MatrixAuth } from "../client.js";
import type { MatrixRawEvent } from "./types.js"; import type { MatrixRawEvent } from "./types.js";

View File

@ -8,7 +8,7 @@ import {
logTypingFailure, logTypingFailure,
resolveControlCommandGate, resolveControlCommandGate,
type RuntimeEnv, type RuntimeEnv,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import type { CoreConfig, ReplyToMode } from "../../types.js"; import type { CoreConfig, ReplyToMode } from "../../types.js";
import { import {
formatPollAsText, formatPollAsText,
@ -37,7 +37,7 @@ export type MatrixMonitorHandlerParams = {
logging: { logging: {
shouldLogVerbose: () => boolean; shouldLogVerbose: () => boolean;
}; };
channel: typeof import("clawdbot/plugin-sdk")["channel"]; channel: typeof import("moltbot/plugin-sdk")["channel"];
system: { system: {
enqueueSystemEvent: ( enqueueSystemEvent: (
text: string, text: string,
@ -59,7 +59,7 @@ export type MatrixMonitorHandlerParams = {
: Record<string, unknown> | undefined : Record<string, unknown> | undefined
: Record<string, unknown> | undefined; : Record<string, unknown> | undefined;
mentionRegexes: ReturnType< mentionRegexes: ReturnType<
typeof import("clawdbot/plugin-sdk")["channel"]["mentions"]["buildMentionRegexes"] typeof import("moltbot/plugin-sdk")["channel"]["mentions"]["buildMentionRegexes"]
>; >;
groupPolicy: "open" | "allowlist" | "disabled"; groupPolicy: "open" | "allowlist" | "disabled";
replyToMode: ReplyToMode; replyToMode: ReplyToMode;

View File

@ -4,7 +4,7 @@ import {
mergeAllowlist, mergeAllowlist,
summarizeMapping, summarizeMapping,
type RuntimeEnv, type RuntimeEnv,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import type { CoreConfig, ReplyToMode } from "../../types.js"; import type { CoreConfig, ReplyToMode } from "../../types.js";
import { setActiveMatrixClient } from "../active-client.js"; import { setActiveMatrixClient } from "../active-client.js";
import { import {

View File

@ -4,7 +4,7 @@ import {
formatLocationText, formatLocationText,
toLocationContext, toLocationContext,
type NormalizedLocation, type NormalizedLocation,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { EventType } from "./types.js"; import { EventType } from "./types.js";
export type MatrixLocationPayload = { export type MatrixLocationPayload = {

View File

@ -1,6 +1,6 @@
import { beforeEach, describe, expect, it, vi } from "vitest"; import { beforeEach, describe, expect, it, vi } from "vitest";
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
import { setMatrixRuntime } from "../../runtime.js"; import { setMatrixRuntime } from "../../runtime.js";
import { downloadMatrixMedia } from "./media.js"; import { downloadMatrixMedia } from "./media.js";

View File

@ -1,6 +1,6 @@
import type { MatrixClient } from "@vector-im/matrix-bot-sdk"; import type { MatrixClient } from "@vector-im/matrix-bot-sdk";
import type { MarkdownTableMode, ReplyPayload, RuntimeEnv } from "clawdbot/plugin-sdk"; import type { MarkdownTableMode, ReplyPayload, RuntimeEnv } from "moltbot/plugin-sdk";
import { sendMessageMatrix } from "../send.js"; import { sendMessageMatrix } from "../send.js";
import { getMatrixRuntime } from "../../runtime.js"; import { getMatrixRuntime } from "../../runtime.js";

View File

@ -1,5 +1,5 @@
import type { MatrixRoomConfig } from "../../types.js"; import type { MatrixRoomConfig } from "../../types.js";
import { buildChannelKeyCandidates, resolveChannelEntryMatch } from "clawdbot/plugin-sdk"; import { buildChannelKeyCandidates, resolveChannelEntryMatch } from "moltbot/plugin-sdk";
export type MatrixRoomConfigResolved = { export type MatrixRoomConfigResolved = {
allowed: boolean; allowed: boolean;

View File

@ -7,7 +7,7 @@
* - m.poll.end - Closes a poll * - m.poll.end - Closes a poll
*/ */
import type { PollInput } from "clawdbot/plugin-sdk"; import type { PollInput } from "moltbot/plugin-sdk";
export const M_POLL_START = "m.poll.start" as const; export const M_POLL_START = "m.poll.start" as const;
export const M_POLL_RESPONSE = "m.poll.response" as const; export const M_POLL_RESPONSE = "m.poll.response" as const;

View File

@ -1,6 +1,6 @@
import { beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; import { beforeAll, beforeEach, describe, expect, it, vi } from "vitest";
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
import { setMatrixRuntime } from "../runtime.js"; import { setMatrixRuntime } from "../runtime.js";
vi.mock("@vector-im/matrix-bot-sdk", () => ({ vi.mock("@vector-im/matrix-bot-sdk", () => ({

View File

@ -1,6 +1,6 @@
import type { MatrixClient } from "@vector-im/matrix-bot-sdk"; import type { MatrixClient } from "@vector-im/matrix-bot-sdk";
import type { PollInput } from "clawdbot/plugin-sdk"; import type { PollInput } from "moltbot/plugin-sdk";
import { getMatrixRuntime } from "../runtime.js"; import { getMatrixRuntime } from "../runtime.js";
import { buildPollStartContent, M_POLL_START } from "./poll-types.js"; import { buildPollStartContent, M_POLL_START } from "./poll-types.js";
import { resolveMatrixClient, resolveMediaMaxBytes } from "./send/client.js"; import { resolveMatrixClient, resolveMediaMaxBytes } from "./send/client.js";

View File

@ -34,7 +34,7 @@ export async function resolveMatrixClient(opts: {
if (opts.client) return { client: opts.client, stopOnDone: false }; if (opts.client) return { client: opts.client, stopOnDone: false };
const active = getActiveMatrixClient(); const active = getActiveMatrixClient();
if (active) return { client: active, stopOnDone: false }; if (active) return { client: active, stopOnDone: false };
const shouldShareClient = Boolean(process.env.CLAWDBOT_GATEWAY_PORT); const shouldShareClient = Boolean(process.env.MOLTBOT_GATEWAY_PORT);
if (shouldShareClient) { if (shouldShareClient) {
const client = await resolveSharedMatrixClient({ const client = await resolveSharedMatrixClient({
timeoutMs: opts.timeoutMs, timeoutMs: opts.timeoutMs,

View File

@ -5,7 +5,7 @@ import {
type ChannelOnboardingAdapter, type ChannelOnboardingAdapter,
type ChannelOnboardingDmPolicy, type ChannelOnboardingDmPolicy,
type WizardPrompter, type WizardPrompter,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { listMatrixDirectoryGroupsLive } from "./directory-live.js"; import { listMatrixDirectoryGroupsLive } from "./directory-live.js";
import { listMatrixDirectoryPeersLive } from "./directory-live.js"; import { listMatrixDirectoryPeersLive } from "./directory-live.js";
import { resolveMatrixAccount } from "./matrix/accounts.js"; import { resolveMatrixAccount } from "./matrix/accounts.js";

View File

@ -1,4 +1,4 @@
import type { ChannelOutboundAdapter } from "clawdbot/plugin-sdk"; import type { ChannelOutboundAdapter } from "moltbot/plugin-sdk";
import { getMatrixRuntime } from "./runtime.js"; import { getMatrixRuntime } from "./runtime.js";
import { sendMessageMatrix, sendPollMatrix } from "./matrix/send.js"; import { sendMessageMatrix, sendPollMatrix } from "./matrix/send.js";

View File

@ -3,7 +3,7 @@ import type {
ChannelResolveKind, ChannelResolveKind,
ChannelResolveResult, ChannelResolveResult,
RuntimeEnv, RuntimeEnv,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { import {
listMatrixDirectoryGroupsLive, listMatrixDirectoryGroupsLive,

View File

@ -1,4 +1,4 @@
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
let runtime: PluginRuntime | null = null; let runtime: PluginRuntime | null = null;

View File

@ -21,7 +21,7 @@ import {
readNumberParam, readNumberParam,
readReactionParams, readReactionParams,
readStringParam, readStringParam,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
const messageActions = new Set(["sendMessage", "editMessage", "deleteMessage", "readMessages"]); const messageActions = new Set(["sendMessage", "editMessage", "deleteMessage", "readMessages"]);
const reactionActions = new Set(["react", "reactions"]); const reactionActions = new Set(["react", "reactions"]);

View File

@ -1,5 +1,5 @@
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
import { mattermostPlugin } from "./src/channel.js"; import { mattermostPlugin } from "./src/channel.js";
import { setMattermostRuntime } from "./src/runtime.js"; import { setMattermostRuntime } from "./src/runtime.js";

View File

@ -8,7 +8,7 @@ import {
normalizeAccountId, normalizeAccountId,
setAccountEnabledInConfigSection, setAccountEnabledInConfigSection,
type ChannelPlugin, type ChannelPlugin,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { MattermostConfigSchema } from "./config-schema.js"; import { MattermostConfigSchema } from "./config-schema.js";
import { resolveMattermostGroupRequireMention } from "./group-mentions.js"; import { resolveMattermostGroupRequireMention } from "./group-mentions.js";

View File

@ -6,7 +6,7 @@ import {
GroupPolicySchema, GroupPolicySchema,
MarkdownConfigSchema, MarkdownConfigSchema,
requireOpenAllowFrom, requireOpenAllowFrom,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
const MattermostAccountSchemaBase = z const MattermostAccountSchemaBase = z
.object({ .object({

View File

@ -1,4 +1,4 @@
import type { ChannelGroupContext } from "clawdbot/plugin-sdk"; import type { ChannelGroupContext } from "moltbot/plugin-sdk";
import { resolveMattermostAccount } from "./mattermost/accounts.js"; import { resolveMattermostAccount } from "./mattermost/accounts.js";

View File

@ -1,5 +1,5 @@
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "clawdbot/plugin-sdk"; import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "moltbot/plugin-sdk";
import type { MattermostAccountConfig, MattermostChatMode } from "../types.js"; import type { MattermostAccountConfig, MattermostChatMode } from "../types.js";
import { normalizeMattermostBaseUrl } from "./client.js"; import { normalizeMattermostBaseUrl } from "./client.js";

View File

@ -2,7 +2,7 @@ import { Buffer } from "node:buffer";
import type WebSocket from "ws"; import type WebSocket from "ws";
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
export type ResponsePrefixContext = { export type ResponsePrefixContext = {
model?: string; model?: string;

View File

@ -5,7 +5,7 @@ import type {
MoltbotConfig, MoltbotConfig,
ReplyPayload, ReplyPayload,
RuntimeEnv, RuntimeEnv,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { import {
createReplyPrefixContext, createReplyPrefixContext,
createTypingCallbacks, createTypingCallbacks,
@ -18,7 +18,7 @@ import {
resolveControlCommandGate, resolveControlCommandGate,
resolveChannelMediaMaxBytes, resolveChannelMediaMaxBytes,
type HistoryEntry, type HistoryEntry,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { getMattermostRuntime } from "../runtime.js"; import { getMattermostRuntime } from "../runtime.js";
import { resolveMattermostAccount } from "./accounts.js"; import { resolveMattermostAccount } from "./accounts.js";

View File

@ -1,5 +1,5 @@
import type { MoltbotConfig, WizardPrompter } from "clawdbot/plugin-sdk"; import type { MoltbotConfig, WizardPrompter } from "moltbot/plugin-sdk";
import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "clawdbot/plugin-sdk"; import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "moltbot/plugin-sdk";
type PromptAccountIdParams = { type PromptAccountIdParams = {
cfg: MoltbotConfig; cfg: MoltbotConfig;

View File

@ -1,5 +1,5 @@
import type { ChannelOnboardingAdapter, MoltbotConfig, WizardPrompter } from "clawdbot/plugin-sdk"; import type { ChannelOnboardingAdapter, MoltbotConfig, WizardPrompter } from "moltbot/plugin-sdk";
import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "clawdbot/plugin-sdk"; import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "moltbot/plugin-sdk";
import { import {
listMattermostAccountIds, listMattermostAccountIds,

View File

@ -1,4 +1,4 @@
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
let runtime: PluginRuntime | null = null; let runtime: PluginRuntime | null = null;

View File

@ -1,4 +1,4 @@
import type { BlockStreamingCoalesceConfig, DmPolicy, GroupPolicy } from "clawdbot/plugin-sdk"; import type { BlockStreamingCoalesceConfig, DmPolicy, GroupPolicy } from "moltbot/plugin-sdk";
export type MattermostChatMode = "oncall" | "onmessage" | "onchar"; export type MattermostChatMode = "oncall" | "onmessage" | "onchar";

View File

@ -1,5 +1,5 @@
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
const memoryCorePlugin = { const memoryCorePlugin = {
id: "memory-core", id: "memory-core",

View File

@ -17,7 +17,7 @@ export const MEMORY_CATEGORIES = ["preference", "fact", "decision", "entity", "o
export type MemoryCategory = (typeof MEMORY_CATEGORIES)[number]; export type MemoryCategory = (typeof MEMORY_CATEGORIES)[number];
const DEFAULT_MODEL = "text-embedding-3-small"; const DEFAULT_MODEL = "text-embedding-3-small";
const DEFAULT_DB_PATH = join(homedir(), ".clawdbot", "memory", "lancedb"); const DEFAULT_DB_PATH = join(homedir(), ".moltbot", "memory", "lancedb");
const EMBEDDING_DIMENSIONS: Record<string, number> = { const EMBEDDING_DIMENSIONS: Record<string, number> = {
"text-embedding-3-small": 1536, "text-embedding-3-small": 1536,
@ -99,7 +99,7 @@ export const memoryConfigSchema = {
}, },
dbPath: { dbPath: {
label: "Database Path", label: "Database Path",
placeholder: "~/.clawdbot/memory/lancedb", placeholder: "~/.moltbot/memory/lancedb",
advanced: true, advanced: true,
}, },
autoCapture: { autoCapture: {

View File

@ -16,7 +16,7 @@ import os from "node:os";
const OPENAI_API_KEY = process.env.OPENAI_API_KEY ?? "test-key"; const OPENAI_API_KEY = process.env.OPENAI_API_KEY ?? "test-key";
const HAS_OPENAI_KEY = Boolean(process.env.OPENAI_API_KEY); const HAS_OPENAI_KEY = Boolean(process.env.OPENAI_API_KEY);
const liveEnabled = HAS_OPENAI_KEY && process.env.CLAWDBOT_LIVE_TEST === "1"; const liveEnabled = HAS_OPENAI_KEY && process.env.MOLTBOT_LIVE_TEST === "1";
const describeLive = liveEnabled ? describe : describe.skip; const describeLive = liveEnabled ? describe : describe.skip;
describe("memory plugin e2e", () => { describe("memory plugin e2e", () => {

View File

@ -10,8 +10,8 @@ import { Type } from "@sinclair/typebox";
import * as lancedb from "@lancedb/lancedb"; import * as lancedb from "@lancedb/lancedb";
import OpenAI from "openai"; import OpenAI from "openai";
import { randomUUID } from "node:crypto"; import { randomUUID } from "node:crypto";
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { stringEnum } from "clawdbot/plugin-sdk"; import { stringEnum } from "moltbot/plugin-sdk";
import { import {
MEMORY_CATEGORIES, MEMORY_CATEGORIES,

View File

@ -1,5 +1,5 @@
import type { MoltbotPluginApi } from "clawdbot/plugin-sdk"; import type { MoltbotPluginApi } from "moltbot/plugin-sdk";
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk"; import { emptyPluginConfigSchema } from "moltbot/plugin-sdk";
import { msteamsPlugin } from "./src/channel.js"; import { msteamsPlugin } from "./src/channel.js";
import { setMSTeamsRuntime } from "./src/runtime.js"; import { setMSTeamsRuntime } from "./src/runtime.js";

View File

@ -1,6 +1,6 @@
import { beforeEach, describe, expect, it, vi } from "vitest"; import { beforeEach, describe, expect, it, vi } from "vitest";
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
import { setMSTeamsRuntime } from "./runtime.js"; import { setMSTeamsRuntime } from "./runtime.js";
const detectMimeMock = vi.fn(async () => "image/png"); const detectMimeMock = vi.fn(async () => "image/png");

View File

@ -1,6 +1,6 @@
import { describe, expect, it } from "vitest"; import { describe, expect, it } from "vitest";
import type { MoltbotConfig } from "clawdbot/plugin-sdk"; import type { MoltbotConfig } from "moltbot/plugin-sdk";
import { msteamsPlugin } from "./channel.js"; import { msteamsPlugin } from "./channel.js";

View File

@ -1,10 +1,10 @@
import type { ChannelMessageActionName, ChannelPlugin, MoltbotConfig } from "clawdbot/plugin-sdk"; import type { ChannelMessageActionName, ChannelPlugin, MoltbotConfig } from "moltbot/plugin-sdk";
import { import {
buildChannelConfigSchema, buildChannelConfigSchema,
DEFAULT_ACCOUNT_ID, DEFAULT_ACCOUNT_ID,
MSTeamsConfigSchema, MSTeamsConfigSchema,
PAIRING_APPROVED_MESSAGE, PAIRING_APPROVED_MESSAGE,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { msteamsOnboardingAdapter } from "./onboarding.js"; import { msteamsOnboardingAdapter } from "./onboarding.js";
import { msteamsOutbound } from "./outbound.js"; import { msteamsOutbound } from "./outbound.js";

View File

@ -4,7 +4,7 @@ import path from "node:path";
import { beforeEach, describe, expect, it } from "vitest"; import { beforeEach, describe, expect, it } from "vitest";
import type { PluginRuntime } from "clawdbot/plugin-sdk"; import type { PluginRuntime } from "moltbot/plugin-sdk";
import type { StoredConversationReference } from "./conversation-store.js"; import type { StoredConversationReference } from "./conversation-store.js";
import { createMSTeamsConversationStoreFs } from "./conversation-store-fs.js"; import { createMSTeamsConversationStoreFs } from "./conversation-store-fs.js";
import { setMSTeamsRuntime } from "./runtime.js"; import { setMSTeamsRuntime } from "./runtime.js";
@ -12,10 +12,10 @@ import { setMSTeamsRuntime } from "./runtime.js";
const runtimeStub = { const runtimeStub = {
state: { state: {
resolveStateDir: (env: NodeJS.ProcessEnv = process.env, homedir?: () => string) => { resolveStateDir: (env: NodeJS.ProcessEnv = process.env, homedir?: () => string) => {
const override = env.CLAWDBOT_STATE_DIR?.trim(); const override = env.MOLTBOT_STATE_DIR?.trim();
if (override) return override; if (override) return override;
const resolvedHome = homedir ? homedir() : os.homedir(); const resolvedHome = homedir ? homedir() : os.homedir();
return path.join(resolvedHome, ".clawdbot"); return path.join(resolvedHome, ".moltbot");
}, },
}, },
} as unknown as PluginRuntime; } as unknown as PluginRuntime;
@ -30,7 +30,7 @@ describe("msteams conversation store (fs)", () => {
const env: NodeJS.ProcessEnv = { const env: NodeJS.ProcessEnv = {
...process.env, ...process.env,
CLAWDBOT_STATE_DIR: stateDir, MOLTBOT_STATE_DIR: stateDir,
}; };
const store = createMSTeamsConversationStoreFs({ env, ttlMs: 1_000 }); const store = createMSTeamsConversationStoreFs({ env, ttlMs: 1_000 });

View File

@ -1,4 +1,4 @@
import type { ChannelDirectoryEntry } from "clawdbot/plugin-sdk"; import type { ChannelDirectoryEntry } from "moltbot/plugin-sdk";
import { GRAPH_ROOT } from "./attachments/shared.js"; import { GRAPH_ROOT } from "./attachments/shared.js";
import { loadMSTeamsSdkWithAuth } from "./sdk.js"; import { loadMSTeamsSdkWithAuth } from "./sdk.js";

View File

@ -9,7 +9,7 @@ import {
extensionForMime, extensionForMime,
extractOriginalFilename, extractOriginalFilename,
getFileExtension, getFileExtension,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
/** /**
* Detect MIME type from URL extension or data URL. * Detect MIME type from URL extension or data URL.

View File

@ -1,6 +1,6 @@
import { beforeEach, describe, expect, it } from "vitest"; import { beforeEach, describe, expect, it } from "vitest";
import { SILENT_REPLY_TOKEN, type PluginRuntime } from "clawdbot/plugin-sdk"; import { SILENT_REPLY_TOKEN, type PluginRuntime } from "moltbot/plugin-sdk";
import type { StoredConversationReference } from "./conversation-store.js"; import type { StoredConversationReference } from "./conversation-store.js";
import { import {
type MSTeamsAdapter, type MSTeamsAdapter,

View File

@ -6,7 +6,7 @@ import {
type MSTeamsReplyStyle, type MSTeamsReplyStyle,
type ReplyPayload, type ReplyPayload,
SILENT_REPLY_TOKEN, SILENT_REPLY_TOKEN,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import type { MSTeamsAccessTokenProvider } from "./attachments/types.js"; import type { MSTeamsAccessTokenProvider } from "./attachments/types.js";
import type { StoredConversationReference } from "./conversation-store.js"; import type { StoredConversationReference } from "./conversation-store.js";
import { classifyMSTeamsSendError } from "./errors.js"; import { classifyMSTeamsSendError } from "./errors.js";

View File

@ -1,4 +1,4 @@
import type { MoltbotConfig, RuntimeEnv } from "clawdbot/plugin-sdk"; import type { MoltbotConfig, RuntimeEnv } from "moltbot/plugin-sdk";
import type { MSTeamsConversationStore } from "./conversation-store.js"; import type { MSTeamsConversationStore } from "./conversation-store.js";
import { import {
buildFileInfoCard, buildFileInfoCard,

View File

@ -8,7 +8,7 @@ import {
resolveMentionGating, resolveMentionGating,
formatAllowlistMatchMeta, formatAllowlistMatchMeta,
type HistoryEntry, type HistoryEntry,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { import {
buildMSTeamsAttachmentPlaceholder, buildMSTeamsAttachmentPlaceholder,

View File

@ -4,7 +4,7 @@ import {
summarizeMapping, summarizeMapping,
type MoltbotConfig, type MoltbotConfig,
type RuntimeEnv, type RuntimeEnv,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import type { MSTeamsConversationStore } from "./conversation-store.js"; import type { MSTeamsConversationStore } from "./conversation-store.js";
import { createMSTeamsConversationStoreFs } from "./conversation-store-fs.js"; import { createMSTeamsConversationStoreFs } from "./conversation-store-fs.js";
import { formatUnknownError } from "./errors.js"; import { formatUnknownError } from "./errors.js";

View File

@ -4,13 +4,13 @@ import type {
MoltbotConfig, MoltbotConfig,
DmPolicy, DmPolicy,
WizardPrompter, WizardPrompter,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { import {
addWildcardAllowFrom, addWildcardAllowFrom,
DEFAULT_ACCOUNT_ID, DEFAULT_ACCOUNT_ID,
formatDocsLink, formatDocsLink,
promptChannelAccessConfig, promptChannelAccessConfig,
} from "clawdbot/plugin-sdk"; } from "moltbot/plugin-sdk";
import { resolveMSTeamsCredentials } from "./token.js"; import { resolveMSTeamsCredentials } from "./token.js";
import { import {

View File

@ -1,4 +1,4 @@
import type { ChannelOutboundAdapter } from "clawdbot/plugin-sdk"; import type { ChannelOutboundAdapter } from "moltbot/plugin-sdk";
import { createMSTeamsPollStoreFs } from "./polls.js"; import { createMSTeamsPollStoreFs } from "./polls.js";
import { getMSTeamsRuntime } from "./runtime.js"; import { getMSTeamsRuntime } from "./runtime.js";

View File

@ -1,6 +1,6 @@
import { describe, expect, it } from "vitest"; import { describe, expect, it } from "vitest";
import type { MSTeamsConfig } from "clawdbot/plugin-sdk"; import type { MSTeamsConfig } from "moltbot/plugin-sdk";
import { import {
isMSTeamsGroupAllowed, isMSTeamsGroupAllowed,
resolveMSTeamsReplyPolicy, resolveMSTeamsReplyPolicy,

Some files were not shown because too many files have changed in this diff Show More