UNPKG

paqad-ai

Version:

Spec-driven development framework — AI agents that think before they type

97 lines (95 loc) • 3.19 kB
import { createRequire as __paqadCreateRequire } from 'module'; const require = __paqadCreateRequire(import.meta.url); import { buildPluginHookChain, mergeNativeHooks, renderClaudePluginStageAgents } from "../chunk-KXN6TRQP.js"; import "../chunk-73AIVIC6.js"; import "../chunk-BKNKG26S.js"; import "../chunk-AK3HYELM.js"; import "../chunk-THDANA7U.js"; import "../chunk-LYNDVGNE.js"; import "../chunk-RJMJYPHL.js"; import "../chunk-NCYDV2N5.js"; import "../chunk-D6VEUSB6.js"; import "../chunk-NJE7NS7E.js"; import "../chunk-ACJQW7SB.js"; import "../chunk-YA6SCYMC.js"; import "../chunk-Z3NGWHFX.js"; import "../chunk-YWAORJG6.js"; import "../chunk-Q353EDKY.js"; import "../chunk-AZLA53A6.js"; import "../chunk-IHMBVS6H.js"; import { init_esm_shims } from "../chunk-IDFRWBMN.js"; // src/plugin/manifest-build.ts init_esm_shims(); var PLUGIN_MOD_MODULES = ["./mod/register.tsx"]; var PLUGIN_MOD_TYPES = "./runtime/claude-plugin/mod/types/index.d.ts"; var PLUGIN_ICON = "./assets/icon.png"; function buildPluginHooksConfig() { return { ...mergeNativeHooks({}, buildPluginHookChain()), modules: [...PLUGIN_MOD_MODULES] }; } function serializePluginHooksJson() { return `${JSON.stringify(buildPluginHooksConfig(), null, 2)} `; } function pluginAgentPaths() { return renderClaudePluginStageAgents().map( (agent) => `./runtime/claude-plugin/agents/${agent.name}` ); } function buildPluginManifest(packageVersion) { return { name: "paqad", displayName: "paqad", description: "Your team's rules, enforced at edit time, with evidence for every change.", version: packageVersion, author: { name: "Eliyce", email: "hello@eliyce.com", url: "https://eliyce.com" }, homepage: "https://paqad.ai", repository: "https://github.com/Eliyce/paqad-claude-plugin", license: "MIT", keywords: ["governance", "code-review", "evidence", "rules", "quality-gates", "compliance"], icon: PLUGIN_ICON, documentationUrl: "https://paqad.ai/docs/", supportUrl: "https://paqad.ai/support/", privacyPolicyUrl: "https://paqad.ai/privacy/", termsOfServiceUrl: "https://paqad.ai/terms/", hooks: "./runtime/claude-plugin/hooks.json", agents: pluginAgentPaths(), skills: "./runtime/claude-plugin/skills", types: PLUGIN_MOD_TYPES, userConfig: { openai_api_key: { type: "string", title: "OpenAI API key", description: "Only needed if you set rag_embedding_provider=openai. Stored in your system credential store.", sensitive: true, required: false }, cohere_api_key: { type: "string", title: "Cohere API key", description: "Only needed if you turn on reranking with the cohere backend. Stored in your system credential store.", sensitive: true, required: false } } }; } function serializePluginManifest(packageVersion) { return `${JSON.stringify(buildPluginManifest(packageVersion), null, 2)} `; } export { PLUGIN_ICON, PLUGIN_MOD_MODULES, PLUGIN_MOD_TYPES, buildPluginHooksConfig, buildPluginManifest, pluginAgentPaths, renderClaudePluginStageAgents, serializePluginHooksJson, serializePluginManifest };