Files
bot/extensions/diffs/index.ts
zooqueen 9eb61d3b10 style: auto-format import ordering and fix lint errors
- Automated import reordering from oxfmt (70 files)
- Remove unused imports: isSupportedLocale, ConnectErrorDetailCodes,
  buildExternalLinkRel, EXTERNAL_LINK_TARGET
- Remove unused type aliases in doctor-config-flow.test.ts
- Add eslint-disable for intentional null byte regex
2026-03-01 17:27:16 -08:00

31 lines
1.1 KiB
TypeScript

import type { BotPluginApi } from "bot/plugin-sdk";
import { resolvePreferredBotTmpDir } from "bot/plugin-sdk";
import path from "node:path";
import { diffsPluginConfigSchema, resolveDiffsPluginDefaults } from "./src/config.js";
import { createDiffsHttpHandler } from "./src/http.js";
import { DIFFS_AGENT_GUIDANCE } from "./src/prompt-guidance.js";
import { DiffArtifactStore } from "./src/store.js";
import { createDiffsTool } from "./src/tool.js";
const plugin = {
id: "diffs",
name: "Diffs",
description: "Read-only diff viewer and PNG renderer for agents.",
configSchema: diffsPluginConfigSchema,
register(api: BotPluginApi) {
const defaults = resolveDiffsPluginDefaults(api.pluginConfig);
const store = new DiffArtifactStore({
rootDir: path.join(resolvePreferredBotTmpDir(), "bot-diffs"),
logger: api.logger,
});
api.registerTool(createDiffsTool({ api, store, defaults }));
api.registerHttpHandler(createDiffsHttpHandler({ store, logger: api.logger }));
api.on("before_prompt_build", async () => ({
prependContext: DIFFS_AGENT_GUIDANCE,
}));
},
};
export default plugin;