diff --git a/CHANGELOG.md b/CHANGELOG.md index d68ba71ba0..8d358374c7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,6 +29,7 @@ Docs: https://docs.openclaw.ai - Onboarding: keep TUI flow exclusive (skip completion prompt + background Web UI seed); completion prompt now handled by install/update. - TUI: block onboarding output while TUI is active and restore terminal state on exit. - CLI/Zsh completion: cache scripts in state dir and escape option descriptions to avoid invalid option errors. +- fix(ui): resolve Control UI asset path correctly. - Docs: finish renaming the QMD memory docs to reference the OpenClaw state dir. - Tests: stub SSRF DNS pinning in web auto-reply + Gemini video coverage. (#6619) Thanks @joshp123. diff --git a/src/agents/skills/bundled-context.ts b/src/agents/skills/bundled-context.ts index 6545ace79d..091f62caba 100644 --- a/src/agents/skills/bundled-context.ts +++ b/src/agents/skills/bundled-context.ts @@ -1,6 +1,10 @@ import { loadSkillsFromDir } from "@mariozechner/pi-coding-agent"; +import { createSubsystemLogger } from "../../logging/subsystem.js"; import { resolveBundledSkillsDir, type BundledSkillsResolveOptions } from "./bundled-dir.js"; +const skillsLogger = createSubsystemLogger("skills"); +let hasWarnedMissingBundledDir = false; + export type BundledSkillsContext = { dir?: string; names: Set; @@ -12,6 +16,12 @@ export function resolveBundledSkillsContext( const dir = resolveBundledSkillsDir(opts); const names = new Set(); if (!dir) { + if (!hasWarnedMissingBundledDir) { + hasWarnedMissingBundledDir = true; + skillsLogger.warn( + "Bundled skills directory could not be resolved; built-in skills may be missing.", + ); + } return { dir, names }; } const result = loadSkillsFromDir({ dir, source: "openclaw-bundled" });