From e4f62cfcbcfda6c3e804966272b341aa29412fdd Mon Sep 17 00:00:00 2001 From: chaochaoweb3 <49186707+chaochaoweb3@users.noreply.github.com> Date: Thu, 2 Jul 2026 16:22:50 +0800 Subject: [PATCH 1/2] fix: read skill files as UTF-8 --- scripts/validate-skills | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/validate-skills b/scripts/validate-skills index 4d8e1fc8..6e4904cc 100755 --- a/scripts/validate-skills +++ b/scripts/validate-skills @@ -37,7 +37,7 @@ errors = [] names = {} skill_files.each do |path| - text = File.read(path) + text = File.read(path, encoding: "UTF-8") data, error = load_front_matter(path, text) if error From 98012b74448ae3e7d3a79508fbe2f46630af7aa0 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Thu, 2 Jul 2026 02:49:53 -0700 Subject: [PATCH 2/2] docs: credit UTF-8 validator fix --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cd06bdbc..fa52fb86 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,9 @@ summary: Timeline of guardrail helper changes mirrored from Sweetistics and rela # Changelog +## 2026-07-02 — UTF-8 Skill Validation +- Made skill validation explicitly read UTF-8 so C locales accept non-ASCII skill front matter. Thanks @chaochaoweb3. + ## 2026-07-02 — Orchestrator Ownership - Kept `maintainer-orchestrator` skill maintenance in the root orchestration session and enforced exactly one Codex app thread per project, removing project-to-task thread fan-out including the OpenClaw exception.