Files
clawdbot/src/agents/skills.ts
Peter Steinberger c379191f80 chore: migrate to oxlint and oxfmt
Co-authored-by: Christoph Nakazawa <christoph.pojer@gmail.com>
2026-01-14 15:02:19 +00:00

43 lines
1.2 KiB
TypeScript

import type { ClawdbotConfig } from "../config/config.js";
export {
hasBinary,
isBundledSkillAllowed,
isConfigPathTruthy,
resolveBundledAllowlist,
resolveConfigPath,
resolveRuntimePlatform,
resolveSkillConfig,
} from "./skills/config.js";
export {
applySkillEnvOverrides,
applySkillEnvOverridesFromSnapshot,
} from "./skills/env-overrides.js";
export type {
ClawdbotSkillMetadata,
SkillEntry,
SkillInstallSpec,
SkillSnapshot,
SkillsInstallPreferences,
} from "./skills/types.js";
export {
buildWorkspaceSkillSnapshot,
buildWorkspaceSkillsPrompt,
filterWorkspaceSkillEntries,
loadWorkspaceSkillEntries,
resolveSkillsPromptForRun,
syncSkillsToWorkspace,
} from "./skills/workspace.js";
export function resolveSkillsInstallPreferences(config?: ClawdbotConfig) {
const raw = config?.skills?.install;
const preferBrew = raw?.preferBrew ?? true;
const managerRaw = typeof raw?.nodeManager === "string" ? raw.nodeManager.trim() : "";
const manager = managerRaw.toLowerCase();
const nodeManager =
manager === "pnpm" || manager === "yarn" || manager === "bun" || manager === "npm"
? (manager as "npm" | "pnpm" | "yarn" | "bun")
: "npm";
return { preferBrew, nodeManager };
}