Combine installation user skills into cuopt-install#1189
Combine installation user skills into cuopt-install#1189rgsl888prabhu wants to merge 3 commits intoNVIDIA:mainfrom
Conversation
Collapses three install skills into a single user-facing skill: - cuopt-installation-common (concepts) — system requirements + clarifying questions - cuopt-installation-api-python (Python install) - cuopt-installation-api-c (C install) → cuopt-installation (Python + C + server, pip/conda/Docker, verification) cuopt-installation-developer (build from source) stays as a separate skill for contributors and is referenced as "see also" from the merged skill. Why one skill instead of three: - System requirements, package-manager decisions, and verification surface are shared across interfaces; splitting created duplicated content and ambiguous activation. - Both API skills already declared "Standalone; no common skill", so the common skill was vestigial. - Mirrors the consolidation pattern from NVIDIA#1183 (numerical-optimization skill family). Also fixes two bugs surfaced while drafting: - C API was missing pip support; libcuopt-cu12 / libcuopt-cu13 are real PyPI packages (per dependencies.yaml:436,441). - C API conda command pointed to "cuopt" (the Python package) instead of "libcuopt" (the C package, dependencies.yaml:423). Cross-refs updated: AGENTS.md, .claude-plugin/marketplace.json, and skills/cuopt-installation-developer/evals/evals.json (two references to the old skill names in ground_truth and expected_behavior).
|
ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (2)
✅ Files skipped from review due to trivial changes (2)
📝 WalkthroughWalkthroughThis PR consolidates cuOpt installation documentation from four separate API-specific skill guides into a single unified ChangesInstallation Documentation Consolidation
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Tip 💬 Introducing Slack Agent: The best way for teams to turn conversations into code.Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.
Built for teams:
One agent for your entire SDLC. Right inside Slack. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
AGENTS.md (1)
3-3: ⚡ Quick winLine 3 layout rule conflicts with the new installation model.
Line 3 says implementation skills are one-per-interface, but Lines 21-23 intentionally consolidate installation into a single multi-interface skill. Please adjust Line 3 to avoid routing ambiguity.
Suggested wording
-AI agent skills for NVIDIA cuOpt optimization engine. Skills live in **`skills/`** (repo root) and use a **flat layout**: per domain, a concept skill (formulation / problem types) plus implementation skills (one per interface — Python, C, CLI, server). Skills evolve through agent interactions — see `skills/skill-evolution/` for the evolution workflow. +AI agent skills for NVIDIA cuOpt optimization engine. Skills live in **`skills/`** (repo root) and use a **flat layout**: per domain, a concept skill (formulation / problem types) plus implementation skills (typically one per interface — Python, C, CLI, server; installation is consolidated). Skills evolve through agent interactions — see `skills/skill-evolution/` for the evolution workflow.As per coding guidelines, "Include clear descriptions of agent responsibilities and interfaces in AGENTS.md".
🤖 Prompt for 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. In `@AGENTS.md` at line 3, Update the sentence in AGENTS.md that enforces "one per interface" implementation skills: change it to describe a flat layout where each domain has a concept skill (formulation/problem types) plus implementation skills, but allow implementation skills to consolidate multiple interfaces (e.g., a single installation/multi-interface skill) when appropriate; reference the existing skills/ and skills/skill-evolution/ conventions and ensure the wording removes the strict one-per-interface rule to avoid routing ambiguity.
🤖 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 `@skills/cuopt-installation/SKILL.md`:
- Line 121: Replace the incorrect error text `No module 'cuopt'` with Python's
actual import error wording `No module named 'cuopt'` in the SKILL.md entry (the
phrasing shown in the diff) so the documentation matches the real exception
message for easier searching.
---
Nitpick comments:
In `@AGENTS.md`:
- Line 3: Update the sentence in AGENTS.md that enforces "one per interface"
implementation skills: change it to describe a flat layout where each domain has
a concept skill (formulation/problem types) plus implementation skills, but
allow implementation skills to consolidate multiple interfaces (e.g., a single
installation/multi-interface skill) when appropriate; reference the existing
skills/ and skills/skill-evolution/ conventions and ensure the wording removes
the strict one-per-interface rule to avoid routing ambiguity.
🪄 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: Enterprise
Run ID: ecee9812-e54d-43bc-9eda-87b93a3f9020
📒 Files selected for processing (9)
.claude-plugin/marketplace.jsonAGENTS.mdskills/cuopt-installation-api-c/SKILL.mdskills/cuopt-installation-api-python/SKILL.mdskills/cuopt-installation-api-python/resources/verification_examples.mdskills/cuopt-installation-common/SKILL.mdskills/cuopt-installation-developer/evals/evals.jsonskills/cuopt-installation/SKILL.mdskills/cuopt-installation/resources/verification_examples.md
💤 Files with no reviewable changes (4)
- skills/cuopt-installation-common/SKILL.md
- skills/cuopt-installation-api-python/resources/verification_examples.md
- skills/cuopt-installation-api-c/SKILL.md
- skills/cuopt-installation-api-python/SKILL.md
Shorter, matches the "pip install" mental model, and removes residual ambiguity about audience now that cuopt-installation stands alone as the user-facing install skill (the developer install is being folded into cuopt-developer in NVIDIA#1176). Updates skill folder name, frontmatter name, AGENTS.md, marketplace.json, and the inst-007-user-vs-dev-install eval ground_truth / expected_behavior references.
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 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 `@skills/cuopt-install/SKILL.md`:
- Line 4: Replace the incorrect routing token "cuopt-developer" with the correct
"cuopt-installation-developer" in the SKILL.md description and any other
occurrences (the three spots flagged in the diff), i.e., find the string
"cuopt-developer" and update it to "cuopt-installation-developer" so
build-from-source/install-from-source users are routed to the
installation-specific skill.
🪄 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: Enterprise
Run ID: 138bde5c-e73e-492f-9d01-29ebfd9dd02f
📒 Files selected for processing (5)
.claude-plugin/marketplace.jsonAGENTS.mdskills/cuopt-install/SKILL.mdskills/cuopt-install/resources/verification_examples.mdskills/cuopt-installation-developer/evals/evals.json
✅ Files skipped from review due to trivial changes (2)
- skills/cuopt-installation-developer/evals/evals.json
- AGENTS.md
| --- | ||
| name: cuopt-install | ||
| version: "26.06.00" | ||
| description: Install cuOpt for Python, C, or as a server (pip, conda, Docker) — system requirements, install commands, and verification. Use when the user wants to install or verify cuOpt for any user-facing interface. For building cuOpt from source or contributing to cuOpt, see cuopt-developer. |
There was a problem hiding this comment.
Route build-from-source users to cuopt-installation-developer, not cuopt-developer.
These lines currently send build/install-from-source users to the general developer skill. That conflicts with this PR’s stated routing split and can misroute installation questions.
Suggested edit
-description: Install cuOpt for Python, C, or as a server (pip, conda, Docker) — system requirements, install commands, and verification. Use when the user wants to install or verify cuOpt for any user-facing interface. For building cuOpt from source or contributing to cuOpt, see cuopt-developer.
+description: Install cuOpt for Python, C, or as a server (pip, conda, Docker) — system requirements, install commands, and verification. Use when the user wants to install or verify cuOpt for any user-facing interface. For building cuOpt from source, see cuopt-installation-developer. For contributing to cuOpt internals, see cuopt-developer.
...
-Install cuOpt to *use* it from Python, C, or as a REST server. For building cuOpt from source to contribute or modify it, see `cuopt-developer`.
+Install cuOpt to *use* it from Python, C, or as a REST server. For building cuOpt from source, see `cuopt-installation-developer`.
...
-- `cuopt-developer` — build cuOpt from source and contribute to the codebase.
+- `cuopt-installation-developer` — build cuOpt from source and run developer setup.
+- `cuopt-developer` — contribute to the codebase internals.Also applies to: 9-9, 128-128
🤖 Prompt for 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.
In `@skills/cuopt-install/SKILL.md` at line 4, Replace the incorrect routing token
"cuopt-developer" with the correct "cuopt-installation-developer" in the
SKILL.md description and any other occurrences (the three spots flagged in the
diff), i.e., find the string "cuopt-developer" and update it to
"cuopt-installation-developer" so build-from-source/install-from-source users
are routed to the installation-specific skill.
- 'No module cuopt' -> 'No module named cuopt' (Python's actual ImportError text). - AGENTS.md line 3: loosen 'one per interface' rule to allow consolidated multi-interface skills like cuopt-install.
|
Addressed CodeRabbit review in
Skipping one finding intentionally:
|
Summary
Collapses three user-facing install skills into one
cuopt-installskill covering Python, C, and server across pip, conda, and Docker.cuopt-installation-common(concepts)cuopt-installcuopt-installation-api-pythoncuopt-installcuopt-installation-api-ccuopt-installcuopt-installation-developer(build from source)cuopt-developerin #1176Two commits:
cuopt-installationskill.cuopt-installation→cuopt-install(shorter, matchespip installmental model, removes residual audience ambiguity).Why
cuopt-installfollows thepip installconvention; the developer / build-from-source path lives elsewhere (cuopt-developer, post-Improve cuopt-developer skill content and sibling-skill routing #1176).Drive-by fixes (caught while drafting)
libcuopt-cu12andlibcuopt-cu13are real PyPI packages (seedependencies.yaml:436,441); the oldcuopt-installation-api-cskill only documented conda.conda install ... cuopt, butcuoptis the Python conda package. The C package islibcuopt(dependencies.yaml:423).Cross-refs updated
AGENTS.md— skill index reorganized; new "Installation" section withcuopt-install..claude-plugin/marketplace.json— three plugin entries → one.skills/cuopt-installation-developer/evals/evals.json— two references inground_truth/expected_behaviorupdated tocuopt-install.Coordination with #1176
Both PRs touch
AGENTS.md,.claude-plugin/marketplace.json, andskills/cuopt-installation-developer/evals/evals.json. Whichever lands second will need a small rebase (drop the eval edit since #1176 deletes that file; flip the "Installation" section in AGENTS.md). The merged eval cases that #1176 migrates intocuopt-developer/evals/evals.jsonmay also need a one-line touch-up to point atcuopt-installrather than the old skill names.Test plan
cuopt-installappears in available skills, the three old user-install names do not.cuopt-install, produces correct pip / conda command.cuopt-install, produces correctlibcuopt-cu12/13pip command andlibcuoptconda command.cuopt-installation-developer(orcuopt-developerpost-Improve cuopt-developer skill content and sibling-skill routing #1176).