Agent skill

Skill Authoring

by nyldn in nyldn/claude-octopus

Principles for writing skills that behave the same way every run — use when adding, editing, or reviewing a skill in this plugin

MITAuto-check passedAgent Workflows

Install Skill Authoring

skills CLI
$ npx skills add nyldn/claude-octopus --skill skill-authoring -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install nyldn/claude-octopus skill-authoring --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/nyldn/claude-octopus.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/skill-authoring .claude/skills/skill-authoring && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
skill-authoring
GitHub stars
4.2k
Used in
1 other repo
Token cost
~2k tokens
SKILL.md length
1,103 words
Files
2
Skills in repo
62
Repo updated
First seen
Licence
MIT

At a glance

Principles for writing skills that behave the same way every run — use when adding, editing, or reviewing a skill in this plugin

  • Works in 3 steps: In-skill step — what the agent does, in… → In-skill reference — consulted while… → External reference — pushed into a…
  • Reviewing a skill in this plugin
  • SKILL.md covers Domain language, When To Use, When Not To Use and Inputs, plus 5 more sections
  • Calls make

What it does

Skill Authoring is an agent skill from nyldn/claude-octopus. Principles for writing skills that behave the same way every run — use when adding, editing, or reviewing a skill in this plugin

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).

It sits in Agent Workflows, covering Skill authoring. The repository describes itself as: Run multiple AI models against the same research, design, or coding task. Surface disagreements before you ship. The licence is MIT.

When your agent uses it

  • Reviewing a skill in this plugin
  • Tasks that involve Skill authoring

Example prompts

  • “Use the skill-authoring skill to principle for writing skills that behave the same way every run — use when adding, editing, or reviewing a skill in…”
  • “/skill-authoring”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. In-skill step — what the agent does, in order.
  2. In-skill reference — consulted while working. A flat set of peer rules is
  3. External reference — pushed into a sibling file and reached by a pointer,

What it can do on your machine

Read from SKILL.md and the folder at commit e14b84f. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • make

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Skill Authoring loads about 2k tokens when it runs. Until then it costs about 36 tokens; SKILL.md has 1,103 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~36
When it runs · the whole SKILL.md, loaded when a task matches
~2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from nyldn/claude-octopus at commit e14b84f, republished under its MIT licence (© nyldn). 1,103 words, ~1,952 tokens.

Download SKILL.mdSave it as .claude/skills/skill-authoring/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
skill-authoring
description
Principles for writing skills that behave the same way every run — use when adding, editing, or reviewing a skill in this plugin
disable-model-invocation
true

Host: Codex CLI — This skill was designed for Claude Code and adapted for Codex. Cross-reference commands use installed skill names in Codex rather than /octo:* slash commands. Use the active Codex shell and subagent tools. Do not claim a provider, model, or host subagent is available until the current session exposes it. For host tool equivalents, see skills/blocks/codex-host-adapter.md.

Skill Authoring

Load skills/blocks/engineering-method-selection.md from the installed plugin and apply only the methods relevant to this task. Preserve this entry point's execution contract and output format. Read referenced skills as instructions; do not invoke the current command recursively or add provider calls from a seat.

Domain language

Load skills/blocks/domain-modeling.md when a skill discusses providers, models, access, billing, reviewers, or votes. Reuse the shared definitions instead of inventing local synonyms. State the source and time of observations. Never infer authentication, entitlement, billing mode, quota, or model-family independence from a binary or transport name alone.

A skill exists to get determinism out of a stochastic system. Predictability is the goal, and it means the agent takes the same process every run — not that it produces the same output. Every rule below serves that.

docs/PLUGIN-ASSEMBLY-STANDARD.md already fixes the structure a skill body should take. This is about what makes the content inside that structure work.

Adapted from writing-great-skills in mattpocock/skills (MIT), with the invocation section rewritten for how this plugin actually loads skills.

When To Use

  • Writing a new skill, or reviewing one in a PR.
  • A skill fires when it should not, or fails to fire when it should.
  • A skill behaves differently run to run on the same input.
  • Deciding whether something should be a skill at all, or a command, or prose in CLAUDE.md.

When Not To Use

  • For the mechanical checklist — file layout, registration, required sections. That is docs/PLUGIN-ASSEMBLY-STANDARD.md and the CI suites.
  • For writing prompts that are not skills. That is skill-meta-prompt.

Inputs

The skill under construction or review, and an honest answer to: what should the agent do differently because this exists?

Workflow

Invocation: explicit by default

Every shipped command and skill carries disable-model-invocation: true. Claude Code therefore keeps Octopus out of model context until the user chooses an /octo:* command. This is a hard platform gate, not a prose reminder.

Command bodies that need reusable instructions load the entire source file directly from ${HOME}/.claude-octopus/plugin/.claude/skills/<name>/SKILL.md; they do not call the Skill tool. ${HOME}/.claude-octopus/plugin is the stable, self-healed path available to model tool calls; CLAUDE_PLUGIN_ROOT is a hook/runtime variable and may be absent from that context. The command must treat the loaded body as the active instructions in the current conversation, follow its steps in order, and pass the user's text as workflow arguments rather than executable path content. This keeps explicit commands composable without reopening automatic model invocation.

Plain-language routing is a separate, legacy-compatible opt-in controlled by OCTOPUS_AUTO_ROUTER_MODE=suggest|invoke. Its default is off. New skills must never depend on prompt-keyword auto-routing for reachability.

Writing the description

The description does two jobs: say what the skill is, and list the branches that should trigger it. It sits in the context window every turn, so it earns harder pruning than the body.

  • Lead with the word that does the invoking.
  • One trigger per branch. Synonyms that rename the same branch are duplication: "use for test-first development … when the user wants TDD" is one branch written twice.
  • Cut identity that the body already carries. Triggers, plus any "when another skill needs this" clause, and nothing else.
  • Beware collision. With this many skills the scarce resource is trigger space, not skill count. Before adding a trigger phrase, check whether an existing skill or hooks/user-prompt-submit.sh already claims it. The hook is opt-in, but overlapping phrases still degrade routing for users who enable it.
Show full SKILL.md (485 more words)Show less
Information hierarchy

Content is either a step (an ordered action) or reference (a rule or fact consulted on demand). A skill can be all of one, or both. Place each piece on the rung it belongs:

  1. In-skill step — what the agent does, in order.
  2. In-skill reference — consulted while working. A flat set of peer rules is a legitimate shape, not a smell.
  3. External reference — pushed into a sibling file and reached by a pointer, loaded only when the pointer fires. skills/blocks/ is where shared ones live.

Push too little down and the top bloats; push too much and the agent never finds what it needs. Branching is the cleanest test: inline what every run needs, push behind a pointer what only some runs reach.

Completion criteria

Every step ends on a condition that says the work is done. Make it:

  • Checkable — can the agent tell done from not-done without guessing?
  • Exhaustive where it matters — "every changed file accounted for" rather than "review the changes". A vague criterion invites stopping early on something that looks finished.

"Produce a summary" is not a completion criterion. "Every boundary in the table maps to a real handoff in the setup" is.

Enforcement, and its cost

A body that names the orchestrator script directly is required by tests/unit/test-mandatory-compliance.sh to carry a MANDATORY COMPLIANCE block and a PROHIBITED list. That is deliberate for skills that dispatch providers and spend money. It is dead weight on an advisory skill — so if a skill only advises, refer to workflows by their /octo: command names and skip the ceremony rather than adding a compliance block nobody needs.

Provider Or Data Priority

  1. The existing skills, as worked examples of the conventions.
  2. docs/PLUGIN-ASSEMBLY-STANDARD.md for required structure.
  3. The CI suites, which encode constraints prose does not mention.

Stop Or Checkpoint Rules

  • Stop before adding a skill whose triggers overlap an existing one. Extend the existing skill instead; a near-duplicate makes both harder to reach.
  • Stop if the answer to "what does the agent do differently" is "nothing it would not have done anyway".
  • If the content is one paragraph of advice with no process, it belongs in the skill that already covers the area, not in a new file.

Output Contract

When reviewing, report:

  1. Verdict — ship, revise, or fold into an existing skill.
  2. Predictability risks — where two runs would diverge.
  3. Trigger collisions — which existing skill or hook arm competes.
  4. Criteria that are not checkable — quoted, with a replacement.
  5. Misplaced content — what should move up or down the hierarchy.

Verification

  • The description names distinct branches, with no synonym pairs.
  • Every step has a criterion the agent can evaluate.
  • No trigger phrase collides with hooks/user-prompt-submit.sh or an existing skill's description.
  • The skill is registered in .claude-plugin/plugin.json and make sync is clean.
  • It declares disable-model-invocation: true, and any command that composes it loads its source file directly.
  • tests/unit/test-explicit-activation.sh passes.

© nyldn, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/skill-authoring of nyldn/claude-octopus.

  • SKILL.md
  • agents/openai.yaml

Open the folder on GitHubat commit e14b84f

Used in 1 other repository

We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in nyldn/claude-octopus, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Skill Authoring next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Skill Authoring compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Skill Authoring this skillnyldn/claude-octopus4.2k1 repos~2kAutomated safety check: PassMIT
Skill CreatorAzure/azqr79589 repos~8.2kAutomated safety check: PassApache-2.0
Claude Code Skill Developer Guidediet103/claude-code-infrastructure-showcase10k11 repos~3.5kAutomated safety check: PassMIT
Darwin Skill Optimizeralchaincyf/darwin-skill6.2k1 repos~4.7kAutomated safety check: PassMIT
Claude Code Command Developmentanthropics/claude-plugins-official38k10 repos~4.8kAutomated safety check: PassApache-2.0
Claude Code Plugin Structureanthropics/claude-plugins-official38k10 repos~3.4kAutomated safety check: PassApache-2.0

Similar skills

  • Skill Creator

    Azure/azqr

    Official

    Create new skills, modify and improve existing skills, and measure skill performance.

    795 GitHub starsUsed in 89 repos~8.2k tokens
    Agent WorkflowsAuto-check passed
  • Claude Code Skill Developer Guide

    diet103/claude-code-infrastructure-showcase

    A guide to creating and managing Claude Code skills with auto-activation: skill-rules.json triggers, hooks, enforcement levels, YAML frontmatter and progressive disclosure.

    10k GitHub starsUsed in 11 repos~3.5k tokens
    Agent WorkflowsAuto-check passed
  • Darwin Skill Optimizer

    alchaincyf/darwin-skill

    Scores SKILL.md files on a nine-dimension rubric, then improves them in a keep-or-revert loop with independent judge agents, test prompts, git history and human checkpoints.

    6.2k GitHub starsUsed in 1 repo~4.7k tokens
    Agent WorkflowsAuto-check passed
  • Claude Code Command Development

    anthropics/claude-plugins-official

    Official

    Explains how to write Claude Code slash commands: Markdown files with YAML frontmatter, arguments, file references, bash context and interactive prompts.

    38k GitHub starsUsed in 10 repos~4.8k tokens
    Agent WorkflowsAuto-check passed
  • Claude Code Plugin Structure

    anthropics/claude-plugins-official

    Official

    Explains the directory layout, plugin.json manifest and component organization of a Claude Code plugin, including auto-discovery and portable paths.

    38k GitHub starsUsed in 10 repos~3.4k tokens
    Agent WorkflowsAuto-check passed
  • Skill Release Gate

    rohitg00/ai-engineering-from-scratch

    Evaluates an Agent Skill bundle before release for structure, trigger quality, artifact improvement, script correctness, safety, installed-tree integrity and host portability.

    66k GitHub stars~1k tokensUpdated today
    Agent WorkflowsAuto-check passed

More from nyldn/claude-octopus

All 62 skills in this repo
  • Octopus Quick

    nyldn/claude-octopus

    Quick execution for ad-hoc tasks without full workflow overhead — use for small, self-contained requests

    4.2k GitHub starsUsed in 1 repo~2.2k tokens
    Auto-check passed
  • Octopus Research

    nyldn/claude-octopus

    Thorough research across multiple sources — use for complex topics needing broad synthesis

    4.2k GitHub starsUsed in 1 repo~1.9k tokens
    Auto-check passed
  • Octopus Security Audit

    nyldn/claude-octopus

    OWASP compliance, vulnerability scanning, and adversarial red team testing — use for security reviews

    4.2k GitHub starsUsed in 1 repo~2.3k tokens
    Auto-check passed
  • Skill Audit

    nyldn/claude-octopus

    Audit codebases for quality, consistency, and broken patterns — use for pre-release or tech debt review

    4.2k GitHub starsUsed in 1 repo~3.2k tokens
    Auto-check passed
  • Skill Content Pipeline

    nyldn/claude-octopus

    Extract patterns and anatomy from URLs — use to reverse-engineer content strategies from live pages

    4.2k GitHub starsUsed in 1 repo~3.9k tokens
    Auto-check passed
  • Skill Context Detection

    nyldn/claude-octopus

    Auto-detect work context (Dev vs Knowledge) — use to tailor workflows based on current task type

    4.2k GitHub starsUsed in 1 repo~2.6k tokens
    Auto-check passed

Categories

Questions about Skill Authoring

What does Skill Authoring do?

Principles for writing skills that behave the same way every run — use when adding, editing, or reviewing a skill in this plugin. Skill Authoring is an agent skill from nyldn/claude-octopus.

When should I use Skill Authoring?

Skill Authoring fits situations like: reviewing a skill in this plugin; tasks that involve Skill authoring.

How do I install Skill Authoring in Claude Code?

Run `npx skills add nyldn/claude-octopus --skill skill-authoring -a claude-code`. Or copy the skill folder (skills/skill-authoring in nyldn/claude-octopus) into .claude/skills/skill-authoring in your project. Claude Code loads it when a task matches its description.

How do I install Skill Authoring in Codex?

Run `npx skills add nyldn/claude-octopus --skill skill-authoring -a codex`. Or copy the skill folder (skills/skill-authoring in nyldn/claude-octopus) into .agents/skills/skill-authoring in your project. Codex loads it when a task matches its description.

Can I use Skill Authoring in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add nyldn/claude-octopus --skill skill-authoring -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/skill-authoring, .gemini/skills/skill-authoring, .github/skills/skill-authoring and .opencode/skills/skill-authoring in your project.

What does Skill Authoring need to run?

Going by SKILL.md and its folder, Skill Authoring needs the command-line tools its instructions call (make).

Does Skill Authoring access the network?

SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.

Is Skill Authoring safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Skill Authoring use?

Skill Authoring is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Skill Authoring use?

About 2k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Skill Authoring?

Skills that share tags, products or a category with Skill Authoring: Skill Creator (Azure/azqr, 795 stars), Claude Code Skill Developer Guide (diet103/claude-code-infrastructure-showcase, 10k stars), Darwin Skill Optimizer (alchaincyf/darwin-skill, 6.2k stars) and Claude Code Command Development (anthropics/claude-plugins-official, 38k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Skill Authoring?

nyldn (a GitHub user) maintains it in nyldn/claude-octopus, which has 4,192 GitHub stars. The repository holds 62 skills in this directory. The repository was last updated on October 9, 2026.

Source: nyldn/claude-octopus on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.