Agent skill

Dynamo Skill Writer

by DynamoDS in DynamoDS/Dynamo

Author and maintain Dynamo agent skills. An agent skill from DynamoDS/Dynamo.

Apache-2.0Auto-check passed

Install Dynamo Skill Writer

skills CLI
$ npx skills add DynamoDS/Dynamo --skill dynamo-skill-writer -a claude-code

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

GitHub CLI
$ gh skill install DynamoDS/Dynamo dynamo-skill-writer --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/DynamoDS/Dynamo.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/dynamo-skill-writer .claude/skills/dynamo-skill-writer && 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
dynamo-skill-writer
GitHub stars
2k
Token cost
~2.2k tokens
SKILL.md length
842 words
Files
1
Skills in repo
13
Repo updated
First seen
Licence
Apache-2.0

At a glance

Author and maintain Dynamo agent skills. An agent skill from DynamoDS/Dynamo.

  • Works in 8 steps: Determine whether this is a new skill or… → Author or update canonical content in… → Ask the user whether the skill should be… → …
  • Creating a new skill in .claude/skills/
  • SKILL.md covers When to use, When not to use, Inputs expected and Output format, plus 8 more sections
  • Calls dotnet

What it does

Dynamo Skill Writer is an agent skill from DynamoDS/Dynamo. Author and maintain Dynamo agent skills. Use this skill whenever creating a new skill in .claude/skills/, updating an existing skill, fixing drift between canonical skills and Copilot/Cursor/Claude wrappers, or asking how to write effective skill instructions for the Dynamo repo.

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It works with GitHub. The repository describes itself as: Open Source Graphical Programming for Computational Design and Automation. The licence is Apache-2.0.

When your agent uses it

  • Creating a new skill in .claude/skills/
  • Updating an existing skill
  • Fixing drift between canonical skills and Copilot/Cursor/Claude wrappers
  • Asking how to write effective skill instructions for the Dynamo repo

Example prompts

  • “/dynamo-skill-writer”

Workflow steps

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

  1. Determine whether this is a new skill or an update to an existing skill.
  2. Author or update canonical content in .claude/skills//SKILL.md.
  3. Ask the user whether the skill should be surfaced as a Copilot and Claude Code agent before touching any wrapper files. The sync steps…
  4. (If confirmed) Add an entry to the canonicalSkills array in .github/scripts/sync_agent_wrappers.ps1.
  5. (If confirmed) Regenerate wrappers: ./.github/scripts/sync_agent_wrappers.ps1
  6. (If confirmed) Validate sync: ./.github/scripts/sync_agent_wrappers.ps1 -Check -Report
  7. Update discovery docs when skill inventory changed
  8. Ensure no contradictions between canonical and mirrored surfaces.

What it can do on your machine

Read from SKILL.md and the folder at commit 55647ad. 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:

    • dotnet

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

  • Network

    No URLs in SKILL.md.

    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

Dynamo Skill Writer loads about 2.2k tokens when it runs. Until then it costs about 75 tokens; SKILL.md has 842 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~75
When it runs · the whole SKILL.md, loaded when a task matches
~2.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 DynamoDS/Dynamo at commit 55647ad, republished under its Apache-2.0 licence (© DynamoDS). 842 words, ~2,212 tokens.

Download SKILL.mdSave it as .claude/skills/dynamo-skill-writer/SKILL.md (or your agent's skills folder).
name
dynamo-skill-writer
description
Author and maintain Dynamo agent skills. Use this skill whenever creating a new skill in .claude/skills/, updating an existing skill, fixing drift between canonical skills and Copilot/Cursor/Claude wrappers, or asking how to write effective skill instructions for the Dynamo repo.

Dynamo Skill Writer

When to use

  • Creating a new skill in .claude/skills/.
  • Updating an existing skill and ensuring tool mirrors remain aligned.
  • Adding or updating Copilot or Claude Code agent wrappers generated from canonical skills.
  • Fixing drift between canonical skill content and generated wrappers.

When not to use

  • Writing product code, tests, or architecture docs unrelated to agent skills.
  • One-off prompt output where no canonical skill should be created.

Inputs expected

A request to add/update a skill, or a request to sync skill surfaces across Copilot/Cursor/Claude.

Output format

A concrete set of file edits and validation steps that:

  • updates canonical skill content in .claude/skills/
  • updates sync metadata in .github/scripts/sync_agent_wrappers.ps1 when Copilot surfacing is needed
  • regenerates and validates Copilot wrappers in .github/agents/
  • updates index/docs references in .claude/README.md, .github/copilot-instructions.md, and AGENTS.md when applicable

Workflow

  1. Determine whether this is a new skill or an update to an existing skill.
  2. Author or update canonical content in .claude/skills/<skill-name>/SKILL.md.
  3. Ask the user whether the skill should be surfaced as a Copilot and Claude Code agent before touching any wrapper files. The sync steps below are optional — skip them unless the user confirms.
  4. (If confirmed) Add an entry to the canonicalSkills array in .github/scripts/sync_agent_wrappers.ps1.
  5. (If confirmed) Regenerate wrappers: ./.github/scripts/sync_agent_wrappers.ps1
  6. (If confirmed) Validate sync: ./.github/scripts/sync_agent_wrappers.ps1 -Check -Report
  7. Update discovery docs when skill inventory changed:
    • .claude/README.md
    • .github/copilot-instructions.md
    • AGENTS.md
  8. Ensure no contradictions between canonical and mirrored surfaces.

Boundaries

  • ✅ Always: edit .claude/skills/<skill>/SKILL.md and its assets//references/ files; update .claude/README.md and AGENTS.md
  • ⚠️ Ask first: touch .github/scripts/sync_agent_wrappers.ps1 or trigger wrapper regeneration — confirm cross-tool surfacing intent before running the sync script
  • 🚫 Never: hand-edit generated wrappers in .github/agents/ — they are always overwritten by the sync script, so manual edits are lost and create drift

Rules

  • .claude/ is the canonical source of truth for skill logic. When mirrors conflict with canonical files, canonical wins.
  • Generated wrappers in .github/agents/ must never be hand-edited — they exist only as outputs of the sync script.
  • Skills in .claude/skills/ are loaded natively by Claude Code — no .claude/agents/ wrapper is needed for them.
  • Skill metadata (name/description) should be concise and stable; churn in these fields breaks triggering accuracy.
  • Keep changes deterministic so -Check mode stays reliable in CI.

New Skill Checklist

  • Created .claude/skills/<skill-name>/SKILL.md with frontmatter (name, description)
  • Added skill to .claude/README.md Quick Reference table
  • Added skill to .claude/README.md parity matrix (if cross-tool surfaced)
  • (If Copilot-surfaced) Added skill to .github/scripts/sync_agent_wrappers.ps1 wrapper map
  • (If Copilot-surfaced) Regenerated .github/agents/* wrappers
  • (If Copilot-surfaced) Ran ./.github/scripts/sync_agent_wrappers.ps1 -Check -Report
  • Updated .github/copilot-instructions.md skill list
  • Updated AGENTS.md skill list

Naming guidance

  • Canonical skill id: kebab-case (example: dynamo-skill-writer)
  • Copilot wrapper agent name: title case (example: Dynamo Skill Writer)

Example intent

"Create a skill that enforces consistent skill-sync behavior across Copilot, Cursor, and Claude."

Expected result:

  • New canonical skill in .claude/skills/
  • User asked whether Copilot wrapper is needed before any sync steps run
  • (If yes) New generated wrapper in .github/agents/, sync script updated and passing in check mode
  • AGENTS.md, .claude/README.md, and .github/copilot-instructions.md skill indexes updated

Writing a High-Quality Skill

Show full SKILL.md (349 more words)Show less
Start minimal, then iterate

Write a skill to handle one focused task well. Anticipating all requirements upfront produces bloated prompts that are harder to maintain and easier to overfit. Expand based on observed gaps instead.

The description is the trigger — make it specific and slightly pushy

The description field is what the agent reads when deciding whether to consult this skill. Vague descriptions cause undertriggering; overly broad ones cause false matches. Include the concrete contexts that should activate the skill, not just a general summary.

❌ Vague:

description: Helps with code tasks in Dynamo.

✅ Specific and triggering:

description: Write and review NUnit tests for DynamoCore following Dynamo testing
patterns, base class selection, and AAA structure. Use when writing test methods,
setting up test infrastructure, or reviewing tests for quality.

Include the framework and key constraints when they matter (.NET 10, NUnit, WPF Windows-only). Per skill-creator guidance: all "when to use" information belongs in the description, not just the body.

Commands belong early and must be executable

List commands in an early section with exact flags — not just tool names. An agent that doesn't know the flags will guess, and guesses are wrong.

❌ Missing flags:

Run dotnet test to execute tests.

✅ Executable:

bash
dotnet test test/Libraries/CoreNodesTests/CoreNodesTests.csproj --filter "Name~MyTest"
Code examples over prose

One real snippet showing the expected pattern beats three paragraphs describing it. Explain the why behind rules rather than issuing mandates — an agent that understands reasoning generalizes better than one following a checklist.

Show both ✅ correct and ❌ anti-pattern forms for non-obvious rules:

❌ Prose only:

Override BuildOutputAst and return a list of AssociativeNodes.

✅ Code example:

csharp
public override IEnumerable<AssociativeNode> BuildOutputAst(
    List<AssociativeNode> inputAstNodes)
{
    return new[] { AstFactory.BuildAssignment(
        GetAstIdentifierForOutputIndex(0),
        AstFactory.BuildFunctionCall("MyLib.MyFunc", inputAstNodes)) };
}
Define explicit boundaries

Use a three-tier system so the agent knows what requires human approval before acting:

  • ✅ Always do — safe, reversible, local actions (read files, run tests, edit .cs files)
  • ⚠️ Ask first — affects shared state or is hard to reverse (add entries to PublicAPI.Unshipped.txt, edit .resx files, rename public types)
  • 🚫 Never do — destructive or policy-violating (hand-edit generated wrappers in .github/agents/, remove entries from PublicAPI.Shipped.txt, suppress CA2327/CA2328/CA2329/CA2330)
Map file-level responsibilities

When a skill touches multiple directories, state which it reads vs. writes. This prevents unintended side effects and makes it obvious what "done" looks like:

PathAccess
.claude/skills/<skill>/SKILL.mdRead + Write (canonical)
.github/agents/*.mdRead only (generated — never hand-edit)
.github/scripts/sync_agent_wrappers.ps1Read + Write (sync map)
.claude/README.mdRead + Write (index)
Reference assets, don't inline everything

Put detailed reference material in assets/ or references/ sub-files and link from the skill. This keeps SKILL.md under ~500 lines and scannable.

## Assets & References
- **[quality-checklist.md](./references/quality-checklist.md)** — anti-patterns and PR checklist
- **[template.md](./assets/template.md)** — copy-paste skill template

Skill Template

markdown
---
name: dynamo-<skill-name>
description: One sentence covering what this skill does AND the specific contexts
that should trigger it. Be concrete. Be slightly pushy.
---

# Dynamo <Skill Name>

## When to use
- Bullet list of triggering scenarios.

## When not to use
- Redirect to the correct skill where applicable.

## Inputs expected
What the caller must provide.

## Output format
What the skill produces.

---

## Workflow
Numbered steps. Reference asset files for detail rather than inlining.

## Boundaries
- ✅ Always: ...
- ⚠️ Ask first: ...
- 🚫 Never: ...

## Assets & References
- **[asset.md](./assets/asset.md)** — description

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

Files

Just SKILL.md in .claude/skills/dynamo-skill-writer of DynamoDS/Dynamo.

Open the folder on GitHubat commit 55647ad

Compare with similar skills

Dynamo Skill Writer 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.

Dynamo Skill Writer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Dynamo Skill Writer this skillDynamoDS/Dynamo2k—~2.2kAutomated safety check: PassApache-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Diagnosing Superpowers Sessionsobra/superpowers296k3 repos~1.7kAutomated safety check: PassMIT
GitHub Deep Researchbytedance/deer-flow83k5 repos~1.3kAutomated safety check: PassMIT
Greplooponyx-dot-app/onyx32k4 repos~3.3kAutomated safety check: PassMIT
Update V8 Versionopeninterpreter/openinterpreter69k2 repos~845Automated safety check: PassApache-2.0

Similar skills

  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Investigates a session where Superpowers went wrong, reads the transcripts on disk and produces an evidence-cited report, optionally prepared as a bug report for the maintainers.

    296k GitHub starsUsed in 3 repos~1.7k tokens
    Agent WorkflowsAuto-check passed
  • GitHub Deep Research

    bytedance/deer-flow

    Researches a GitHub repository over four rounds using the GitHub API and web search, then writes a structured markdown report with timeline, metrics and Mermaid diagrams.

    83k GitHub starsUsed in 5 repos~1.3k tokens
    Research & ScienceAuto-check passed
  • Greploop

    onyx-dot-app/onyx

    Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed
  • Update V8 Version

    openinterpreter/openinterpreter

    Bumps the pinned v8 and rusty_v8 versions in Codex, validates the release-candidate path with the v8-canary check, and traces failures to upstream build changes.

    69k GitHub starsUsed in 2 repos~845 tokens
    DevOps & CloudAuto-check passed
  • Last30days

    mvanhorn/last30days-skill

    Research what people actually say about any topic in the last 30 days.

    64k GitHub stars~7.8k tokensUpdated today
    Research & ScienceAuto-check: notes

More from DynamoDS/Dynamo

All 13 skills in this repo
  • Dynamo Jira Ticket

    DynamoDS/Dynamo

    Create structured Jira tickets for Dynamo from bug reports, failing tests, or feature requests.

    2k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Dynamo Dotnet Expert

    DynamoDS/Dynamo

    Write and review C/.NET code in Dynamo following Dynamo coding standards, modern C patterns, and repo conventions.

    2k GitHub stars~922 tokensUpdated today
    Auto-check passed
  • Dynamo PR Description

    DynamoDS/Dynamo

    Generate PR descriptions for Dynamo that align with the team template section names and order.

    2k GitHub stars~880 tokensUpdated today
    Auto-check passed
  • Dynamo Unit Testing

    DynamoDS/Dynamo

    Write comprehensive NUnit tests for the Dynamo codebase following Dynamo testing patterns, conventions, and architectural constraints.

    2k GitHub stars~622 tokensUpdated today
    Auto-check passed
  • Dynamo UX Designer

    DynamoDS/Dynamo

    Plans UX flows, maps product needs to Weave Design System components, and generates structured Figma mockups using Autodesk Weave libraries.

    2k GitHub stars~3.1k tokensUpdated today
    Auto-check passed
  • Scaffolds a new Dynamo package repo that hosts a view extension with a WebView2-embedded React frontend.

    2k GitHub stars~991 tokensUpdated today
    Auto-check passed

Works with

Questions about Dynamo Skill Writer

What does Dynamo Skill Writer do?

Author and maintain Dynamo agent skills. An agent skill from DynamoDS/Dynamo. Dynamo Skill Writer is an agent skill from DynamoDS/Dynamo. Author and maintain Dynamo agent skills.

When should I use Dynamo Skill Writer?

Dynamo Skill Writer fits situations like: creating a new skill in .claude/skills/; updating an existing skill; fixing drift between canonical skills and Copilot/Cursor/Claude wrappers; asking how to write effective skill instructions for the Dynamo repo.

How do I install Dynamo Skill Writer in Claude Code?

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

How do I install Dynamo Skill Writer in Codex?

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

Can I use Dynamo Skill Writer 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 DynamoDS/Dynamo --skill dynamo-skill-writer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dynamo-skill-writer, .gemini/skills/dynamo-skill-writer, .github/skills/dynamo-skill-writer and .opencode/skills/dynamo-skill-writer in your project.

What does Dynamo Skill Writer need to run?

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

Does Dynamo Skill Writer access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Dynamo Skill Writer 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 Dynamo Skill Writer use?

Dynamo Skill Writer is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Dynamo Skill Writer use?

About 2.2k tokens (SKILL.md is roughly 8.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 Dynamo Skill Writer?

Skills that share tags, products or a category with Dynamo Skill Writer: PR Babysitter (openinterpreter/openinterpreter, 69k stars), Diagnosing Superpowers Sessions (obra/superpowers, 296k stars), GitHub Deep Research (bytedance/deer-flow, 83k stars) and Greploop (onyx-dot-app/onyx, 32k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Dynamo Skill Writer?

DynamoDS (a GitHub organization) maintains it in DynamoDS/Dynamo, which has 2,033 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 8, 2026.

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