Skip to content

style: apply /style-guide pass to sandboxes#2668

Open
johndmulhausen wants to merge 4 commits into
mainfrom
style-guide/sandboxes-20260526-215517
Open

style: apply /style-guide pass to sandboxes#2668
johndmulhausen wants to merge 4 commits into
mainfrom
style-guide/sandboxes-20260526-215517

Conversation

@johndmulhausen
Copy link
Copy Markdown
Contributor

Summary

This PR applies the /style-guide skill (Google Developer Style Guide + CoreWeave conventions) to the sandboxes section. The run was automated; only style-level edits were made, with no changes to technical meaning intended.

Files edited

  • sandboxes/create-sandbox.mdx
  • sandboxes/file-access.mdx
  • sandboxes/invoke-agent-sandbox-tutorial.mdx
  • sandboxes/lifecycle.mdx
  • sandboxes/mltrain-in-sandbox-tutorial.mdx
  • sandboxes/run-commands.mdx
  • sandboxes/secrets.mdx

Recommendations for technical review

Prerequisites

  • Most pages lack a Prerequisites section. Confirm what should be listed across create-sandbox.mdx, file-access.mdx, lifecycle.mdx, and run-commands.mdx — likely wandb SDK install, authentication, W&B/CoreWeave account with Serverless Sandboxes access (public preview), and any IAM/entitlement requirements.
  • In invoke-agent-sandbox-tutorial.mdx and mltrain-in-sandbox-tutorial.mdx, decide whether the commented-out "(Recommended) Create a Python virtual environment" block should be restored or deleted, and remove the stale MDX comments (e.g., line 16 of the agent tutorial, lines 25–26 of file-access.mdx).
  • In mltrain-in-sandbox-tutorial.mdx, confirm the full prereq list (Python version host/container, account entitlement, IAM, local system requirements) and whether WANDB_API_KEY env-var auth is supported as an alternative to wandb login.
  • In invoke-agent-sandbox-tutorial.mdx, the openai package is imported by demo.py but not listed as a dependency to install.

Verification steps

  • Across create-sandbox.mdx, file-access.mdx, run-commands.mdx, invoke-agent-sandbox-tutorial.mdx, and mltrain-in-sandbox-tutorial.mdx, the examples do not describe expected output or how to confirm success. Consider adding "what you should see" lines for: sandbox start, file write/read, mounted commands (pip install, python train.py), wandb login, secret storage and retrieval, and successful agent runs.
  • In mltrain-in-sandbox-tutorial.mdx, no guidance on confirming the sandbox started or inspecting logs when sandbox.exec(...) fails; no sanity-check inference snippet or expected file size for the saved model.
  • In run-commands.mdx, clarify what happens after the with block exits in "Keep the sandbox running for additional commands" — whether sleep infinity is terminated automatically.

