Skip to content

Commit 1663e74

Browse files
remove some rules we don't use amke some rules to cover some guidance for agents rather than relying instructions (#10128)
1 parent 8110f7a commit 1663e74

13 files changed

Lines changed: 47 additions & 168 deletions

File tree

claude.md

Lines changed: 4 additions & 124 deletions
Original file line numberDiff line numberDiff line change
@@ -30,45 +30,16 @@ All pages require standard attributes (`:page-platform:`, `:page-description:`,
3030
- **Bad**: When you click the **Go** button your project should complete.
3131

3232
### Accessibility
33-
- Write for anyone and everyone
33+
- Write for a general audience
3434
- Assume technical competence but explain concepts clearly and simply
3535
- Complex concepts should be accessible to non-technical readers
3636

37-
### Word Choices to Avoid
38-
- **Do not** make assumptions about complexity: Avoid "easy", "easily", "simply"
39-
- **Avoid** using "please"
40-
- **Avoid** ambiguous language like "should" and "should be". If something is optional, say so. If not, make it clear it's essential
41-
- Use "using" instead of "via" (easier for non-English speakers)
42-
- **Avoid contractions**: Don't use "don't", "you're", "can't", etc. (harder for non-native English speakers)
43-
- **Avoid time-sensitive language** in main prose: "new", "soon", "in preview". Use admonitions/banners instead
44-
45-
### Inclusive Language
46-
Replace problematic terms with inclusive alternatives:
47-
48-
| Avoid | Use Instead |
49-
|-------|-------------|
50-
| Blacklist / Whitelist | Blocklist / Safelist |
51-
| Master / Slave | Leader / Follower or Primary / Replica |
52-
| Insane / Sane / Crazy | Unreasonable / Reasonable |
53-
| Killer | Very successful |
54-
| Guys | Folks, y'all, people, humans, teammates |
55-
5637
### CircleCI-Specific Terminology
5738
- The CircleCI web interface is the "web app"
5839
- Use "CI/CD" to describe what we do
5940
- Pipelines are **triggered**, not "run"
6041
- Feature names are rarely capitalized (exceptions: Insights)
6142

62-
## Abbreviations
63-
- **Do not use** "e.g." or "i.e."
64-
- **Use instead**: "for example" and "that is"
65-
66-
## Punctuation
67-
- **Avoid semicolons and dashes** (en or em) to split sentences. Use new sentences or commas and periods
68-
- **Do not use ampersands (&)** as a substitute for "and" (reserved for logical AND operator)
69-
- **No period at end** if sentence ends with URL, code sample, or command (prevents copy-paste errors)
70-
- **Use the Oxford comma**: "Please bring me a pencil, eraser, and notebook."
71-
7243
## Numbers
7344
- **Write out** numbers one through nine
7445
- **Use numerals** for 10 and above
@@ -85,7 +56,6 @@ Replace problematic terms with inclusive alternatives:
8556
- Log in to your account …
8657
- Read the setup guide …
8758
- Set up your account …
88-
- Use "open source" (not "opensource" or "open-source")
8959

9060
## AsciiDoc Formatting
9161

@@ -136,14 +106,9 @@ Click the icon:settings[Settings icon] to access project settings.
136106
- Write headings in **logical sequence** that tells a story
137107
- **Do not skip heading levels** (e.g., h2 to h4)
138108
- Include at least an intro paragraph before subheadings
139-
- **Use sentence case**: Only capitalize first word and proper nouns
140-
- **Good**: CircleCI docs style guide
141-
- **Bad**: CircleCI Docs Style Guide
142109
- **Start headings with verbs** where possible:
143110
- **Good**: "Grooming cats"
144111
- **Bad**: "Cats"
145-
- **No punctuation at end of headings** (no periods or colons)
146-
- **Do not use inline literal text** (backticks) in headings
147112
- When referencing headings in prose, use full heading with no quotes and title case
148113

149114
### Cross-References
@@ -157,10 +122,7 @@ xref:guides:integration:github-integration.adoc#user-keys-and-deploy-keys[User K
157122
- **Use title case for link text** (Vale enforced):
158123
- **Good**: `xref:guides:orchestrate:schedule-triggers.adoc[Schedule Triggers]`
159124
- **Bad**: `xref:guides:orchestrate:schedule-triggers.adoc[schedule triggers]`
160-
- Capitalize all major words in the link text (nouns, verbs, adjectives, adverbs)
161-
- Keep articles (a, an, the), conjunctions (and, but, or), and short prepositions (in, on, at) lowercase unless they're the first word
162-
163-
**IMPORTANT: Always verify xrefs before using them**
125+
- Always verify xrefs before using them. Check that the page you are referencing exists in the location you are using to create the resource ID
164126

165127
Before adding any xref to a document, you must verify the target file exists and the path is correct:
166128

@@ -458,8 +420,6 @@ Content for Tab B
458420
459421
## AsciiDoc Validation Rules
460422
- Close all attribute blocks properly
461-
- Use matching callouts in code blocks
462-
- Ensure sequential numbered callouts
463423
- Use valid admonition block syntax
464424
- Use valid code block syntax
465425
- Use valid table block syntax
@@ -473,28 +433,6 @@ The CircleCI docs use automated linting to enforce style rules and catch common
473433

474434
Vale is a syntax-aware linter that enforces style rules defined in the `styles/` directory. It checks for grammar, style violations, and CircleCI-specific conventions.
475435

476-
**Key automated rules:**
477-
478-
- **Character limits**:
479-
- `:page-description:` must be 70-160 characters
480-
- Sentences should not exceed 25 words (readability)
481-
- Headings have length limits
482-
483-
- **Capitalization**:
484-
- Link text in xrefs must use title case (e.g., "Schedule Triggers" not "schedule triggers")
485-
- Headings must use sentence case (only first word and proper nouns capitalized)
486-
487-
- **Forbidden/problematic terms**:
488-
- Avoid "master/slave" → use "primary/replica" or "leader/follower"
489-
- Avoid "blacklist/whitelist" → use "blocklist/safelist"
490-
- Avoid "easy", "easily", "simply", "just" (assumes complexity)
491-
- No contractions (don't, can't, won't, etc.)
492-
493-
- **Style violations**:
494-
- More than 3 commas in a sentence
495-
- Passive voice constructions
496-
- Missing periods on full sentences in lists
497-
498436
**Running Vale locally:**
499437

500438
```bash
@@ -513,16 +451,6 @@ git diff --cached --name-only | grep '.adoc$' | xargs vale
513451
- Style rules: `styles/` directory
514452
- Custom CircleCI rules: `styles/CircleCI/`
515453

516-
**Common Vale errors and fixes:**
517-
518-
| Error | Fix |
519-
|-------|-----|
520-
| `CircleCI.TitleCase` | Use title case in link text: "Schedule Triggers" |
521-
| `CircleCI.SentenceLength` | Break long sentences (25+ words) into shorter ones |
522-
| `CircleCI.Description` | Shorten `:page-description:` to 160 characters or less |
523-
| `Vale.Spelling` | Check spelling or add to custom dictionary |
524-
| `CircleCI.Contractions` | Expand contractions: "don't" → "do not" |
525-
526454
### AsciiDoc Validation
527455

528456
In addition to Vale, the build process validates AsciiDoc syntax:
@@ -565,8 +493,8 @@ The CircleCI docs use Antora's component-based architecture:
565493
- **Reference**: Technical reference material (config, API, CLI)
566494
- **Orbs**: Orb-related documentation
567495
- **Server Admin**: Self-hosted server docs (versioned by release)
568-
- **Services**: Service-specific documentation
569-
- **Contributors**: Meta-documentation for contributors
496+
- **Services**: Field engineering service docs
497+
- **Contributors**: Documentation for contributors including the style guide and page templates
570498
571499
### Component Organization
572500

@@ -687,54 +615,6 @@ head -10 docs/guides/modules/toolkit/pages/existing-page.adoc
687615

688616
**Navigation not updating**: Restart dev server after nav.adoc changes
689617

690-
## Answering User Questions About CircleCI
691-
692-
This file focuses on **how to write documentation**. When users ask questions **about using CircleCI** (not about writing docs), you should:
693-
694-
### Reference the llms.txt File
695-
The `llms.txt` file (available at https://circleci.com/docs/llms.txt) contains:
696-
- CircleCI product overview and features
697-
- Documentation structure and navigation
698-
- Content areas (Guides, Reference, Orbs, Server Admin)
699-
- Common URL patterns and documentation locations
700-
701-
### Two Different Use Cases
702-
703-
**Use Case 1: User asks about CircleCI features**
704-
- Example: "How do I cache dependencies in CircleCI?"
705-
- Example: "What executors does CircleCI support?"
706-
- Example: "How do I set up GitHub integration?"
707-
- **Action**: Reference `llms.txt` to understand documentation structure, then locate and explain relevant content
708-
- **Voice**: Use the same active, direct, accessible voice described in this guide
709-
710-
**Use Case 2: User asks to create/edit documentation**
711-
- Example: "Add a new guide about Docker caching"
712-
- Example: "Update the environment variables page"
713-
- Example: "Fix the formatting in this AsciiDoc file"
714-
- **Action**: Use this file (`claude.md`) for writing style, voice, and formatting rules
715-
- Also reference `llms.txt` to understand where content fits in the overall structure
716-
717-
### Explaining CircleCI Concepts
718-
When answering questions about CircleCI features:
719-
- Apply the same voice and style rules from this guide (active voice, direct language, no jargon)
720-
- Break down complex concepts into simple explanations
721-
- Provide practical, actionable guidance
722-
- Link to relevant documentation sections using the URL patterns in `llms.txt`
723-
- Use correct CircleCI terminology (pipelines are "triggered", web interface is "web app", etc.)
724-
725-
### Example Scenarios
726-
727-
**Question**: "How do I cache npm dependencies?"
728-
- Reference `llms.txt` to find caching is in the Guides > Optimize section
729-
- Explain the concept using active voice and clear language
730-
- Point to: https://circleci.com/docs/guides/optimize/caching-strategies/
731-
- Provide practical code examples if helpful
732-
733-
**Question**: "Add a troubleshooting section about cache misses"
734-
- Use `claude.md` (this file) for writing style
735-
- Use `llms.txt` to determine this fits in Reference > General > Troubleshooting
736-
- Follow all formatting, voice, and style guidelines when creating content
737-
738618
## When Editing Existing Documentation
739619
- Follow these guidelines for new content
740620
- When touching existing sections, update them to meet current standards

styles/Openly/Clarity.yml

Lines changed: 0 additions & 8 deletions
This file was deleted.

styles/Openly/Punctuation.yml

Lines changed: 0 additions & 12 deletions
This file was deleted.

styles/Openly/Readability.yml

Lines changed: 0 additions & 8 deletions
This file was deleted.

styles/Openly/UnclearAntecedent.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
extends: existence
3-
message: "'%s' is an unclear antecedent"
3+
message: "'%s' is an unclear antecedent. Clarify what 'this' refers to."
44
ignorecase: true
55
level: error
66
raw:
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
extends: metric
2-
message: "Try to keep the Flesch–Kincaid grade level (%s) below 8."
2+
message: "Try to keep the Flesch–Kincaid grade level (%s) below 10. Up to 12 is fine for reference material. A stretch target of 8/9 is good for how-to guides."
33
link: https://en.wikipedia.org/wiki/Flesch%E2%80%93Kincaid_readability_tests
44

55
formula: |
66
(0.39 * (words / sentences)) + (11.8 * (syllables / words)) - 15.59
77
8-
condition: "> 8"
8+
condition: "> 10"

styles/Readability/GunningFog.yml

Lines changed: 0 additions & 8 deletions
This file was deleted.
Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
extends: existence
22
message: "Try to avoid using '%s'."
33
ignorecase: true
4-
level: suggestion
4+
level: error
55
tokens:
6+
- please
67
- am
78
- aren't
89
- been
@@ -26,4 +27,11 @@ tokens:
2627
- where's
2728
- who's
2829
- you're
29-
- you've
30+
- you've
31+
- should
32+
- should be
33+
- can't
34+
- won't
35+
- don't
36+
- easily
37+
- simply

styles/circleci-docs/Max3Commas.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
extends: occurrence
2-
message: "More than 3 commas!"
2+
message: "More than 3 commas! Sometimes it is okay to use more than three commas but it is good to check if the sentence should be split up using a list."
33
level: warning
44
# Here, we're counting the number of times a comma appears
55
# in a sentence.

styles/circleci-docs/Passive.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,6 @@ tokens:
100100
- pled
101101
- proven
102102
- put
103-
- quit
104103
- read
105104
- rid
106105
- ridden

0 commit comments

Comments
 (0)