Skip to content

chore: add Dynamo recipe bring-up skills#9782

Merged
dagil-nvidia merged 8 commits into
mainfrom
codex/dynamo-agent-skills
May 27, 2026
Merged

chore: add Dynamo recipe bring-up skills#9782
dagil-nvidia merged 8 commits into
mainfrom
codex/dynamo-agent-skills

Conversation

@athreesh
Copy link
Copy Markdown
Contributor

@athreesh athreesh commented May 20, 2026

Summary

Adds four customer-facing Dynamo agent skills for the Computex bring-up path, and reorganizes the in-repo skill catalog so end-user skills are cleanly separated from contributor-only ones.

New customer skills under .agents/skills/:

  • dynamo-recipe-runner — select, validate, patch, deploy, and smoke-test existing recipes.
  • dynamo-router-starter — round-robin / KV router setup plus endpoint smoke tests.
  • dynamo-troubleshoot — read-only Kubernetes debug-bundle collection and common-failure classification.
  • dynamo-interconnect-check — read-only NIXL/UCX/NCCL transport validation after a disagg or multi-node recipe comes up, so disagg numbers reflect the real fabric.

Each skill ships a SKILL.md, a references/ doc, a script under scripts/, and an evals/evals.json case set.

Catalog reorganization:

  • .agents/skills/ is the canonical location for customer skills.
  • Contributor-only skills (debug-session, dep-create, dep-status, dep-update, dynamo-docs, gh-issue-bug, graham-code-review, pr-monitor, tool-parser-generator) moved to .agents/contributor-skills/ so they no longer appear in the public catalog.
  • A repo-root skills symlink → .agents/skills keeps existing references and tooling working.
  • .github/filters.yaml updated so the root skills symlink is covered by the docs filter.
  • CC-BY-4.0 SPDX headers added on skill docs.

Also addresses earlier review comments on recipe discovery, GPU counting, debug-bundle coverage, and portable script references.

Validation

  • python3 -m py_compile .agents/skills/dynamo-recipe-runner/scripts/recipe_tool.py .agents/skills/dynamo-router-starter/scripts/check_router_health.py .agents/skills/dynamo-troubleshoot/scripts/collect_dynamo_debug_bundle.py .agents/skills/dynamo-interconnect-check/scripts/check_interconnect.py
  • python3 -m isort --check-only .agents/skills/dynamo-recipe-runner/scripts/recipe_tool.py .agents/skills/dynamo-router-starter/scripts/check_router_health.py .agents/skills/dynamo-troubleshoot/scripts/collect_dynamo_debug_bundle.py .agents/skills/dynamo-interconnect-check/scripts/check_interconnect.py
  • python3 -m black --check .agents/skills/dynamo-recipe-runner/scripts/recipe_tool.py .agents/skills/dynamo-router-starter/scripts/check_router_health.py .agents/skills/dynamo-troubleshoot/scripts/collect_dynamo_debug_bundle.py .agents/skills/dynamo-interconnect-check/scripts/check_interconnect.py
  • python3 .agents/skills/dynamo-recipe-runner/scripts/recipe_tool.py list --query nemotron --framework sglang --format table
  • python3 .agents/skills/dynamo-recipe-runner/scripts/recipe_tool.py validate recipes/nemotron-3-super-fp8/sglang/agg
  • python3 .agents/skills/dynamo-router-starter/scripts/check_router_health.py --base-url http://127.0.0.1:9 --retries 1
  • python3 .agents/skills/dynamo-interconnect-check/scripts/check_interconnect.py env recipes/nemotron-3-super-fp8/sglang/agg

<!-- This is an auto-generated comment: release notes by coderabbit.ai -->

Summary by CodeRabbit

  • New Features

    • Added dynamo-recipe-runner skill for selecting, validating, and deploying Kubernetes recipes.
    • Added dynamo-router-starter skill for configuring router modes and performing health checks.
    • Added dynamo-troubleshoot skill with troubleshooting workflows and debug bundle collection.
    • Added dynamo-interconnect-check skill for post-deploy NIXL/UCX/NCCL transport validation.
  • Documentation

    • Added comprehensive workflow guides and reference documentation for new skills.
  • Chores

    • Added SPDX license headers to skill documentation files.
    • Moved contributor-only skills under .agents/contributor-skills/; root skills symlink points to .agents/skills.
    • Added evals/evals.json case sets for the four customer skills.

<!-- review_stack_entry_start -->

[!Review Change Stack](https://app.coderabbit.ai/change-stack/ai-dynamo/dynamo/pull/9782?utm_source=github_walkthrough&utm_medium=github&utm_campaign=change_stack)

<!-- review_stack_entry_end -->

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot Bot commented May 20, 2026

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@github-actions github-actions Bot added the documentation Improvements or additions to documentation label May 20, 2026
@athreesh athreesh force-pushed the codex/dynamo-agent-skills branch from 95556a6 to 4121e92 Compare May 20, 2026 03:32
@athreesh athreesh changed the title [codex] Add Dynamo agent skills for recipe bring-up chore(agents): add Dynamo recipe bring-up skills May 20, 2026
@github-actions github-actions Bot added the chore label May 20, 2026
@athreesh athreesh force-pushed the codex/dynamo-agent-skills branch 2 times, most recently from 7b6e86b to 89932ce Compare May 20, 2026 03:38
Copy link
Copy Markdown
Contributor

@BenHamm BenHamm left a comment

Choose a reason for hiding this comment

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

Review by Claude, an agent acting on Ben Hamm's behalf — focused purely on the skill/code substance below.

Nice work, @athreesh — the three skills are well-shaped (operational, progressive-disclosure, read-only-first, and careful never to print HF tokens). Substantive feedback, roughly in priority order:

Correctness bugs

  1. recipe_tool.pyrepo_root() hard-codes the skill layout as a root marker. It only recognizes the repo root when both recipes/ and .agents/skills/ exist (line 34). That couples the recipe tool to where the skills happen to live today — move/rename/symlink that directory and recipe discovery silently breaks with "Could not find Dynamo repo root." Detect on something stable instead, e.g. recipes/ + .git/.

  2. recipe_tool.pygpu_count_hint() double-counts GPUs. It sums every nvidia.com/gpu: match in the manifest (lines 46–50, 219–224), but a container normally carries the same count under both resources.requests and resources.limits. So a 1-GPU worker reports 2, an 8-GPU node reports 16. Either de-dupe per container or only read limits.

  3. collect_dynamo_debug_bundle.py — misses initContainers. container_names() reads only spec.containers (line 86). For Dynamo, model-download / cache-warm steps frequently run as init containers, and those failures are one of the most common things this skill exists to debug — their logs won't be in the bundle.

  4. collect_dynamo_debug_bundle.py — no --previous logs. A CrashLoopBackOff pod usually has empty current logs; the actual stack trace is in kubectl logs --previous. For a troubleshooting bundle, grab both.

Portability

  1. Hard-coded .agents/skills/... script paths in the SKILL.md bodies. Each skill invokes its scripts by full repo path (e.g. python3 .agents/skills/dynamo-recipe-runner/scripts/recipe_tool.py). Reference them relative to the skill directory (scripts/recipe_tool.py) so they survive being installed/relocated independently of the repo tree.

  2. Cross-skill calls assume co-location. dynamo-recipe-runner's smoke test shells out to dynamo-router-starter's check_router_health.py by path, and both point users at dynamo-troubleshoot. Since these can be installed individually, one skill can't assume another's files are on disk. Make it a soft instruction ("if dynamo-router-starter is installed, use its health check") or inline a tiny check per skill.

Triggering / smaller items

  1. Description overlap across the three skills. All three mention "smoke test / endpoint health," which invites the agent to pick the wrong one. Tighten each description so the boundaries are unambiguous (recipe selection+deploy vs. router mode vs. failure diagnosis).

  2. Minor: dynamo-troubleshoot's default --outdir is timestamped (/tmp/dynamo-debug-<ts>) but the SKILL.md example passes a fixed /tmp/dynamo-debug — align them so copy-pasted commands and follow-up references match. And recipe_tool.py list --framework only accepts the known set, so recipes discovered with framework="unknown" (unrecognized dir) can't be listed by filter — worth a fallback.

Keep as-is: the disciplined "don't claim throughput from a single chat request" caution in dynamo-router-starter, the read-only debug flow, and the <500-line SKILL.md + references/ split.

Happy to push fixes for 1–6 as a follow-up commit if that's useful.

@athreesh athreesh force-pushed the codex/dynamo-agent-skills branch 2 times, most recently from cd4a023 to d35f331 Compare May 22, 2026 08:45
@athreesh athreesh changed the title chore(agents): add Dynamo recipe bring-up skills docs: add Dynamo recipe bring-up skills May 22, 2026
@github-actions github-actions Bot added docs and removed chore labels May 22, 2026
@athreesh athreesh changed the title docs: add Dynamo recipe bring-up skills chore: add Dynamo recipe bring-up skills May 22, 2026
@github-actions github-actions Bot added chore and removed docs labels May 22, 2026
@athreesh athreesh marked this pull request as ready for review May 22, 2026 09:20
@athreesh athreesh requested review from a team as code owners May 22, 2026 09:20
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 22, 2026

Walkthrough

This PR introduces a comprehensive Dynamo operational skills suite comprising three new skills (recipe runner, router starter, troubleshooting) with supporting documentation, CLI tools, and infrastructure. It updates skill discovery references and CI configuration while adding licensing headers across the skill ecosystem.

Changes

Dynamo Operational Skills Suite

Layer / File(s) Summary
Skills infrastructure and documentation setup
.agents/skills, .github/filters.yaml, docs/README.md, docs/digest/agentic-inference/agentic-inference.md
Establishes ../skills directory reference, updates CI docs filter to include skills/**/*.py, and converts existing documentation links from GitHub blob/main URLs to local relative paths for dynamo-docs and tool-parser-generator skills.
Dynamo recipe runner skill
skills/dynamo-recipe-runner/SKILL.md, skills/dynamo-recipe-runner/references/k8s-recipe-workflow.md, skills/dynamo-recipe-runner/scripts/recipe_tool.py
Provides end-to-end workflow for selecting and deploying Dynamo Kubernetes recipes. CLI tool scans for deploy.yaml files, infers model/framework/mode metadata, computes GPU hints, and validates recipes against deployment constraints including missing images, placeholders, and secrets.
Dynamo router starter skill
skills/dynamo-router-starter/SKILL.md, skills/dynamo-router-starter/references/router-modes.md, skills/dynamo-router-starter/scripts/check_router_health.py
Guides router mode configuration and KV routing setup with smoke test validation. Health-check script polls /v1/models with retries, selects a model, optionally tests /v1/chat/completions, and returns structured JSON results with distinct exit codes.
Dynamo troubleshooting skill
skills/dynamo-troubleshoot/SKILL.md, skills/dynamo-troubleshoot/references/failure-decision-tree.md, skills/dynamo-troubleshoot/scripts/collect_dynamo_debug_bundle.py
Introduces systematic failure diagnosis covering cluster discovery, secrets, storage, images, scheduling, operators, and routing. Debug bundle collector safely gathers kubectl state and container logs (current and previous) without including secrets.
SPDX licensing headers for existing skills
skills/debug-session/SKILL.md, skills/dep-create/SKILL.md, skills/dep-status/SKILL.md, skills/dep-update/SKILL.md, skills/dynamo-docs/SKILL.md, skills/gh-issue-bug/SKILL.md, skills/graham-code-review/SKILL.md, skills/pr-monitor/SKILL.md, skills/tool-parser-generator/README.md, skills/tool-parser-generator/SKILL.md, skills/tool-parser-generator/references/integration-guide.md, skills/tool-parser-generator/references/parser-patterns.md
Adds CC-BY-4.0 SPDX copyright and license identifier comment blocks to skill documentation files.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title 'chore: add Dynamo recipe bring-up skills' accurately reflects the main change: introducing three new customer-facing Dynamo agent skills (dynamo-recipe-runner, dynamo-router-starter, and dynamo-troubleshoot) for the Computex bring-up path.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description check ✅ Passed The pull request description is comprehensive and well-structured, covering overview, detailed changes, skills organization, catalog reorganization, validation steps, and addressing earlier review comments.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 5

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/digest/agentic-inference/agentic-inference.md`:
- Line 54: Update the markdown reference to the local skill path
"tool-call-parser-generator/SKILL.md" to also include its public GitHub URL so
external readers can follow the same link; edit the text that currently points
to "../../../skills/tool-parser-generator/SKILL.md" and append or replace with
the corresponding GitHub repository file URL for the tool-call-parser-generator
SKILL (the public GitHub counterpart of SKILL.md) so both local and external
links are available.

In `@docs/README.md`:
- Line 57: Update the markdown table row that currently links to the local skill
file (the entry containing "../skills/dynamo-docs/SKILL.md") to also include the
corresponding GitHub URL for that file so external readers can follow the
reference; keep the existing relative link and add the GitHub link (pointing to
the repo path for skills/dynamo-docs/SKILL.md) next to it in the same row, e.g.,
provide both links separated clearly (parentheses or "—") while preserving the
description text "Add, update, move, or remove a docs page".

In `@skills/dynamo-router-starter/references/router-modes.md`:
- Line 32: The table row for "Set queue policy" currently contains unescaped
pipe characters in the value `DYN_ROUTER_QUEUE_POLICY=fcfs|wspt|lcfs` which
breaks the Markdown table; update the cell so pipes are escaped or the entire
value is wrapped as inline code/HTML code element (e.g., escape each '|' or wrap
the value in a code tag) for the `DYN_ROUTER_QUEUE_POLICY` entry in
router-modes.md so the row remains a two-column table.

In `@skills/dynamo-router-starter/scripts/check_router_health.py`:
- Around line 65-72: Validate and restrict args.base_url to only http or https
schemes before using it to build URLs for request_json; parse args.base_url (the
base_url variable) with urllib.parse.urlparse, ensure parsed.scheme is exactly
"http" or "https", and if not, exit or raise a clear error before any call to
request_json (which ultimately uses urllib.request.urlopen); update the argument
handling where base_url = args.base_url.rstrip("/") to perform this check and
reject or normalize invalid schemes.

In `@skills/dynamo-troubleshoot/scripts/collect_dynamo_debug_bundle.py`:
- Around line 107-114: The default outdir creation using a predictable path
should be replaced so that when the CLI flag for outdir is not provided we
generate a secure temporary directory; update the argument parsing logic around
parser.add_argument("--outdir", ...) and the subsequent outdir assignment (where
outdir = Path(args.outdir)...) to: if args.outdir is None or empty, call
tempfile.mkdtemp(prefix="dynamo-debug-") to create a secure temp dir, then set
outdir = Path(that_tempdir).expanduser().resolve() and mkdir as currently done;
ensure imports include tempfile and that behavior remains unchanged when a user
passes --outdir.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 75af0db0-1a50-4b42-8497-0c014a193205

📥 Commits

Reviewing files that changed from the base of the PR and between 9ff0ceb and d35f331.

📒 Files selected for processing (25)
  • .agents/skills
  • .github/filters.yaml
  • docs/README.md
  • docs/digest/agentic-inference/agentic-inference.md
  • skills/debug-session/SKILL.md
  • skills/dep-create/SKILL.md
  • skills/dep-status/SKILL.md
  • skills/dep-update/SKILL.md
  • skills/dynamo-docs/SKILL.md
  • skills/dynamo-recipe-runner/SKILL.md
  • skills/dynamo-recipe-runner/references/k8s-recipe-workflow.md
  • skills/dynamo-recipe-runner/scripts/recipe_tool.py
  • skills/dynamo-router-starter/SKILL.md
  • skills/dynamo-router-starter/references/router-modes.md
  • skills/dynamo-router-starter/scripts/check_router_health.py
  • skills/dynamo-troubleshoot/SKILL.md
  • skills/dynamo-troubleshoot/references/failure-decision-tree.md
  • skills/dynamo-troubleshoot/scripts/collect_dynamo_debug_bundle.py
  • skills/gh-issue-bug/SKILL.md
  • skills/graham-code-review/SKILL.md
  • skills/pr-monitor/SKILL.md
  • skills/tool-parser-generator/README.md
  • skills/tool-parser-generator/SKILL.md
  • skills/tool-parser-generator/references/integration-guide.md
  • skills/tool-parser-generator/references/parser-patterns.md

Comment thread docs/digest/agentic-inference/agentic-inference.md Outdated
Comment thread docs/README.md Outdated
Comment thread skills/dynamo-router-starter/references/router-modes.md Outdated
Comment thread .agents/skills/dynamo-router-starter/scripts/check_router_health.py
Comment thread skills/dynamo-troubleshoot/scripts/collect_dynamo_debug_bundle.py Outdated
@Aphoh
Copy link
Copy Markdown
Contributor

Aphoh commented May 22, 2026

I think it'd also be good to consider other things that they may need: mainly NIXL/NCCL env variables, IB capabilities, etc. It'd be good to have a tester which validates that nixl can talk over rdma/nvlink as well, as you may be able to get the deployment up with these skills, but disagg won't be correct.

Comment thread skills/dynamo-recipe-runner/scripts/recipe_tool.py Outdated
Comment thread .agents/skills/dynamo-recipe-runner/scripts/recipe_tool.py
Comment thread skills/dynamo-router-starter/scripts/check_router_health.py Outdated
@athreesh
Copy link
Copy Markdown
Contributor Author

@Aphoh good call — a deployment can come up while disagg is silently wrong if NIXL can't reach a peer over RDMA/NVLink. Added a new dynamo-interconnect-check skill (commit 0598f81) to cover exactly this:

  • env — audits the NIXL/UCX/NCCL transport vars on a recipe (UCX_TLS, UCX_NET_DEVICES, UCX_IB_GPU_DIRECT_RDMA, NCCL_IB_HCA, NCCL_SOCKET_IFNAME, NCCL_IB_DISABLE, …) and flags disagg-critical ones that are missing.
  • node — read-only IB capability checks: /dev/infiniband + ibv_devinfo, ibstat link state, GPUDirect RDMA (nvidia_peermem), GDRCopy, and NVLink in nvidia-smi topo -m.
  • nixl — best-effort NIXL reachability probe between a prefill and decode pod, with the exact next command when the test tooling is present.

The env catalog + IB checklist live in references/interconnect-env-vars.md. The full cross-pod RDMA/NVLink transfer test needs two scheduled GPU pods on the fabric, so that path surfaces the command to run rather than asserting a pass. Let me know if there are specific env vars or capabilities you'd want added to the catalog.

@BenHamm
Copy link
Copy Markdown
Contributor

BenHamm commented May 26, 2026

Note from Claude (acting on Ben's behalf)

@athreesh two quick things before this merges:

1. Heads-up — I pushed a commit to this branch (chore(skills): move contributor-only skills out of the public catalog path). It git mvs the nine contributor/internal skills (debug-session, dep-create/status/update, dynamo-docs, gh-issue-bug, graham-code-review, pr-monitor, tool-parser-generator) to .agents/contributor-skills/, leaving only the four customer-facing skills under the skills/.agents/skills symlink that the public nvidia/skills catalog mirrors from. The nine are still available to local agents; they just won't publish externally. Shout if you'd rather any of them ship publicly.

2. You (as author) need to post the OSRB IP-review attestation before merge. This is the one step that isn't auto-enforced — it has to come from you. SPDX headers are already present (Q2 ✓); for Q3 just confirm the listed terms are public. Please reply affirming:

IP Review self-attestation — skills/dynamo-* (PR #9782). As author, for every file (SKILL.md, references, scripts):

  • No patentable subject matter without a patent filed
  • Correct copyright headers present
  • Reveals no unannounced features/products — incl. tokenspeed, the device-aware-weighted router mode, and all example model/recipe names are already public (guardwords-checked)
  • Reveals no NVIDIA-proprietary algorithms meant to stay confidential
  • Gives competitors no significant competitive advantage
  • Imports no non-NVIDIA-authored 3rd-party code without OSRB guidance

Once you've affirmed, this is clear to merge — the remaining steps (NVCARPS signing + components.d/dynamo.yml registration) are on Ben.

Copy link
Copy Markdown
Contributor

@BenHamm BenHamm left a comment

Choose a reason for hiding this comment

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

Approving. CI is green on the rebased HEAD (snapshot/operator/pre-merge all pass — the earlier snapshot red was an unrelated flaky Go test cleared by updating onto main). Customer skill set curated to the four published skills, evals/evals.json added and trigger-validated (24/24), CodeRabbit items addressed, and IP/OSRB clear. Good to merge for the Computex signing path.

(Reviewed with Claude acting on Ben Hamm's behalf.)

@BenHamm BenHamm requested a review from dagil-nvidia May 26, 2026 22:33
athreesh and others added 7 commits May 26, 2026 16:28
Signed-off-by: Anish Maddipoti <amaddipoti@nvidia.com>
- recipe_tool: match the DynamoGraphDeployment 'gpu: N' shorthand (not just
  nvidia.com/gpu) so GPU hints populate for real recipes
- recipe_tool: include the sibling model-level model-cache manifests when
  validating a recipe directory
- check_router_health: return structured output for a 200 with a non-JSON
  body instead of crashing; restrict requests to http/https schemes
- collect_dynamo_debug_bundle: redact token/secret/password values and HF
  tokens before writing; default output to a private mkdtemp directory
- router-modes: escape pipe chars in the queue-policy table cell
- docs: restore absolute GitHub URLs for the moved skill links

Signed-off-by: Anish Maddipoti <amaddipoti@nvidia.com>
- revert docs skill links to relative paths; absolute blob/main URLs 404 in
  the pre-merge lychee check since the files only exist on this branch
- reflow model-cache file concatenation to satisfy black

Signed-off-by: Anish Maddipoti <amaddipoti@nvidia.com>
- New dynamo-interconnect-check skill validates the NIXL/UCX/NCCL transport
  that disaggregated serving depends on. A deployment can pass an endpoint
  smoke test while disagg is silently wrong if NIXL cannot reach a peer over
  RDMA/NVLink; the skill audits transport env vars, probes RDMA/GPUDirect/
  NVLink capabilities read-only, and runs a best-effort NIXL reachability
  check. Addresses review feedback from @Aphoh.
- Move all skills back to .agents/skills as the real directory (matching the
  upstream agent-skills convention) and make root skills/ a symlink so the
  Computex packaging path still resolves.

Signed-off-by: Anish Maddipoti <amaddipoti@nvidia.com>
The new root skills -> .agents/skills symlink is a tracked file that matched
no CI filter, failing the changed-files coverage guard. Add it to the docs
filter.

Signed-off-by: Anish Maddipoti <amaddipoti@nvidia.com>
… path

The skills/ symlink (-> .agents/skills) is what the nvidia/skills catalog
sparse-checks out. Keep only the four customer-facing Dynamo skills there
(dynamo-recipe-runner, dynamo-router-starter, dynamo-troubleshoot,
dynamo-interconnect-check); move the nine contributor/internal skills to
.agents/contributor-skills/ so they remain available to local agents but are
NOT mirrored to the public catalog (per the Skills Publishing Onboarding Guide).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Signed-off-by: Ben Hamm <bhamm@nvidia.com>
Required-in-MR test datasets (per NVCARPS skills standard) for
dynamo-recipe-runner, dynamo-router-starter, dynamo-troubleshoot, and
dynamo-interconnect-check. Each has positive cases plus cross-skill negative
cases (a sibling skill's prompt, where this skill must stay silent) to exercise
trigger/discoverability boundaries.

Validated with a blind trigger-routing pass over all 24 cases (descriptions
only): 24/24 routed to the expected skill, including all 12 cross-skill
negatives. Functional/output-quality (Tier-2) evals require a GPU cluster and
are deferred post-Computex.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Signed-off-by: Ben Hamm <bhamm@nvidia.com>
@dagil-nvidia dagil-nvidia force-pushed the codex/dynamo-agent-skills branch from 63ed0a6 to c3101f8 Compare May 26, 2026 23:28
@dagil-nvidia dagil-nvidia enabled auto-merge (squash) May 26, 2026 23:28
@dagil-nvidia
Copy link
Copy Markdown
Collaborator

@alec-flowers @tanmayv25 — could one of you stamp this when you get a sec? CODEOWNERS *.py rule requires a python-codeowners approval and that's the only thing blocking auto-merge (CI green, two approvals, Devops side already satisfied). PR only adds four new .py scripts under .agents/skills/*/scripts/ (recipe runner, router starter, troubleshoot, interconnect check) — no production code paths touched. Thanks!

@dagil-nvidia dagil-nvidia merged commit 5141924 into main May 27, 2026
15 checks passed
@dagil-nvidia dagil-nvidia deleted the codex/dynamo-agent-skills branch May 27, 2026 01:28
MartinRepo pushed a commit to MartinRepo/dynamo that referenced this pull request May 27, 2026
Signed-off-by: Anish Maddipoti <amaddipoti@nvidia.com>
Signed-off-by: Ben Hamm <bhamm@nvidia.com>
Co-authored-by: Ben Hamm <bhamm@nvidia.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: Ben Hamm <ben.hamm@gmail.com>
Signed-off-by: Chi Xing <cxing@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

actions chore documentation Improvements or additions to documentation size/XXL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants