Skip to content

Add dynamo-content-designer as first shared organization custom agent#1

Merged
avidit merged 6 commits into
masterfrom
copilot/add-dynamo-content-designer-agent
Apr 23, 2026
Merged

Add dynamo-content-designer as first shared organization custom agent#1
avidit merged 6 commits into
masterfrom
copilot/add-dynamo-content-designer-agent

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 23, 2026

  • Inspect existing repo structure and upstream skill directory
  • Fetch all skill files from DynamoDS/Dynamo
  • Create .agents/skills/dynamo-content-designer/SKILL.md
  • Create .agents/skills/dynamo-content-designer/assets/ (7 asset files: blog-posts, feature-documentation, node-descriptions, node-errors-warnings, release-notes, tutorials-user-guides, ui-content)
  • Update agent wrapper canonical-source reference to local path
  • Validate (CodeQL clean; one upstream phrasing note in node-descriptions.md left as-is — verbatim from upstream)
Original prompt

I want to use this repo as collection of shared custom agents for the organization. docs https://docs.github.com/en/copilot/how-tos/administer-copilot/manage-for-organization/prepare-for-custom-agents

Can you bring in dynamo-content-designer agent to begin with ?https://github.com/DynamoDS/Dynamo/blob/master/.github/agents/dynamo-content-designer.agent.md

Copilot AI changed the title [WIP] Add dynamo content designer agent to shared custom agents Add dynamo-content-designer as first shared organization custom agent Apr 23, 2026
Copilot AI requested a review from avidit April 23, 2026 00:37
@avidit avidit marked this pull request as ready for review April 23, 2026 00:55
@avidit avidit requested a review from Copilot April 23, 2026 00:55
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds the first shared organization custom agent, dynamo-content-designer, along with its canonical skill definition and supporting writing guideline assets.

Changes:

  • Added a GitHub custom agent wrapper at .github/agents/dynamo-content-designer.agent.md.
  • Added canonical skill definition at .agents/skills/dynamo-content-designer/SKILL.md with references to content-type assets.
  • Added 7 supporting asset documents (UI content, release notes, node docs/errors, feature docs, blog posts, tutorials/user guides).

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
.github/agents/dynamo-content-designer.agent.md Adds the organization agent entrypoint wrapper referencing the canonical skill.
.agents/skills/dynamo-content-designer/SKILL.md Defines the Dynamo Content Designer skill and links to content-type reference assets.
.agents/skills/dynamo-content-designer/assets/ui-content.md UI content writing guidelines.
.agents/skills/dynamo-content-designer/assets/tutorials-user-guides.md Templates for tutorials and user guides.
.agents/skills/dynamo-content-designer/assets/release-notes.md Release note guidelines (plus embedded node description guidance).
.agents/skills/dynamo-content-designer/assets/node-errors-warnings.md Guidance for node warning/error message writing.
.agents/skills/dynamo-content-designer/assets/node-descriptions.md Guidance for node descriptions and extended node help.
.agents/skills/dynamo-content-designer/assets/feature-documentation.md Feature documentation style/tone guidance.
.agents/skills/dynamo-content-designer/assets/blog-posts.md Blog post structure and tone guidance.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +116 to +117
* **Formatting:** Don't format node names, inputs, and outputs as regular text. Add single backticks 'like this' around node names to format them as code.
**Bad example:** List.TrueForAll returns a Boolean value showing if the condition in the QueryFunction input is True for all items on the list.
Copy link

Copilot AI Apr 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This instruction uses apostrophes in the example ('like this') while referring to backticks. For correctness and clarity, show the example using real backticks (like this) (escaped appropriately) so readers don’t copy the wrong character.

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot apply changes based on this feedback

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in 271fce5 — replaced all apostrophe-as-backtick proxies with real backticks throughout the Do's and Don'ts sections (lines 97–123), including the inline `like this` example and all node name examples.

Comment on lines +16 to +43
Node descriptions briefly describe a node's function and output. In Dynamo, they appear in two places:

- In the node tooltip
- In the documentation browser

Follow these guidelines to ensure consistency and help save time when writing or updating node descriptions.

#### Overview

Descriptions should be one to two sentences. If more info is needed, it can be included under In Depth in the Documentation Browser.

Sentence case (capitalize the first word of a sentence and any proper nouns). No period at the end if the description is one sentence. Use a period at the end if the description is two or more sentences.

Language should be as clear and simple as possible. Define acronyms at first mention unless they are known even to non-expert users.

Always prioritize clarity, even if that means deviating from these guidelines.

#### Guidelines

| Do's | Don'ts |
|------|--------|
| Start the description with a third-person verb. Example: "Determines if one geometry object intersects with another" | Don't start with a second-person verb or with any noun. Bad example: "Determine if one geometry object intersects with another" |
| Use "Returns," "Creates," or another descriptive verb instead of "Gets." Example: "Returns a Nurbs representation of a surface" | Don't use "Get" or "Gets." It's less specific and has several possible translations. Bad example: "Gets a Nurbs representation of the surface" |
| When referring to inputs, use "given" or "input" instead of "specified." Example: "Deletes the given file." You may use "specified" when not directly referring to an input. Example: "Writes text content to a file specified by the given path" | Don't use "specified" when directly referring to inputs. Bad example: "Deletes the specified file" |
| Use "a" or "an" when first referring to an input. Use "the given" or "the input" for clarity. Example: "Sweeps a curve along the path curve" | Don't use "this" when first referring to an input. Bad example: "Sweeps this curve along the path curve" |
| Use "a" or "an" when first referring to an output. Use "the" only with "input" or "given." Example: "Copies a file. Copies the given file" | Don't use "the" on its own for outputs. Bad example: "Copies the file" |
| Capitalize the first word of a sentence and proper nouns. Example: "Returns the intersection of two BoundingBoxes" | Don't capitalize common geometry objects. Bad example: "Scales non-uniformly around the given Plane" |
| Capitalize Boolean, True, and False for output. Example: "Returns True if the two values are different" | Don't lowercase Boolean, True, or False. Bad example: "Returns true if the two values are different" |
Copy link

