build(plugins): externalize acpx release packages

This commit is contained in:
Peter Steinberger
2026-05-02 08:47:58 +01:00
parent 10c8b9085a
commit 010f7a58a1
17 changed files with 134 additions and 32 deletions

View File

@@ -19,6 +19,8 @@ export type PluginPackageJson = {
openclaw?: {
extensions?: string[];
install?: {
defaultChoice?: string;
minHostVersion?: string;
npmSpec?: string;
};
release?: {
@@ -218,6 +220,7 @@ export function collectPublishablePluginPackageErrors(
const errors: string[] = [];
const packageName = packageJson.name?.trim() ?? "";
const packageVersion = packageJson.version?.trim() ?? "";
const installNpmSpec = normalizeOptionalString(packageJson.openclaw?.install?.npmSpec);
const repositoryUrl =
typeof packageJson.repository === "string"
? packageJson.repository.trim()
@@ -250,6 +253,9 @@ export function collectPublishablePluginPackageErrors(
if (extensions.some((entry) => typeof entry !== "string" || !entry.trim())) {
errors.push("openclaw.extensions must contain only non-empty strings.");
}
if (!installNpmSpec) {
errors.push("openclaw.install.npmSpec must be a non-empty string for publishable plugins.");
}
return errors;
}