Commit 49f3163
authored
feat(cli): add Deep Agents aliases (#5881)
<!-- markdownlint-disable MD041 -->
## Summary
Adds a `nemo-deepagents` host CLI alias for the LangChain Deep Agents
Code runtime and teaches onboarding to accept common user-facing agent
aliases. This lets users run `nemo-deepagents onboard` or shorter forms
such as `nemoclaw onboard --agent dcode`, `--agent deepagents`, and
`--agent langchain` instead of remembering `langchain-deepagents-code`.
## Changes
- Registered `nemo-deepagents` as an npm bin that reuses the existing
`bin/nemoclaw.js` launcher and selects Deep Agents Code when invoked
through that symlink.
- Added canonical agent alias resolution for `--agent` and
`NEMOCLAW_AGENT`, including `nemohermes`, `dcode`, `deepagents`,
`deepagents-code`, `langchain`, and related variants.
- Updated CLI branding, installer/update branding, onboard `--agent`
help, and unknown-agent diagnostics for the alias set.
- Updated Deep Agents quickstart, command reference, and platform
support docs; adjusted platform-doc validation to allow documented
aliases.
- Added/updated tests for CLI alias behavior, onboarding arg
parsing/help, agent definition alias resolution, update copy, oclif
help, and platform-doc validation.
## Type of Change
- [ ] Code change (feature, bug fix, or refactor)
- [x] Code change with doc updates
- [ ] Doc only (prose changes, no code sample modifications)
- [ ] Doc only (includes code sample changes)
## Quality Gates
<!-- Check all that apply. For any "covered by existing tests", "not
applicable", or waiver entry, add a brief justification on the same line
or in the Changes section. -->
- [x] Tests added or updated for changed behavior
- [ ] Existing tests cover changed behavior — justification:
- [ ] Tests not applicable — justification:
- [x] Docs updated for user-facing behavior changes
- [ ] Docs not applicable — justification:
- [x] Sensitive paths changed (security, policy, credentials, preflight,
onboarding, inference, runner, sandbox, or messaging)
- [x] Sensitive-path review completed or maintainer-approved waiver
recorded — reviewer/approval link/justification: self-review; changes
are limited to agent selector canonicalization, launcher branding,
installer alias selection, docs, and tests, with no credential handling
or network-policy enforcement changes.
- [ ] Non-success, skipped, or missing CI check accepted by maintainer —
check name, approval link, and follow-up issue:
## Verification
<!-- Check each item you ran and confirmed. Leave unchecked items you
skipped. Doc-only changes do not require npm test unless you ran it. -->
- [x] PR description includes the DCO sign-off declaration and every
commit appears as `Verified` in GitHub
- [x] Git hooks passed during commit and push, or `npx prek run
--from-ref main --to-ref HEAD` passes
- [x] Targeted tests pass for changed behavior
- [ ] Full `npm test` passes (broad runtime changes only)
- [x] Quality Gates section completed with required justifications or
waivers
- [x] No secrets, API keys, or credentials committed
- [ ] `npm run docs` builds without warnings (doc changes only)
- [x] Doc pages follow the [style
guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md)
(doc changes only)
- [ ] New doc pages include SPDX header and frontmatter (new pages only)
Verification commands run:
- `npm run build:cli`
- `npx vitest run test/nemohermes-alias.test.ts
test/nemo-deepagents-alias.test.ts test/update.test.ts
test/cli-oclif-compatibility.test.ts src/lib/cli/branding.test.ts
src/lib/actions/update.test.ts src/lib/agent/defs.test.ts
src/lib/onboard/legacy-command.test.ts
src/lib/onboard/agent-flag-help.test.ts
src/lib/onboard/command-support.test.ts test/cli/dispatch-basics.test.ts
test/generate-platform-docs.test.ts --reporter=dot`
- `NEMOCLAW_RUN_INSTALLER_TESTS=1 npx vitest run --project
installer-integration test/install-preflight.test.ts --reporter=dot`
- `npm run typecheck:cli`
- `npm run validate:configs`
- `python3 scripts/generate-platform-docs.py --check`
- `npm run docs` (passed; Fern reported two hidden warnings)
- Commit hooks passed; latest push hooks passed.
---
<!-- DCO sign-off is required in this PR description, and every commit
must appear as Verified in GitHub. Run: git config user.name && git
config user.email -->
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added a `nemo-deepagents` CLI alias for Deep Agents with matching
branding, help, onboarding, uninstall, and update flows.
* **Documentation**
* Updated quickstart and command/reference docs to use the Deep Agents
CLI wrapper and clarified `--agent` alias vs canonical name behavior.
* Refreshed platform support/onboarding matrix entries for the new
alias.
* **Bug Fixes**
* Improved agent selector alias resolution and enhanced “unknown agent”
guidance with supported alias mappings.
* Sanitized Deep Agents update environment variables during installs.
* **Tests**
* Added/expanded coverage for Deep Agents alias behavior and alias
canonicalization.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->1 parent 9c8ee86 commit 49f3163
27 files changed
Lines changed: 645 additions & 66 deletions
File tree
- bin
- ci
- docs
- get-started
- reference
- scripts
- src/lib
- actions
- agent
- cli
- onboard
- test
- cli
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
6 | 12 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
162 | 162 | | |
163 | 163 | | |
164 | 164 | | |
165 | | - | |
| 165 | + | |
166 | 166 | | |
167 | 167 | | |
168 | 168 | | |
| |||
Lines changed: 15 additions & 9 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
22 | | - | |
| 22 | + | |
23 | 23 | | |
24 | 24 | | |
| 25 | + | |
| 26 | + | |
25 | 27 | | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
26 | 32 | | |
27 | 33 | | |
28 | 34 | | |
| |||
71 | 77 | | |
72 | 78 | | |
73 | 79 | | |
74 | | - | |
| 80 | + | |
75 | 81 | | |
76 | | - | |
| 82 | + | |
77 | 83 | | |
78 | 84 | | |
79 | 85 | | |
| |||
83 | 89 | | |
84 | 90 | | |
85 | 91 | | |
86 | | - | |
| 92 | + | |
87 | 93 | | |
88 | 94 | | |
89 | 95 | | |
| |||
95 | 101 | | |
96 | 102 | | |
97 | 103 | | |
98 | | - | |
| 104 | + | |
99 | 105 | | |
100 | 106 | | |
101 | | - | |
102 | | - | |
103 | | - | |
104 | | - | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
105 | 111 | | |
106 | 112 | | |
107 | 113 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
106 | 109 | | |
107 | 110 | | |
108 | 111 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
144 | 144 | | |
145 | 145 | | |
146 | 146 | | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
147 | 150 | | |
148 | 151 | | |
149 | 152 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
68 | | - | |
| 68 | + | |
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
| 9 | + | |
| 10 | + | |
10 | 11 | | |
11 | 12 | | |
12 | 13 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
107 | 107 | | |
108 | 108 | | |
109 | 109 | | |
| 110 | + | |
110 | 111 | | |
111 | 112 | | |
112 | 113 | | |
| |||
117 | 118 | | |
118 | 119 | | |
119 | 120 | | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
120 | 140 | | |
121 | 141 | | |
122 | 142 | | |
| |||
269 | 289 | | |
270 | 290 | | |
271 | 291 | | |
272 | | - | |
273 | | - | |
274 | | - | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
275 | 300 | | |
276 | 301 | | |
277 | 302 | | |
| |||
846 | 871 | | |
847 | 872 | | |
848 | 873 | | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
| 877 | + | |
849 | 878 | | |
850 | 879 | | |
851 | 880 | | |
852 | 881 | | |
853 | 882 | | |
854 | 883 | | |
| 884 | + | |
| 885 | + | |
| 886 | + | |
| 887 | + | |
| 888 | + | |
855 | 889 | | |
856 | 890 | | |
857 | 891 | | |
| |||
1536 | 1570 | | |
1537 | 1571 | | |
1538 | 1572 | | |
1539 | | - | |
1540 | | - | |
| 1573 | + | |
| 1574 | + | |
1541 | 1575 | | |
1542 | 1576 | | |
1543 | 1577 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
69 | 95 | | |
70 | 96 | | |
71 | 97 | | |
| |||
226 | 252 | | |
227 | 253 | | |
228 | 254 | | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
229 | 295 | | |
230 | 296 | | |
231 | 297 | | |
| |||
0 commit comments