Copilot AI Apr 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

release-notes.md includes a full "Node descriptions" guideline section, but the same guidance also exists (and is expanded) in assets/node-descriptions.md. Having two sources for the same rules increases drift risk; consider removing the duplicated section here and linking to the dedicated node-descriptions reference instead.

Suggested change
Node descriptions briefly describe a node's function and output. In Dynamo, they appear in two places:
- In the node tooltip
- In the documentation browser
Follow these guidelines to ensure consistency and help save time when writing or updating node descriptions.
#### Overview
Descriptions should be one to two sentences. If more info is needed, it can be included under In Depth in the Documentation Browser.
Sentence case (capitalize the first word of a sentence and any proper nouns). No period at the end if the description is one sentence. Use a period at the end if the description is two or more sentences.
Language should be as clear and simple as possible. Define acronyms at first mention unless they are known even to non-expert users.
Always prioritize clarity, even if that means deviating from these guidelines.
#### Guidelines
| Do's | Don'ts |
|------|--------|
| Start the description with a third-person verb. Example: "Determines if one geometry object intersects with another" | Don't start with a second-person verb or with any noun. Bad example: "Determine if one geometry object intersects with another" |
| Use "Returns," "Creates," or another descriptive verb instead of "Gets." Example: "Returns a Nurbs representation of a surface" | Don't use "Get" or "Gets." It's less specific and has several possible translations. Bad example: "Gets a Nurbs representation of the surface" |
| When referring to inputs, use "given" or "input" instead of "specified." Example: "Deletes the given file." You may use "specified" when not directly referring to an input. Example: "Writes text content to a file specified by the given path" | Don't use "specified" when directly referring to inputs. Bad example: "Deletes the specified file" |
| Use "a" or "an" when first referring to an input. Use "the given" or "the input" for clarity. Example: "Sweeps a curve along the path curve" | Don't use "this" when first referring to an input. Bad example: "Sweeps this curve along the path curve" |
| Use "a" or "an" when first referring to an output. Use "the" only with "input" or "given." Example: "Copies a file. Copies the given file" | Don't use "the" on its own for outputs. Bad example: "Copies the file" |
| Capitalize the first word of a sentence and proper nouns. Example: "Returns the intersection of two BoundingBoxes" | Don't capitalize common geometry objects. Bad example: "Scales non-uniformly around the given Plane" |
| Capitalize Boolean, True, and False for output. Example: "Returns True if the two values are different" | Don't lowercase Boolean, True, or False. Bad example: "Returns true if the two values are different" |
For node description guidance, refer to the dedicated reference in `assets/node-descriptions.md`.

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot remove the Node descriptions section from release-notes.md

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in e44d19f — removed the full "Node descriptions" section from release-notes.md and replaced it with a single line pointing to assets/node-descriptions.md.

* if they wish, use it in their graph without running into issues resulting from insufficient information
* understand any limitations involving the node or its inputs/outputs, as well as any options they have regarding its usage, such as wiring a port vs. leaving it as default

However, most users have no need for the advanced technical details applicable to using the node in any other uncommon or immediately behind the nodes operational or graph. Unless there's a compelling reason to include information at this expert level, omit it.
Copy link

Copilot AI Apr 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sentence is grammatically broken ("immediately behind the nodes operational or graph") and is hard to understand. Please rewrite it (e.g., clarify that most users don’t need advanced details unless they’re relevant to uncommon scenarios or the node’s operational context).

Suggested change
However, most users have no need for the advanced technical details applicable to using the node in any other uncommon or immediately behind the nodes operational or graph. Unless there's a compelling reason to include information at this expert level, omit it.
However, most users do not need advanced technical details unless they are relevant to uncommon scenarios or to the node's operational context in a graph. Unless there's a compelling reason to include information at this expert level, omit it.

Copilot uses AI. Check for mistakes.
Comment on lines +97 to +101
**Example:** 'List.Flatten' returns a one-dimensional list (a list with a single level) from a multi-dimensional list (a list with at least one nested list).

* **Formatting:** To minimize confusion for translators, format node names, inputs, and outputs as code by using Markdown backticks ('). NOTE: These backticks aren't visible to the user in Dynamo, they are only used in this example in this document.
**Example:** 'List.TrueForAll' returns a Boolean value showing if the condition in the 'QueryFunction' input is True for all items on the list.

Copy link

Copilot AI Apr 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This section says to use Markdown backticks but shows an apostrophe (') instead. That’s ambiguous and may lead to authors using the wrong character. Please update the text and examples to use actual backticks (`) (escaping them in Markdown if needed).

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot apply changes based on this feedback

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was already addressed in 271fce5 — all apostrophe-as-backtick proxies in the Do's and Don'ts sections were replaced with real backticks, including the `like this` example and all node name examples.

… reference to dedicated file

Agent-Logs-Url: https://github.com/DynamoDS/.github-private/sessions/2db186d3-8284-4aea-8ec9-763b58f20730

Co-authored-by: avidit <1406153+avidit@users.noreply.github.com>
@avidit avidit merged commit 52b2093 into master Apr 23, 2026
10 checks passed
@avidit avidit deleted the copilot/add-dynamo-content-designer-agent branch April 23, 2026 01:07
@avidit avidit restored the copilot/add-dynamo-content-designer-agent branch April 23, 2026 01:09
@avidit avidit deleted the copilot/add-dynamo-content-designer-agent branch April 23, 2026 01:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants