Repository navigation
docs: document boxlite volume and boxlite network, and lead the volume pages with the CLI - #61
Merged
Mandalorian-Wang merged 1 commit intoOct 21, 2026
Conversation
…e pages with the CLI
Batch one of the user-perspective plan: workstreams A and C.
The CLI reference described 17 of the 19 commands the CLI actually ships.
`boxlite volume` (create / ls / get / rm) and `boxlite network` (tunnel)
appeared nowhere on the site — `grep "boxlite volume"` returned zero hits
across every .mdx. Volumes are the one capability with all three
surfaces, and the docs taught only two of them.
Everything below was run against api.boxlite.ai, not read from --help.
$ boxlite volume create --name docs-cli-check
a265d8cc-96aa-46b4-b0a0-afa05c7e4d02 <- prints the id, not the name
$ boxlite volume get <id> --format json
{ "Id": ..., "Name": ..., "CreatedAt": ..., "Size": "-" } <- PascalCase
$ boxlite create python --name trainer -v docs-cli-check:/data
$ boxlite exec trainer -- sh -c 'echo hi > /data/f.txt && cat /data/f.txt'
hi <- mounts by name; exec needs --
$ boxlite volume rm <id> # while a box held it
Error removing volume '...': invalid state: Volume cannot be deleted
because it is in use by one or more boxes (e.g. docs-probe-v)
$ boxlite network tunnel docs-tun2 8080
https://8080-d-6574546e6e4b787a4c596d52.proxy.boxlite.ai
$ boxlite network tunnel docs-tun2 8080 --listen 127.0.0.1:18080
tcp://127.0.0.1:18080 # fetching it locally -> HTTP 200
Against a box created without --inbound, the same tunnel reproduces
#1677 from the CLI for the first time:
Error: invalid state: Box etTnnKxzLYmR is not public; set public: true
before opening a tunnel
Structural changes, from the same plan:
- cloud/mount-a-volume.mdx — the only console walkthrough on the page was
at line 203 of 221, under ~190 lines of SDK code. The page now opens
with "Pick where to do this": console, CLI, SDK. First console mention
moved from 92% of the page to 7%.
- cloud/volume-operations.mdx — "The four operations" and "State the SDK
does not expose" named the API's shape, not a reader's goal. Now "What
you can do to a volume" and "Find out why a volume is not ready", and
the operations table gained CLI and console columns.
- cloud/volume-reference.mdx — the name/id split works from a terminal
too; said so.
Also adds scripts/check-cli-coverage.py, the fourth mechanical rule.
Verified both ways: green on this commit, and against the pre-commit
reference it names exactly `boxlite network` and `boxlite volume` and
exits 1. It is NOT wired into CI yet — the CLI ships through
sh.boxlite.ai rather than pip or npm, so gating every docs PR on it would
couple docs CI to an external installer. That tradeoff is a call for the
docs owner, not a default.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Preview approval requiredThis pull request comes from a fork, so Mintlify won't build a preview until someone with write access approves commit |
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
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. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Batch one of the user-perspective plan — workstreams A and C.
The CLI reference described 17 of the 19 commands the CLI actually ships.
boxlite volume(create / ls / get / rm) andboxlite network(tunnel) appearednowhere on the site:
grep "boxlite volume"returned zero hits across every.mdx. Volumes are the one capability with all three surfaces — CLI, SDK, console —and the docs taught two of them.
Run, not read
Everything documented here was executed against
api.boxlite.ai.Against a box created without
--inbound, the same tunnel reproduces #1677 from theCLI for the first time — previously that string came only from the PR description:
Structural changes
cloud/mount-a-volume.mdx— the only console walkthrough was at line 203 of221, buried under ~190 lines of SDK code. The page now opens with "Pick where to
do this": console, CLI, SDK. First console mention moved from 92% → 7% of the page.
cloud/volume-operations.mdx— "The four operations" and "State the SDK doesnot expose" named the API's shape, not a reader's goal. Now "What you can do to a
volume" and "Find out why a volume is not ready", and the operations table gained
CLI and console columns.
cloud/volume-reference.mdx— the name/id split works from a terminal too.The fourth mechanical rule
scripts/check-cli-coverage.py— every commandboxlite --helplists must appear inthe CLI reference. Verified both ways:
It is deliberately not wired into CI. The CLI ships through
sh.boxlite.ai, notpip or npm, so gating every docs PR on it would couple docs CI to an external
installer — if that endpoint is down, no docs PR merges. That tradeoff is the docs
owner's call, not a default I should take. The script is useful today as a local check
and as a step in whatever job we decide should own it.
Checks
Every box and volume created for this was removed afterwards.
🤖 Generated with Claude Code