Technical accuracy

  • In create-sandbox.mdx, confirm python:3.15 (used as the example override image) is a real/intended tag versus a typo for python:3.13 or similar; default is python:3.11.
  • In create-sandbox.mdx, the Tip recommends context-manager use, but "Start a sandbox with a main command" uses Sandbox.run("python", "train.py") without with. Confirm this is intentional or update the example.
  • In create-sandbox.mdx, the code under "Start a sandbox without a main command" duplicates the parent "Create a sandbox" example. Confirm intentional or replace with a distinct pattern.
  • In file-access.mdx: NetworkOptions is imported but unused (line 77); confirm .result() requirement and how the working directory resolves for "hello.txt" (line 40); verify mounted_files field names (mount_path, file_content) match the API; the prose says files mount to "the sandbox root directory" but mount_path values lack a leading / — clarify how bare paths resolve; clean up trailing whitespace / closing-bracket indentation on mounted_files (line 82 and mltrain-in-sandbox-tutorial.mdx line 198).
  • Across file-access.mdx, lifecycle.mdx, and run-commands.mdx, reference links point to docs.coreweave.com/products/coreweave-sandbox/... while imports use from wandb.sandbox import Sandbox. Confirm the canonical reference URL.
  • In lifecycle.mdx: confirm whether FAILED can be reached directly from PENDING or CREATING and update the state diagram; review whether the explicit sandbox.wait() inside a with block is necessary given the prose; document timeout behavior for Sandbox.wait_until_complete(timeout=...); consider tightening "may enter FAILED" to deterministic language if appropriate; verify "Public preview" status is still accurate.
  • In mltrain-in-sandbox-tutorial.mdx: re-verify the line-number callouts in the "previous code snippet does the following" list (lines 229–235); confirm the asymmetric pattern of mounting train.py/requirements.txt while writing hyperparameters.yaml separately via write_file(); justify NetworkOptions(egress_mode="internet") and max_lifetime_seconds=3600; confirm python:3.13 is the recommended/supported image; verify the code-fence directive on line 189 (```python Show lines title="train_in_sandbox.py") — likely should be showLineNumbers; confirm the wandb login reference link /models/ref/cli/wandb-login is correct for this audience.
  • In invoke-agent-sandbox-tutorial.mdx, the central "Run the agent in a sandbox" procedural section appears to be missing — the tutorial never shows how to start the sandbox, install dependencies inside it, mount/upload demo.py, or invoke the script. Clarify whether demo.py is created locally then transferred, or directly in the sandbox.
  • In run-commands.mdx: the intro link #check-for-errors does not match the heading anchor #check-for-sandbox-execution-errors; confirm whether Sandbox.run("python", "train.py") positional args versus sandbox.exec(["pip", "install", "torch"]) list args is intentional; confirm the comment # "hello\\n" renders correctly versus the intended "hello\n".
  • In secrets.mdx line 62, the intro says the example checks for HF_TOKEN, but the example checks HUGGINGFACE_TOKEN. Reword to clarify that HF_TOKEN is exposed as HUGGINGFACE_TOKEN.
  • In secrets.mdx line 64, the parenthetical Secret(env_var="CUSTOM_NAME") omits the required name parameter; update to Secret(name="...", env_var="CUSTOM_NAME").
  • In secrets.mdx, f"..." prefixes appear on strings with no interpolation (lines 50, 52, 82); the phrase "OpenAI key token found." (line 52) reads awkwardly — confirm intended wording.

Missing content

  • In lifecycle.mdx, graceful_shutdown_seconds and missing_ok are introduced only via inline code comments; "Maximum lifetime" is referenced but never defined or linked. Add brief descriptions or links to the Sandbox.stop() reference and the lifetime definition.
  • In file-access.mdx: the "Mount a file or directory" heading covers directories but only shows file examples — add a directory example or narrow the heading; document file size limits, supported encodings (binary versus text), and behavior on path collisions; clarify what happens when sandbox code writes to a read-only mounted path; document error handling for read_file on a missing path; add a reference link for mounted_files / Sandbox.run(mounted_files=...).
  • In invoke-agent-sandbox-tutorial.mdx, add a "Next steps" or "What you accomplished" closer, and consider linking the <Warning> about public preview to its scope/limitations.
  • In mltrain-in-sandbox-tutorial.mdx: the intro mentions starting a sandbox "with the appropriate environment variables" but the body never documents any — either remove the phrase or document them; add troubleshooting guidance (auth errors, sandbox creation timeouts, network egress denied, dependency install failures, lifetime exceeded); add cleanup/cost guidance (context-manager teardown, max_lifetime_seconds enforcement, account-side cost implications); add a "Next steps" with links to a Sandbox API reference and Serverless Sandbox concept page; consider a brief callout explaining train.py at a conceptual level if the audience extends beyond ML practitioners.
  • In run-commands.mdx: add a definition of "sandbox" or link to a concept page; explain what timeout=3600.0 controls and what happens on timeout; clarify when to use Process.result() versus sandbox.wait_until_complete(); add guidance on common exit codes beyond "0 indicates success."
  • In secrets.mdx, the commented-out "Extract a field from a structured secret" block at the bottom of the file should be either removed or restored.

How to review

  • Each file's changes are style edits only. Compare side-by-side and flag any that change technical meaning.
  • Approve and merge to accept the edits, or close to reject them.

@johndmulhausen johndmulhausen requested a review from a team as a code owner May 27, 2026 01:56
@mintlify
Copy link
Copy Markdown
Contributor

mintlify Bot commented May 27, 2026

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
wandb 🟢 Ready View Preview May 27, 2026, 2:00 AM

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 27, 2026

📚 Mintlify Preview Links

🔗 View Full Preview

📝 Changed (7 total)

📄 Pages (7)

File Preview
sandboxes/create-sandbox.mdx Create Sandbox
sandboxes/file-access.mdx File Access
sandboxes/invoke-agent-sandbox-tutorial.mdx Invoke Agent Sandbox Tutorial
sandboxes/lifecycle.mdx Lifecycle
sandboxes/mltrain-in-sandbox-tutorial.mdx Mltrain In Sandbox Tutorial
sandboxes/run-commands.mdx Run Commands
sandboxes/secrets.mdx Secrets

🤖 Generated automatically when Mintlify deployment succeeds
📍 Deployment: 3945e5e at 2026-05-29 22:39:35 UTC

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 27, 2026

🔗 Link Checker Results

All links are valid!

No broken links were detected.

Checked against: https://wb-21fd5541-style-guide-sandboxes-20260526-215517.mintlify.app

@johndmulhausen johndmulhausen enabled auto-merge (squash) May 27, 2026 04:53
Applies keyword guidance from docs-skills #21 (732f738) to all seven
sandboxes content pages. Each page now has 3–5 search-optimized keywords
prioritizing API method names, specific technology names, and action phrases
not already present in the page title or description.

Also bumps the .claude submodule pointer to the commit that introduced
the keyword guidance.
@ngrayluna
Copy link
Copy Markdown
Contributor

@johndmulhausen QQ: Did you want to commit the .claude changes in a different branch? (For a cleaner GitHub history?)

Comment thread sandboxes/create-sandbox.mdx Outdated
---
title: Create sandboxes
description: Learn how to create Serverless Sandboxes.
keywords: ["Sandbox.run", "SandboxDefaults", "sandbox session", "container image"]
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.

Suggested change
keywords: ["Sandbox.run", "SandboxDefaults", "sandbox session", "container image"]
keywords: ["Sandbox.run", "SandboxDefaults", "Session"]

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Applied in 1159ffa.

Comment thread sandboxes/create-sandbox.mdx Outdated
</Warning>

Create sandboxes with W&B. Each sandbox runs in its own container with its own [filesystem](/sandboxes/file-access), network, and process space.
This page shows you how to create Serverless Sandboxes with W&B. You learn how to start a single sandbox, run a main command inside it, and manage multiple sandboxes with a session. Each sandbox runs in its own container with its own [filesystem](/sandboxes/file-access), network, and process space, which gives you an isolated environment to run code.
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.

Style questions

A) I was taught to avoid using "This page shows you..."
B) Also was taught to use action-oriented phrasing.

Suggested change
This page shows you how to create Serverless Sandboxes with W&B. You learn how to start a single sandbox, run a main command inside it, and manage multiple sandboxes with a session. Each sandbox runs in its own container with its own [filesystem](/sandboxes/file-access), network, and process space, which gives you an isolated environment to run code.
Create W&B Serverless Sandboxes to run code in isolated environments. Start a single sandbox, run commands in it, and manage multiple sandboxes with a session. Each sandbox runs in its own container, with its own [[file system](https://chatgpt.com/sandboxes/file-access)](/sandboxes/file-access), network, and process space.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Applied in 1159ffa. Kept your action-oriented phrasing; I also fixed the file-access link, which had a stray chatgpt.com URL from the paste.

Comment thread sandboxes/file-access.mdx Outdated
## Read a file from the sandbox

Save a file from the sandbox to your local environment using the [`Sandbox.read_file()`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/core/sandbox#read_file) method.
Read a file from the sandbox when you want to save its output or generated artifacts back to your local environment. Save a file from the sandbox to your local environment using the [`Sandbox.read_file()`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/core/sandbox#read_file) method.
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.

Left original copy intentionally vague since there are other reasons why you might want to read, write a file to/from a sandbox.

Suggested change
Read a file from the sandbox when you want to save its output or generated artifacts back to your local environment. Save a file from the sandbox to your local environment using the [`Sandbox.read_file()`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/core/sandbox#read_file) method.
Save a file from the sandbox to your local environment using the [`Sandbox.read_file()`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/core/sandbox#read_file) method.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reverted to the original (intentionally vague) copy in 1159ffa.

title: "Tutorial: Invoke an agent in a sandbox"
description: "Learn how to invoke OpenAI agent within a Serverless Sandbox environment"
description: "Learn how to invoke an OpenAI agent within a Serverless Sandbox environment"
keywords: ["tool calls", "OPENAI_API_KEY", "AI agent execution", "function calling"]
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.

These keywords are not specific to the product, page. Removing them. Not sold on what I propose, but it's closer to the right direction.

Suggested change
keywords: ["tool calls", "OPENAI_API_KEY", "AI agent execution", "function calling"]
keywords: ["tutorial", "invoke agent in sandbox"]

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Applied in 1159ffa.

</Warning>

In this tutorial, you will invoke an agent within a Serverless Sandbox environment. To do this, you will start a sandbox with the appropriate environment variables, install the necessary dependencies, and run a Python script that creates and invokes a simple OpenAI agent that uses tool calls to get the weather for a location and respond with a punny weather forecast.
In this tutorial, you invoke an agent within a Serverless Sandbox environment. To do this, you start a sandbox with the appropriate environment variables, install the necessary dependencies, and run a Python script. The script creates and invokes an OpenAI agent that uses tool calls to get the weather for a location and respond with a punny weather forecast. This lets you test and iterate on agent behavior in a safe, isolated environment without affecting your local setup.
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.

Suggested change
In this tutorial, you invoke an agent within a Serverless Sandbox environment. To do this, you start a sandbox with the appropriate environment variables, install the necessary dependencies, and run a Python script. The script creates and invokes an OpenAI agent that uses tool calls to get the weather for a location and respond with a punny weather forecast. This lets you test and iterate on agent behavior in a safe, isolated environment without affecting your local setup.
In this tutorial, you invoke an agent in a W&B Serverless Sandbox. You start a sandbox with the required environment variables, install dependencies, and run a Python script that creates and invokes a simple OpenAI agent. The agent uses tool calls to get weather for a location and return a punny forecast.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Applied in 1159ffa.

Comment thread sandboxes/run-commands.mdx Outdated
<br></br>

[Run commands in a sandbox](#run-commands-in-a-sandbox), [read their output and exit code](#read-output-and-exit-codes), and [check for errors](#check-for-errors). Use these features to run scripts, training jobs, and other processes in a sandbox and programmatically check the results.
This page shows you how to [run commands in a sandbox](#run-commands-in-a-sandbox), [read their output and exit code](#read-output-and-exit-codes), and [check for errors](#check-for-errors). Use these features to run scripts, training jobs, and other processes in a sandbox and programmatically check the results.
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.

Suggested change
This page shows you how to [run commands in a sandbox](#run-commands-in-a-sandbox), [read their output and exit code](#read-output-and-exit-codes), and [check for errors](#check-for-errors). Use these features to run scripts, training jobs, and other processes in a sandbox and programmatically check the results.
[Run commands in a sandbox](#run-commands-in-a-sandbox), [read command output and exit codes](#read-output-and-exit-codes), and [check for errors](#check-for-errors). Use these features to run scripts, training jobs, and other processes in a W&B Serverless Sandbox and programmatically check the results.

Removes "This page shows you how to..."

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Applied in 1159ffa. I also repointed the check-for-errors link to the real heading anchor (#check-for-sandbox-execution-errors) so it is not broken.

Comment thread sandboxes/secrets.mdx Outdated
```

In this example, the sandbox does not receive the full structured secret. It receives only the extracted password field as the value of `DB_PASS`. */} No newline at end of file
In this example, the sandbox doesn't receive the full structured secret. It receives only the extracted password field as the value of `DB_PASS`. */} No newline at end of file
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.

Ignore markdown comments, they may or may not be used => waste tokens.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reverted the comment to its original wording in 1159ffa.

Comment thread sandboxes/secrets.mdx Outdated
---
title: Secrets
description: Learn how to manage secrets in Serverless Sandboxes.
keywords: ["W&B Secrets Manager", "API keys", "environment variables", "env_var", "secret injection"]
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.

Suggested change
keywords: ["W&B Secrets Manager", "API keys", "environment variables", "env_var", "secret injection"]
keywords: ["sandbox secrets", "W&B Secrets Manager"]

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Applied in 1159ffa.

Comment thread sandboxes/run-commands.mdx Outdated
## Check for sandbox execution errors

Specify `check=True` (`Sandbox.exec(check=True)`) to raise an error if the command exits with a non-zero exit code. A [`SandboxExecutionError`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/exceptions/exceptions#sandboxexecutionerror) is raised if the command exits with a non-zero code. This example runs a script `might_fail.py` and checks the result.
The `check` parameter raises an exception when a command fails, so you don't need to inspect exit codes manually. Specify `check=True` (`Sandbox.exec(check=True)`) to raise a [`SandboxExecutionError`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/exceptions/exceptions#sandboxexecutionerror) if the command exits with a non-zero exit code. This example runs a script `might_fail.py` and checks the result.
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.

Suggested change
The `check` parameter raises an exception when a command fails, so you don't need to inspect exit codes manually. Specify `check=True` (`Sandbox.exec(check=True)`) to raise a [`SandboxExecutionError`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/exceptions/exceptions#sandboxexecutionerror) if the command exits with a non-zero exit code. This example runs a script `might_fail.py` and checks the result.
Use `check=True` to raise an exception when a command fails instead of inspecting exit codes manually. If the command exits with a non-zero exit code, `Sandbox.exec(check=True)` raises a [SandboxExecutionError](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/exceptions/exceptions#sandboxexecutionerror).

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Applied in 1159ffa.

Comment thread sandboxes/run-commands.mdx Outdated
## Read output and exit codes

`Sandbox.exec()` returns a [`Process`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/types/process) object. Call `Process.result()` to wait for the command to finish and get its result. `Process.result()` includes the standard output (`stdout`), standard error (`stderr`), and exit code (`returncode`).
After a command runs, you often need to read its output and check whether it succeeded. `Sandbox.exec()` returns a [`Process`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/types/process) object. Call `Process.result()` to wait for the command to finish and get its result. `Process.result()` includes the standard output (`stdout`), standard error (`stderr`), and exit code (`returncode`).
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.

Suggested change
After a command runs, you often need to read its output and check whether it succeeded. `Sandbox.exec()` returns a [`Process`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/types/process) object. Call `Process.result()` to wait for the command to finish and get its result. `Process.result()` includes the standard output (`stdout`), standard error (`stderr`), and exit code (`returncode`).
After you run a command, you can read its output and check whether it succeeded. `Sandbox.exec()` returns a [`Process`](https://docs.coreweave.com/products/coreweave-sandbox/client/ref/types/process) object. To wait for the command to finish, call `Process.result()`.
The result includes standard output (`stdout`), standard error (`stderr`), and the exit code (`returncode`).

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Applied in 1159ffa.

Apply review suggestions from PR #2668: action-oriented page intros,
keyword cleanups, tightened lifecycle and run-command copy, the
corrected check-for-errors anchor, and reverts of style edits to
markdown comments per reviewer guidance.
Reset the .claude submodule pointer to the merge-base commit so this
style-only PR no longer modifies the submodule, keeping GitHub history
clean per review feedback.
@johndmulhausen
Copy link
Copy Markdown
Contributor Author

Thanks for the thorough review, @ngrayluna. I went through every comment and addressed all of them. Two commits:

  • 1159ffaa8 - applies your review feedback across all seven pages.
  • 3945e5e15 - drops the .claude submodule bump (see below).

Suggestions applied verbatim

  • create-sandbox.mdx: keywords.
  • file-access.mdx: reverted the "Read a file..." lead-in back to the original vague copy.
  • invoke-agent-sandbox-tutorial.mdx: keywords, tutorial intro, and the demo.py copy (dropped the duplicated punny-forecast sentence).
  • lifecycle.mdx: added "explicitly" to Sandbox.wait(), and removed the "automatic behavior" clause.
  • mltrain-in-sandbox-tutorial.mdx: auth paragraph (now calls out W&B), the "Prepare the three files..." rewrite, and the "drive" rewrite.
  • run-commands.mdx: keywords, intro (removed "This page shows you how to..."), the "Read output and exit codes" rewrite, and the check=True rewrite.
  • secrets.mdx: keywords.

Where I used judgment instead of applying verbatim

  • create-sandbox.mdx intro: kept your phrasing but fixed the link, which came through as [[file system](https://chatgpt.com/...)](/sandboxes/file-access). It now points to /sandboxes/file-access.
  • lifecycle.mdx intro: per your "felt a bit too wordy" follow-up, I kept the "W&B" and the non-possessive "sandbox state" but trimmed the longer trailing clause, since the paragraph directly above already covers waiting, failures, and cleanup.
  • run-commands.mdx intro: applied your wording, and also repointed the third link to the real heading anchor (#check-for-sandbox-execution-errors) so it is not broken.
  • "Ignore markdown comments" (invoke-agent line 17 and secrets line 114): rather than re-editing them, I reverted both back to their original wording so this PR no longer touches markdown comments at all.

Re: the .claude question

Good call, and yes. The .claude submodule pointer got bumped here by accident. I reset it to the merge-base commit in 3945e5e15, so this PR now contains only the seven sandboxes/*.mdx style edits and merging it will not touch .claude on main.

mint broken-links passes against the updated content.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants