Skip to content

Update CLI reference for the registry model framework and --module-resource - #5449

Merged
Eliza Farley (elizafarley) merged 3 commits into
mainfrom
claude/update-cli-registry-model-framework
Oct 21, 2026
Merged

Eliza Farley (elizafarley) merged 3 commits into
mainfrom
claude/update-cli-registry-model-framework

Conversation

@shannonbradshaw

Copy link
Copy Markdown
Collaborator

RDK v1.13.0 lets the CLI upload ML models and training scripts whose framework is registry, meaning the model runs through module resources from the registry, and adds a repeatable --module-resource flag that names those resources. This PR adds both to the CLI reference and fixes the custom training script upload example, which left out the required --framework.

Source changes

  • RSDK-14608 — Refactor navigation service rdk#6643: bumps go.viam.com/api to v0.1.597 and adds ModelFrameworkRegistry, so registry joins the CLI's modelFrameworks list.
  • APP-18037 — [APP-18037] cli: succeed module reload when GetMachineStatus has no module status rdk#6638: adds --module-resource (a repeatable StringSliceFlag) to packages upload, training-script upload, training-script update and train submit custom with-upload, and adds --framework to training-script update. validateRegistryModuleResources requires at least one model triple when the framework is registry ("--module-resource is required when --framework is registry") and rejects the flag for any other framework.
  • Both in RDK v1.13.0 (git merge-base --is-ancestor e5e32c22b and 27fe9b8e7 against v1.13.0). Flags were checked against cli/app.go, cli/ml_training.go and cli/packages.go at that tag.

Documents: no DOCS ticket found for RSDK-14608, its parent RSDK-14607, or APP-18037.

Docs changes

  • docs/cli/reference.md:
    • packages upload: registry added to --model-framework, plus a new --module-resource row.
    • train submit custom with-upload and training-script upload: registry added to --framework, plus a new --module-resource row. --framework is now marked Required, matching the code (Required: true on both commands; this was already true in v1.12.0, so the "Optional" label was wrong before this change too).
    • training-script update: new --framework and --module-resource rows. Setting either replaces the stored framework and module resources; with only --module-resource, the script keeps its current framework (MLTrainingUpdateAction).
  • docs/train/custom-training-scripts.md: the "Package and upload" example ran viam training-script upload without --framework, which the CLI rejects. The example now passes --framework=<framework>, and the text lists the values and the --module-resource requirement for registry.

Not changed: train submit managed already lists only tflite and tensorflow, and the CLI rejects registry there.

How I found these

  • Xref lookup: cli-xref.md → packages upload, training-script, train submit → docs/cli/reference.md.
  • Grep matches: --framework, --model-framework, model_framework, module-resource, registry, and the old list pytorch, onnx across docs/, static/, data/, layouts/. That added custom-training-scripts.md. train-a-model.md, datasets-and-training.md, manage-your-fleet.md and automate-with-scripts.md pass tflite and stay correct. deploy-custom-model.md already describes Registry in the UI.

Checks

prettier (repo-local 3.2.5), markdownlint, vale, frontmatter_rules.py and make build-prod pass.


Generated by daily docs change agent


Generated by Claude Code

rdk#6643 and rdk#6638, released in RDK v1.13.0, accept registry as a model
framework and add a repeatable --module-resource flag to packages upload,
training-script upload and update, and train submit custom with-upload.
@netlify

netlify Bot commented Oct 21, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for viam-docs ready!

Name Link
🔨 Latest commit 45105ec
🔍 Latest deploy log https://app.netlify.com/projects/viam-docs/deploys/6ad8ca66e89eda69d22dd0be
😎 Deploy Preview https://deploy-preview-5449--viam-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 44 (🟢 up 3 from production)
Accessibility: 100 (no change from production)
Best Practices: 100 (no change from production)
SEO: 92 (no change from production)
PWA: 60 (no change from production)
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify project configuration.

@viambot viambot added the safe to build This pull request is marked safe to build from a trusted zone label Oct 21, 2026
@elizafarley

Eliza Farley (elizafarley) commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Docs review: Ready to merge

This PR adds registry and --module-resource to the CLI reference and adds the required --framework to the training script examples. All findings from the last review are fixed in 17a920d. Every example now passes --framework, and the training-script update row says that the stored framework must already be registry when you set only --module-resource. Every flag claim matches rdk v1.13.0.

CI: All required checks passing

Docs health: No regressions (3 pages compared)

Nits

  • docs/cli/reference.md:2953: the edited with-upload usage line shows --org-id=<org-id>, but the CLI requires --model-org-id (Required: true, cli/app.go), as the example at line 3010 shows. This predates the PR. Fix: change it to --model-org-id=<model-org-id>.
Verified against source (9 claims)
  • registry is a valid framework for all four commands: viamrobotics/rdk v1.13.0 cli/ml_training.go:731-736 (modelFrameworks)
  • --module-resource is a repeatable StringSliceFlag on packages upload, training-script upload, training-script update, and train submit custom with-upload: cli/app.go:2484, :4545, :4589, :4646
  • Model triple format namespace:module:model, round-trip validated: cli/ml_training.go:752-760
  • Required with registry, rejected with any other framework: cli/ml_training.go:743-751
  • packages upload applies the same validation: cli/packages.go:346
  • --framework is Required: true on training-script upload and train submit custom with-upload: cli/app.go:4587, :2482
  • training-script update takes an optional --framework: cli/app.go:4642-4645
  • Setting --framework or --module-resource on update replaces both; with only --module-resource set, the stored framework is kept and must pass registry validation: cli/ml_training.go:669-688
  • unspecified is accepted on upload: cli/ml_training.go:784

Automated review by Claude. Rerunning the review updates this comment.

The train submit custom with-upload usage line and example and the
train-a-model.md upload command omitted --framework, which both commands
require. Note that update with only --module-resource needs a registry
framework already set.

Copy link
Copy Markdown
Collaborator Author

Fixed in 17a920d:

  • train submit custom with-upload: --framework=<framework> added to the usage line and --framework=tflite to the example.
  • train-a-model.md: the upload command now passes --framework=<framework>. My PR description was wrong to list that page as already correct.
  • training-script update row: with only --module-resource, the current framework "must already be registry".

datasets-and-training.md already passes --framework=tflite in both of its examples.


Generated by Claude Code

Copy link
Copy Markdown
Collaborator Author

Fixed in 45105ec: the with-upload usage line now shows --model-org-id=<model-org-id>.


Generated by Claude Code

@elizafarley
Eliza Farley (elizafarley) merged commit 3674d5f into main Oct 21, 2026
14 checks passed
@elizafarley
Eliza Farley (elizafarley) deleted the claude/update-cli-registry-model-framework branch October 21, 2026 14:46
@github-actions

Copy link
Copy Markdown

🔎💬 Inkeep AI search and chat service is syncing content for source 'Viam Docs'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

safe to build This pull request is marked safe to build from a trusted zone

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants