Luigit
repositories / dotfiles

dotfiles

bugabingas dorkfiles

owned by admin

pi/agent/skills/writing-skills/references/authoring.md

Raw
Rendered preview

Authoring edge cases

Read only when the task touches the edge case.

  • Portability: Pi accepts some forms the Agent Skills standard rejects. Keep the portable contract: lowercase name, directory/name agreement, non-empty description, valid YAML frontmatter.
  • Invocation: disable-model-invocation is a boolean. Do not add a dispatcher prompt when current Pi invocation already supplies the behavior.
  • Links: resolve local Markdown links from their source file. Ignore URLs, anchors, absolute paths, and examples inside code blocks. Check target existence; do not promise remote availability or heading validity.
  • Scripts: any recognized helper extension anywhere in the skill makes the package scripted. Extensionless files do not. A declaration of node --test is packaging evidence, not proof that tests run.
  • Fixtures: use OS temp directories; do not execute fixture helpers. Spawn subprocesses with process.execPath and argument arrays, never shell strings.
  • Scope: checker tests prove structural behavior only. Trigger quality, prose effectiveness, source authority, and semantic correctness need review or a controlled scenario.
  • Research: keep downloaded material and generated evidence outside the repository unless explicitly requested.
# Authoring edge cases

Read only when the task touches the edge case.

- **Portability:** Pi accepts some forms the Agent Skills standard rejects.
  Keep the portable contract: lowercase `name`, directory/name agreement,
  non-empty `description`, valid YAML frontmatter.
- **Invocation:** `disable-model-invocation` is a boolean. Do not add a
  dispatcher prompt when current Pi invocation already supplies the behavior.
- **Links:** resolve local Markdown links from their source file. Ignore URLs,
  anchors, absolute paths, and examples inside code blocks. Check target
  existence; do not promise remote availability or heading validity.
- **Scripts:** any recognized helper extension anywhere in the skill makes the
  package scripted. Extensionless files do not. A declaration of `node --test`
  is packaging evidence, not proof that tests run.
- **Fixtures:** use OS temp directories; do not execute fixture helpers. Spawn
  subprocesses with `process.execPath` and argument arrays, never shell strings.
- **Scope:** checker tests prove structural behavior only. Trigger quality,
  prose effectiveness, source authority, and semantic correctness need review
  or a controlled scenario.
- **Research:** keep downloaded material and generated evidence outside the
  repository unless explicitly requested.