Skip to content

docs(misc): add Vale as automated editor and a Claude skill to ensure style guide is followed#34744

Merged
jaysoo merged 1 commit intomasterfrom
DOC-393
Mar 6, 2026
Merged

docs(misc): add Vale as automated editor and a Claude skill to ensure style guide is followed#34744
jaysoo merged 1 commit intomasterfrom
DOC-393

Conversation

@jaysoo
Copy link
Copy Markdown
Member

@jaysoo jaysoo commented Mar 6, 2026

This PR makes it much easier for everyone to contribute to our docs.

  1. Vale is installed via mise - This is our automated editor.
  2. Claude skill to invoke Vale and also follow astro-docs/STYLE_GUIDE.md for things that Vale cannot pick up.
  3. CLAUDE.md instruction to invoke the skill (2) whenever someone is updating docs.

Demo: https://www.loom.com/share/415a9da056d3483da297fda61f7e7382

@jaysoo jaysoo requested review from a team, Coly010, FrozenPandaz and vsavkin as code owners March 6, 2026 16:58
@netlify
Copy link
Copy Markdown

netlify Bot commented Mar 6, 2026

Deploy Preview for nx-docs ready!

Name Link
🔨 Latest commit ea12eb5
🔍 Latest deploy log https://app.netlify.com/projects/nx-docs/deploys/69ab32519bb709000849e689
😎 Deploy Preview https://deploy-preview-34744--nx-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

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

@netlify
Copy link
Copy Markdown

netlify Bot commented Mar 6, 2026

Deploy Preview for nx-dev ready!

Name Link
🔨 Latest commit ea12eb5
🔍 Latest deploy log https://app.netlify.com/projects/nx-dev/deploys/69ab3251d629bd00088cdf2d
😎 Deploy Preview https://deploy-preview-34744--nx-dev.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

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

@nx-cloud
Copy link
Copy Markdown
Contributor

nx-cloud Bot commented Mar 6, 2026

View your CI Pipeline Execution ↗ for commit ea12eb5

Command Status Duration Result
nx affected --targets=lint,test,build,e2e,e2e-c... ✅ Succeeded 18m 21s View ↗
nx run-many -t check-imports check-lock-files c... ✅ Succeeded 2m 20s View ↗
nx-cloud record -- nx-cloud conformance:check ✅ Succeeded 7s View ↗
nx-cloud record -- nx format:check ✅ Succeeded 1s View ↗
nx-cloud record -- nx sync:check ✅ Succeeded <1s View ↗

☁️ Nx Cloud last updated this comment at 2026-03-06 20:22:56 UTC

Copy link
Copy Markdown
Contributor

@nx-cloud nx-cloud Bot left a comment

Choose a reason for hiding this comment

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

✅ The fix from Nx Cloud was applied

These changes fix the format:check failure by running nx format to apply Prettier formatting rules to the STYLE_GUIDE.md file. The table column widths in the terminology reference section have been adjusted to meet the workspace's formatting standards, ensuring all content adheres to consistent alignment requirements.

Warning

We could not verify this fix.

Suggested Fix changes
diff --git a/astro-docs/STYLE_GUIDE.md b/astro-docs/STYLE_GUIDE.md
index ac83ac7569..01afdda3e4 100644
--- a/astro-docs/STYLE_GUIDE.md
+++ b/astro-docs/STYLE_GUIDE.md
@@ -365,25 +365,25 @@ Use tables for structured data that benefits from a matrix layout. For simple li
 
 Use these terms consistently. When writing about Nx concepts, use the exact term from this list.
 
-| Term           | Usage notes                                                                                       |
-| -------------- | ------------------------------------------------------------------------------------------------- |
-| workspace      | The root directory managed by Nx. Not "repo" or "monorepo" when referring to Nx's context.        |
-| project        | An app or library within the workspace.                                                           |
-| target         | A task that can be run for a project (e.g., `build`, `test`, `lint`).                             |
-| executor       | The implementation behind a target. Not "builder."                                                |
-| generator      | Code scaffolding tool. Not "schematic."                                                           |
-| plugin         | An Nx plugin that provides executors, generators, or graph inference.                             |
-| task           | A specific invocation of a target for a project (e.g., `myapp:build`).                            |
-| project graph  | The dependency graph between projects.                                                            |
-| affected       | Projects impacted by a code change.                                                               |
-| cache / cached | Not "memoized" or "stored results."                                                               |
-| remote caching | Sharing cached results across machines. Specific product: "Nx Replay."                            |
-| Nx Cloud       | The hosted CI/CD product. Always capitalized.                                                     |
-| Nx Console     | The IDE extension. Always capitalized.                                                            |
-| Nx Agents      | Distributed task execution product. Always capitalized.                                           |
-| Nx Replay      | Remote caching product. Always capitalized.                                                       |
-| `nx.json`      | Always in code style.                                                                             |
-| `project.json` | Always in code style.                                                                             |
+| Term           | Usage notes                                                                                |
+| -------------- | ------------------------------------------------------------------------------------------ |
+| workspace      | The root directory managed by Nx. Not "repo" or "monorepo" when referring to Nx's context. |
+| project        | An app or library within the workspace.                                                    |
+| target         | A task that can be run for a project (e.g., `build`, `test`, `lint`).                      |
+| executor       | The implementation behind a target. Not "builder."                                         |
+| generator      | Code scaffolding tool. Not "schematic."                                                    |
+| plugin         | An Nx plugin that provides executors, generators, or graph inference.                      |
+| task           | A specific invocation of a target for a project (e.g., `myapp:build`).                     |
+| project graph  | The dependency graph between projects.                                                     |
+| affected       | Projects impacted by a code change.                                                        |
+| cache / cached | Not "memoized" or "stored results."                                                        |
+| remote caching | Sharing cached results across machines. Specific product: "Nx Replay."                     |
+| Nx Cloud       | The hosted CI/CD product. Always capitalized.                                              |
+| Nx Console     | The IDE extension. Always capitalized.                                                     |
+| Nx Agents      | Distributed task execution product. Always capitalized.                                    |
+| Nx Replay      | Remote caching product. Always capitalized.                                                |
+| `nx.json`      | Always in code style.                                                                      |
+| `project.json` | Always in code style.                                                                      |
 
 ## Vale configuration
 

🔔 Heads up, your workspace has pending recommendations ↗ to auto-apply fixes for similar failures.

Revert fix via Nx Cloud  

View interactive diff ↗

➡️ This fix was applied by Jack Hsu

🎓 Learn more about Self-Healing CI on nx.dev

Comment thread astro-docs/scripts/vale-changed.mjs Outdated
Comment on lines +15 to +17
} catch (err) {
process.exit(err.status === 1 ? 1 : 0);
}
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.

Error handling treats all non-1 exit codes as success, which will hide real failures like Vale not being installed (exit 127) or configuration errors. Vale can exit with codes other than 0, 1, or 2.

} catch (err) {
  // Only exit 1 for Vale errors (status 1)
  // Exit 0 for warnings only (status 2)
  // For other errors (missing binary, config issues), re-throw
  if (err.status === 1) {
    process.exit(1);
  } else if (err.status === 2) {
    process.exit(0);
  } else {
    throw err;
  }
}
Suggested change
} catch (err) {
process.exit(err.status === 1 ? 1 : 0);
}
} catch (err) {
// Only exit 1 for Vale errors (status 1)
// Exit 0 for warnings only (status 2)
// For other errors (missing binary, config issues), re-throw
if (err.status === 1) {
process.exit(1);
} else if (err.status === 2) {
process.exit(0);
} else {
throw err;
}
}

Spotted by Graphite

Fix in Graphite


Is this helpful? React 👍 or 👎 to let us know.

@jaysoo jaysoo force-pushed the DOC-393 branch 3 times, most recently from c05bc55 to 43fb6cb Compare March 6, 2026 19:43
@jaysoo jaysoo merged commit e50cc74 into master Mar 6, 2026
24 checks passed
@jaysoo jaysoo deleted the DOC-393 branch March 6, 2026 20:39
@github-actions
Copy link
Copy Markdown
Contributor

This pull request has already been merged/closed. If you experience issues related to these changes, please open a new issue referencing this pull request.

@github-actions github-actions Bot locked as resolved and limited conversation to collaborators Mar 12, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants