docs(kyberforge): restore the retrofit cut order in skill-author
improve.md still required a retrofit before extending but lost the procedure with retrofit.md. Restore the ordered cuts inline, and fix the stale hook name and plugin-mode wording in skill-author's tests and deployment-modes reference. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -5,15 +5,15 @@ source_keys:
|
|||||||
|
|
||||||
# Deployment Modes
|
# Deployment Modes
|
||||||
|
|
||||||
Skills deploy standalone, or as part of a package — either a legacy plugin-mode cache install or an APM (`apm.yml`-governed `.apm/` tree, compiled via `apm compile`). All resolve relative paths from the skill root — the SKILL.md body works the same in any of them. Differences only arise when referencing files *outside* the skill directory.
|
Skills deploy standalone, or as part of an APM package (an `apm.yml`-governed `.apm/` tree, compiled via `apm compile`). Some consumers also receive a package through a host's plugin install, which copies it into a cache. All modes resolve relative paths from the skill root — the SKILL.md body works the same in any of them. Differences only arise when referencing files *outside* the skill directory.
|
||||||
|
|
||||||
## Cache isolation (plugin mode)
|
## Cache isolation (host plugin install)
|
||||||
|
|
||||||
When a plugin is installed, its directory is copied to a cache. Only the plugin's own files are copied. **Any path that leaves the skill directory breaks post-install:**
|
When a host installs a plugin, it copies the plugin directory to a cache. Only the plugin's own files are copied. **Any path that leaves the skill directory breaks post-install:**
|
||||||
|
|
||||||
```
|
```
|
||||||
../other-skill/validate.sh # breaks
|
../other-skill/validate.sh # breaks
|
||||||
plugins/kyberforge/skills/other-skill/ # breaks
|
plugins/<plugin>/.apm/skills/other/ # breaks
|
||||||
../../shared/utils.sh # breaks
|
../../shared/utils.sh # breaks
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -76,6 +76,19 @@ into compliance first — the gates are hot and carry no baseline file, so a one
|
|||||||
non-compliant skill cannot be committed until the description and body meet
|
non-compliant skill cannot be committed until the description and body meet
|
||||||
`references/contract.md`. Treat that retrofit as part of the same change, not a follow-up.
|
`references/contract.md`. Treat that retrofit as part of the same change, not a follow-up.
|
||||||
|
|
||||||
|
Retrofit against the number that actually failed: the audit reports description characters and
|
||||||
|
body-only words separately. Audit the skill in its real package directory, never a scratch copy,
|
||||||
|
where boundary resolution reports `DID NOT RUN` and exits 0 without checking anything. Cut in this
|
||||||
|
order, stopping once the gate clears; the order puts the cuts that lose the least behaviour first:
|
||||||
|
|
||||||
|
1. Gotchas that paraphrase a step below them — delete the Gotcha, keep the step.
|
||||||
|
2. Spec restatements — text repeating a published spec, a tool's `--help`, or a limit the
|
||||||
|
validator already enforces.
|
||||||
|
3. Capability enumeration — keep one capability clause in the description; drop the rest.
|
||||||
|
4. Per-flow prose — move each flow into its own `references/` file behind a dispatch table.
|
||||||
|
|
||||||
|
Still over after all four means the skill does two jobs: split it rather than compressing prose.
|
||||||
|
|
||||||
If a signal points to a script or reference file, edit that file directly rather than adding a
|
If a signal points to a script or reference file, edit that file directly rather than adding a
|
||||||
workaround in SKILL.md.
|
workaround in SKILL.md.
|
||||||
|
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ EOF
|
|||||||
}
|
}
|
||||||
|
|
||||||
@test "scaffold emits a live metadata.version seeded at 0.1.0 (ADR-0022)" {
|
@test "scaffold emits a live metadata.version seeded at 0.1.0 (ADR-0022)" {
|
||||||
# The scaffold must clear .pre-commit-config.yaml's `skill-frontmatter` hook
|
# The scaffold must clear .pre-commit-config.yaml's `skill-size-check` hook
|
||||||
# on its first commit: a commented-out metadata block ships a skill with no
|
# on its first commit: a commented-out metadata block ships a skill with no
|
||||||
# version and is blocked. Assert the field is live, not a comment.
|
# version and is blocked. Assert the field is live, not a comment.
|
||||||
bash "$SCRIPT" my-tool "$DEST"
|
bash "$SCRIPT" my-tool "$DEST"
|
||||||
|
|||||||
Reference in New Issue
Block a user