From 1491d90b5f680025fa9fdc6dc86350171c98f303 Mon Sep 17 00:00:00 2001 From: Julian Noble Date: Tue, 21 Jul 2026 09:59:08 +1000 Subject: [PATCH] skills: quote YAML frontmatter descriptions for strict-parser compatibility The tcl-whatis and tcl-nslist skill descriptions contained ': ' mid-string, which is illegal in a plain YAML scalar and broke frontmatter parsing in strict harnesses. Wrap both description values in double quotes (all four copies: .agents/skills and .claude/skills). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com --- .agents/skills/tcl-nslist/SKILL.md | 2 +- .agents/skills/tcl-whatis/SKILL.md | 2 +- .claude/skills/tcl-nslist/SKILL.md | 2 +- .claude/skills/tcl-whatis/SKILL.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.agents/skills/tcl-nslist/SKILL.md b/.agents/skills/tcl-nslist/SKILL.md index 785d3ac2..c5484ea5 100644 --- a/.agents/skills/tcl-nslist/SKILL.md +++ b/.agents/skills/tcl-nslist/SKILL.md @@ -1,6 +1,6 @@ --- name: tcl-nslist -description: Use BEFORE writing any new Tcl helper and BEFORE starting work in a punk namespace/package in this repo - to discover what already exists: what commands/procs a namespace exposes, or what an ensemble's implementation namespace contains. Run it first; reserve grep for full-text source-pattern searches - this lists the live interpreter, so it sees runtime-generated commands, aliases and imports grep cannot. Cost: one sub-1s side-effect-free punkshell invocation. Via punk::ns::get_ns_dicts (the machinery behind the interactive n// browser): child namespaces with loadable-package markers, commands classified by kind (proc/alias/ensemble/native/oo/imported), which commands have punk::args docs, optional whole-namespace usage synopses; auto-loads the package. No specific command name needed - for a named command's definition site/interface use the tcl-whatis skill. +description: "Use BEFORE writing any new Tcl helper and BEFORE starting work in a punk namespace/package in this repo - to discover what already exists: what commands/procs a namespace exposes, or what an ensemble's implementation namespace contains. Run it first; reserve grep for full-text source-pattern searches - this lists the live interpreter, so it sees runtime-generated commands, aliases and imports grep cannot. Cost: one sub-1s side-effect-free punkshell invocation. Via punk::ns::get_ns_dicts (the machinery behind the interactive n// browser): child namespaces with loadable-package markers, commands classified by kind (proc/alias/ensemble/native/oo/imported), which commands have punk::args docs, optional whole-namespace usage synopses; auto-loads the package. No specific command name needed - for a named command's definition site/interface use the tcl-whatis skill." --- # tcl-nslist diff --git a/.agents/skills/tcl-whatis/SKILL.md b/.agents/skills/tcl-whatis/SKILL.md index 4f5bd3eb..b83b8d27 100644 --- a/.agents/skills/tcl-whatis/SKILL.md +++ b/.agents/skills/tcl-whatis/SKILL.md @@ -1,6 +1,6 @@ --- name: tcl-whatis -description: Use BEFORE reviewing, testing, editing, porting or relocating any Tcl command in this repo, and for any question about a command's definition site, calling interface, loaded module version, or runtime body (including ensemble subcommands like 'string is'). Run it first; reserve grep for full-text source-pattern searches - this repo has several coexisting copies of many modules and grep cannot tell you which copy is actually loaded. Cost: one sub-1s side-effect-free punkshell invocation. Reports resolved name, kind (proc/alias/ensemble), providing package + loaded version, origin file, def file:line, and punk::args synopsis; the only option for runtime-generated procs. For namespace/package-level discovery (listing what a namespace exposes, no command name needed) use the tcl-nslist skill. +description: "Use BEFORE reviewing, testing, editing, porting or relocating any Tcl command in this repo, and for any question about a command's definition site, calling interface, loaded module version, or runtime body (including ensemble subcommands like 'string is'). Run it first; reserve grep for full-text source-pattern searches - this repo has several coexisting copies of many modules and grep cannot tell you which copy is actually loaded. Cost: one sub-1s side-effect-free punkshell invocation. Reports resolved name, kind (proc/alias/ensemble), providing package + loaded version, origin file, def file:line, and punk::args synopsis; the only option for runtime-generated procs. For namespace/package-level discovery (listing what a namespace exposes, no command name needed) use the tcl-nslist skill." --- # tcl-whatis diff --git a/.claude/skills/tcl-nslist/SKILL.md b/.claude/skills/tcl-nslist/SKILL.md index 785d3ac2..c5484ea5 100644 --- a/.claude/skills/tcl-nslist/SKILL.md +++ b/.claude/skills/tcl-nslist/SKILL.md @@ -1,6 +1,6 @@ --- name: tcl-nslist -description: Use BEFORE writing any new Tcl helper and BEFORE starting work in a punk namespace/package in this repo - to discover what already exists: what commands/procs a namespace exposes, or what an ensemble's implementation namespace contains. Run it first; reserve grep for full-text source-pattern searches - this lists the live interpreter, so it sees runtime-generated commands, aliases and imports grep cannot. Cost: one sub-1s side-effect-free punkshell invocation. Via punk::ns::get_ns_dicts (the machinery behind the interactive n// browser): child namespaces with loadable-package markers, commands classified by kind (proc/alias/ensemble/native/oo/imported), which commands have punk::args docs, optional whole-namespace usage synopses; auto-loads the package. No specific command name needed - for a named command's definition site/interface use the tcl-whatis skill. +description: "Use BEFORE writing any new Tcl helper and BEFORE starting work in a punk namespace/package in this repo - to discover what already exists: what commands/procs a namespace exposes, or what an ensemble's implementation namespace contains. Run it first; reserve grep for full-text source-pattern searches - this lists the live interpreter, so it sees runtime-generated commands, aliases and imports grep cannot. Cost: one sub-1s side-effect-free punkshell invocation. Via punk::ns::get_ns_dicts (the machinery behind the interactive n// browser): child namespaces with loadable-package markers, commands classified by kind (proc/alias/ensemble/native/oo/imported), which commands have punk::args docs, optional whole-namespace usage synopses; auto-loads the package. No specific command name needed - for a named command's definition site/interface use the tcl-whatis skill." --- # tcl-nslist diff --git a/.claude/skills/tcl-whatis/SKILL.md b/.claude/skills/tcl-whatis/SKILL.md index 4f5bd3eb..b83b8d27 100644 --- a/.claude/skills/tcl-whatis/SKILL.md +++ b/.claude/skills/tcl-whatis/SKILL.md @@ -1,6 +1,6 @@ --- name: tcl-whatis -description: Use BEFORE reviewing, testing, editing, porting or relocating any Tcl command in this repo, and for any question about a command's definition site, calling interface, loaded module version, or runtime body (including ensemble subcommands like 'string is'). Run it first; reserve grep for full-text source-pattern searches - this repo has several coexisting copies of many modules and grep cannot tell you which copy is actually loaded. Cost: one sub-1s side-effect-free punkshell invocation. Reports resolved name, kind (proc/alias/ensemble), providing package + loaded version, origin file, def file:line, and punk::args synopsis; the only option for runtime-generated procs. For namespace/package-level discovery (listing what a namespace exposes, no command name needed) use the tcl-nslist skill. +description: "Use BEFORE reviewing, testing, editing, porting or relocating any Tcl command in this repo, and for any question about a command's definition site, calling interface, loaded module version, or runtime body (including ensemble subcommands like 'string is'). Run it first; reserve grep for full-text source-pattern searches - this repo has several coexisting copies of many modules and grep cannot tell you which copy is actually loaded. Cost: one sub-1s side-effect-free punkshell invocation. Reports resolved name, kind (proc/alias/ensemble), providing package + loaded version, origin file, def file:line, and punk::args synopsis; the only option for runtime-generated procs. For namespace/package-level discovery (listing what a namespace exposes, no command name needed) use the tcl-nslist skill." --- # tcl-whatis