Skip to content

docs: organize RST guides around Isaac Capture - #1265

Merged
jiwenc-nv merged 4 commits into
NVIDIA:mainfrom
jiwenc-nv:jiwenc/isaac-capture-rst
Oct 14, 2026
Merged

jiwenc-nv merged 4 commits into
NVIDIA:mainfrom
jiwenc-nv:jiwenc/isaac-capture-rst

Conversation

@jiwenc-nv

@jiwenc-nv jiwenc-nv commented Oct 14, 2026 •

Copy link
Copy Markdown
Collaborator

Description

Reorganize the RST documentation around Isaac Capture as the shared library and Isaac Teleop as its teleoperation component. Move 26 guides into Teleop, Development, Integrations, and device-category folders, retaining compatibility pages at the old URLs and all explicit labels. LeRobot workflows live under Integrations.

Add a Capture homepage, Teleop overview, the shared README architecture image, and integration placeholders. Group device guides under category pages and preserve the requirements and reconstruction reference pages. Deferred vendor write-ups remain out of scope. Resolve ecosystem metadata from the ref being built to preserve older-version links.

Type of change

  • Documentation update

Testing

  • Strict current-docs build passed.
  • Multiversion build of existing main with the updated config passed.
  • Rendered internal links, moved-page labels, and 26 compatibility destinations verified.
  • Full pre-commit passed with SKIP=check-copyright-year.

No new tests: documentation builds and structural checks validate this change.

Checklist

  • Read the contribution guidelines.
  • Ran the linter and formatter.
  • Updated documentation.
  • Explained validation without new tests.
  • Signed off the commit.

Summary by CodeRabbit

  • Documentation
    • Reorganized the documentation under the Isaac Capture name, with dedicated sections for Isaac Teleop, development, and integrations. Existing page locations now direct readers to the updated guides.
    • Added teleoperation quick-start, session, control-state, and LeRobot workflows, plus build, contribution, licensing, migration, and Televiz guides.
    • Expanded device and reference guides for body and hand tracking, cameras, spatial controllers, tactile input, joint-space devices, and haptic feedback.
    • Added Isaac Lab & Sim and Isaac ROS integration pages.

@github-actions

Copy link
Copy Markdown
Contributor

📝 Docs preview is not auto-deployed for fork PRs.

A maintainer with write access to NVIDIA/IsaacCapture can deploy a preview by
commenting /preview-docs on this PR. Once deployed, the preview
will live at:

https://nvidia.github.io/IsaacCapture/preview/pr-1265/

@coderabbitai

coderabbitai Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository: NVIDIA/IsaacCapture/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Enterprise
  • Run ID: 5a640ec8-8bed-4359-912b-3d90b4b5abc6

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository: NVIDIA/IsaacCapture/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Enterprise
  • Run ID: 91a0aafc-4ce1-4cdb-bc6e-8846724a1002
📥 Commits

Reviewing files that changed from the base of the PR and between 1641ca8 and 9ae70d2.

⛔ Files ignored due to path filters: 1
  • docs/source/_static/isaac-capture-architecture.svg is excluded by !**/*.svg
📒 Files selected for processing: 74
  • docs/AGENTS.md
  • docs/index.html
  • docs/source/_data/devices.yaml
  • docs/source/_ext/ecosystem_grid.py
  • docs/source/conf.py
  • docs/source/development/build_from_source/index.rst
  • docs/source/development/build_from_source/webxr.rst
  • docs/source/development/contributing.rst
  • docs/source/development/license.rst
  • docs/source/development/migration.rst
  • docs/source/development/televiz.rst
  • docs/source/device/add_device.rst
  • docs/source/device/body_tracking.rst
  • docs/source/device/body_tracking/index.rst
  • docs/source/device/body_tracking/soma.rst
  • docs/source/device/cameras/oak.rst
  • docs/source/device/hand_tracking/haptikos.rst
  • docs/source/device/hand_tracking/manus.rst
  • docs/source/device/hand_tracking/sharpa_avatar.rst
  • docs/source/device/hand_tracking/wuji_glove.rst
  • docs/source/device/haptic_feedback.rst
  • docs/source/device/haptikos.rst
  • docs/source/device/joint_space.rst
  • docs/source/device/joint_space/index.rst
  • docs/source/device/manus.rst
  • docs/source/device/oak.rst
  • docs/source/device/oglo.rst
  • docs/source/device/sharpa_avatar.rst
  • docs/source/device/soma.rst
  • docs/source/device/spacemouse.rst
  • docs/source/device/spatial_controllers/spacemouse.rst
  • docs/source/device/tactile/oglo.rst
  • docs/source/device/trackers.rst
  • docs/source/device/wuji_glove.rst
  • docs/source/getting_started/build_from_source/index.rst
  • docs/source/getting_started/build_from_source/webxr.rst
  • docs/source/getting_started/contributing.rst
  • docs/source/getting_started/lerobot/data_collection_real.rst
  • docs/source/getting_started/lerobot/data_collection_sim.rst
  • docs/source/getting_started/lerobot/devices.rst
  • docs/source/getting_started/lerobot/index.rst
  • docs/source/getting_started/lerobot/rebot.rst
  • docs/source/getting_started/lerobot/training_groot.rst
  • docs/source/getting_started/quick_start.rst
  • docs/source/getting_started/teleop_control_state_machine.rst
  • docs/source/getting_started/teleop_session.rst
  • docs/source/getting_started/televiz.rst
  • docs/source/index.rst
  • docs/source/integrations/isaac_lab_sim.rst
  • docs/source/integrations/isaac_ros.rst
  • docs/source/overview/architecture.rst
  • docs/source/overview/ecosystem.rst
  • docs/source/overview/isaac_teleop.rst
  • docs/source/references/build.rst
  • docs/source/references/camera_streaming.rst
  • docs/source/references/cloudxr.rst
  • docs/source/references/haptic_feedback.rst
  • docs/source/references/license.rst
  • docs/source/references/mcap_record_replay.rst
  • docs/source/references/migration.rst
  • docs/source/references/oob_teleop_control.rst
  • docs/source/references/retargeting/index.rst
  • docs/source/references/retargeting/joint_space.rst
  • docs/source/references/retargeting/sharpa.rst
  • docs/source/references/retargeting/wuji.rst
  • docs/source/teleop/control_state_machine.rst
  • docs/source/teleop/lerobot/data_collection_real.rst
  • docs/source/teleop/lerobot/data_collection_sim.rst
  • docs/source/teleop/lerobot/devices.rst
  • docs/source/teleop/lerobot/index.rst
  • docs/source/teleop/lerobot/rebot.rst
  • docs/source/teleop/lerobot/training_groot.rst
  • docs/source/teleop/quick_start.rst
  • docs/source/teleop/teleop_session.rst

Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 11 remain after this review.

📝 Walkthrough

The documentation adopts Isaac Capture branding and reorganizes navigation into Isaac Teleop, Development, and Integrations sections. It adds guides for building, contributing, teleoperation, device integrations, and technical references. Former pages remain as orphaned notices that link to relocated content. Existing links and device metadata paths are updated to match the new structure.

Priority: ⬇️ Low

Estimated code review effort: 4 (Complex) | ~60 minutes

Merge Risk: ⚪ Minimal · up to 9ae70

No actionable issue is established for this documentation reorganization; it is mergeable after normal documentation checks.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 75.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 4 functions across 2 files. (72 skipped: … Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
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 Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly summarizes the primary change: reorganizing the RST guides around Isaac Capture.
Full details: Docstring Coverage

Explanation

Docstring coverage is 75.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 4 functions across 2 files. (72 skipped: 72 unsupported.)

✨ Finishing Touches: 💡 1
⚔️ Resolve merge conflicts: 💡
  • Resolve merge conflict in branch jiwenc/isaac-capture-rst
🧪 Generate unit tests (beta)
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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

@jiwenc-nv

Copy link
Copy Markdown
Collaborator Author

/preview-docs

@github-actions

Copy link
Copy Markdown
Contributor

❌ No successful Build & deploy docs run found for commit 9ae70d2e. Wait for the build to finish (or push a commit that touches docs/ to trigger one), then re-comment /preview-docs.

@jiwenc-nv

Copy link
Copy Markdown
Collaborator Author

/preview-docs

@github-actions

Copy link
Copy Markdown
Contributor

✅ Preview deployed: https://NVIDIA.github.io/IsaacCapture/preview/pr-1265/

Present Isaac Capture as the shared library while retaining Isaac Teleop as its teleoperation component. Move guides into the approved sections, preserve old URLs with compatibility pages, and keep versioned ecosystem links tied to their source ref.

Signed-off-by: Jiwen Cai <jiwenc@nvidia.com>
Signed-off-by: Jiwen Cai <jiwenc@nvidia.com>
@jiwenc-nv
jiwenc-nv force-pushed the jiwenc/isaac-capture-rst branch from c1f371d to ae4c898 Compare October 14, 2026 19:51
@jiwenc-nv

Copy link
Copy Markdown
Collaborator Author

/preview-docs

@github-actions

Copy link
Copy Markdown
Contributor

✅ Preview deployed: https://NVIDIA.github.io/IsaacCapture/preview/pr-1265/

@ivany-nv ivany-nv left a comment

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.

Summary
This moves 26 guides into teleop/, development/ and device-category folders behind :orphan: stubs, rebrands the landing and architecture pages, and loads devices.yaml from app.srcdir so each version links its own docnames. CI is green, and my own checks agreed: strict make current-docs, a sphinx-multiversion build of release/1.5.x–1.7.x and v1.5.175 with this config, and a merge with main resolved by adding device/gamepad all pass. Every moved page differs from its original only by path fixes and the umbrella rename. Nothing blocks; the points below are about what readers land on and where the next device page goes.

Legend: 🚫 BLOCKER = merge-blocking | 💡 SUGGESTION = meaningful improvement | 🧹 NIT = precise small correction

Finding
🚫 none
💡 docs/source/device/manus.rst:4 - All 26 stubs are indexed by site search under the same title as their destination, so "MANUS Gloves", "Quick Start" or "Teleop Session" each return two hits, one of them a "This page has moved" page. They also don't forward, and search engines will index them. The site already handles a moved page with refresh + noindex + canonical (gh-pages 753db20). Adding :nosearch: plus a .. meta:: block with :http-equiv=refresh: and :robots: noindex to each stub fixes both without JavaScript; verified on this stub under make current-docs.
💡 docs/source/overview/architecture.rst:11 - The figure is a redrawn SVG whose labels differ from the supplied diagram that #1261 merged as _static/isaac-capture-architecture.png for the README: "Core" became "Shared infrastructure", "Data Utils" became "Data utilities", "Ego Post Processing" became "Ego Post-Processing", and the retargeter line changed. Plan row R02 is "Align supplied component diagram", and two versions of one diagram will drift. After rebasing, use the PNG (or an SVG regenerated from it) and keep one asset.
💡 docs/AGENTS.md:40 - "Device pages stand alone" still says docs/source/device/*.rst is what the site renders, which after this PR matches mostly the compatibility stubs, and the new "RST restructuring" section doesn't say which folder a new device page goes in. main already added device/gamepad.rst flat (the source of the index.rst conflict), and #1153, #1077 and #1071 add more flat pages.
🧹 docs/source/overview/architecture.rst:25-26 - "Ego Post-Processing" doesn't match "Ego Post Processing" in the supplied diagram, the README and the naming doc. Neither this paragraph nor index.rst:19 links anywhere, while the README sends that name to references/egocentric_hand_reconstruction.
🧹 README.md:57-58 - Non-docs files still link to moved pages: the README's install and build links, scripts/run_cloudxr.sh:14-15, the deprecation warning in src/compat/isaacteleop.py:30, and the Haptikos, Wuji and haptic-feedback example READMEs. They resolve, but to stubs. Released 1.6 wheels print the references/migration URL, so that stub has to stay either way.

Actionables (copy-paste-ready for implementation agents)

Validate these suggestions in context before applying them. Skip anything already addressed, incorrect, or not worth the churn.

  • docs/source/{device,getting_started,references}/** compatibility stubs - Add :nosearch: after :orphan: and a .. meta:: block with :http-equiv=refresh: 0; url=<relative new page>.html and :robots: noindex.
  • docs/source/overview/architecture.rst:11 - After rebasing onto main, reference /_static/isaac-capture-architecture.png (or an SVG regenerated from it) and delete isaac-capture-architecture.svg.
  • docs/AGENTS.md:40 - Change docs/source/device/*.rst to docs/source/device/**/*.rst and name the category folders new device pages belong in.
  • docs/source/index.rst - Resolve the main conflict by adding Gamepad to the Devices toctree, moved into a category folder with its devices.yaml doc: updated.
  • docs/source/overview/architecture.rst:26 - Spell the stage "Ego Post Processing" and link /references/egocentric_hand_reconstruction; link it from docs/source/index.rst:19-20 too.
  • README.md, scripts/run_cloudxr.sh:14-15, src/compat/isaacteleop.py:7,30, src/plugins/haptikos/README.md:66, src/plugins/wuji_glove/README.md:13, examples/haptic_feedback/python/README.md:26 - Point docs links at the new page paths.

Signed-off-by: Jiwen Cai <jiwenc@nvidia.com>
@jiwenc-nv

Copy link
Copy Markdown
Collaborator Author

/preview-docs

@github-actions

Copy link
Copy Markdown
Contributor

✅ Preview deployed: https://NVIDIA.github.io/IsaacCapture/preview/pr-1265/

Signed-off-by: Jiwen Cai <jiwenc@nvidia.com>
@jiwenc-nv

Copy link
Copy Markdown
Collaborator Author

/preview-docs

@github-actions

Copy link
Copy Markdown
Contributor

✅ Preview deployed: https://NVIDIA.github.io/IsaacCapture/preview/pr-1265/

@jiwenc-nv
jiwenc-nv merged commit e07a2cc into NVIDIA:main Oct 14, 2026
32 checks passed
github-actions Bot added a commit that referenced this pull request Oct 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants