You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: contribute-docs/on-the-web.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@
3
3
Learn how to make documentation updates directly in your browser without setting up a local development environment.
4
4
5
5
:::{tip}
6
-
If you're working in [GitHub Codespaces](https://github.com/features/codespaces) or [github.dev](https://github.dev), you can install the [VS Code extension](tools.md#vs-code-extension) to simplify the authoring experience.
6
+
If you're working in [GitHub Codespaces](https://github.com/features/codespaces) or [github.dev](https://github.dev), you can install the [Elastic Docs Utilities extension](vscode-extension.md) to simplify the authoring experience.
Copy file name to clipboardExpand all lines: contribute-docs/tools.md
+4-25Lines changed: 4 additions & 25 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,31 +6,10 @@ navigation_title: Tools
6
6
7
7
These tools help you write documentation more efficiently, reduce context-switching, and catch errors before you commit.
8
8
9
-
## VS Code extension
9
+
## Elastic Docs Utilities extension
10
10
11
-
The [Elastic Docs Utilities extension](https://marketplace.visualstudio.com/items?itemName=Elastic.elastic-docs-v3-utilities) simplifies authoring with autocompletion, catches syntax errors with real-time validation, and enables you to preview variables inline.
11
+
The [Elastic Docs Utilities extension](vscode-extension.md) for Visual Studio Code and compatible IDEs provides autocompletion for directives, frontmatter, and inline roles, along with real-time validation and variable previews. It works in the Visual Studio Code desktop application and browser-based editors.
12
12
13
-
:::{image} images/elastic-docs-vscode.gif
14
-
:screenshot:
15
-
:alt: Elastic Docs VS Code extension demo
16
-
:width: 800px
17
-
:::
13
+
## Vale linter
18
14
19
-
### Availability
20
-
21
-
The extension is available in VS Code whether you're:
22
-
23
-
- Working [locally](locally.md) in the VS Code desktop application
24
-
- Working [in the browser](on-the-web.md) in VS Code web editors ([GitHub Codespaces](https://github.com/features/codespaces), [github.dev](https://github.dev))
25
-
26
-
### Key capabilities
27
-
28
-
- Autocompletion for directives, frontmatter, and inline roles
29
-
- Real-time validation of syntax and structure
30
-
- Variable previews and substitution support
31
-
32
-
### Installation
33
-
34
-
You can install the extension from the [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=Elastic.elastic-docs-v3-utilities).
35
-
36
-
% TODO: Add Vale and LLM sections when ready.
15
+
The [Vale ruleset](vale-linter.md) allows the Vale linter to check your documentation against Elastic style guide rules. It integrates with your editor and CI/CD pipeline to catch style issues before they reach production.
[Vale](https://github.com/errata-ai/vale) is an open source prose linter that checks the content of documents in several formats against style guide rules. The goal of a prose linter is automating style guide checks in docs-as-code environments, so that style issues are detected before deploy or while editing documentation in a code editor.
8
+
9
+
The Elastic Vale package contains a set of linting rules based on the Elastic style guide and recommendations.
10
+
11
+
## Get started
12
+
13
+
Run these commands to install the Elastic style guide locally:
The installation script might overwrite your existing global Vale configuration. Install the style manually if you're using styles other than Elastic.
45
+
:::
46
+
47
+
### Install the Visual Studio Code extension
48
+
49
+
Install the [Vale VSCode](https://marketplace.visualstudio.com/items?itemName=ChrisChinchilla.vale-vscode) extension to view Vale checks when saving a document. The extension is also available for other editors that support the Open VSX Registry.
50
+
51
+
## Add the Vale action to your repo
52
+
53
+
Add the Elastic Vale linter to your repository's CI/CD pipeline using a two-workflow setup that supports fork PRs:
For detailed documentation and examples, refer to [ACTION_USAGE.md](https://github.com/elastic/vale-rules/blob/main/ACTION_USAGE.md).
109
+
110
+
## Exclude content from linting
111
+
112
+
You can use HTML comments in your Markdown files to control Vale's behavior for specific sections of content. This is useful when you need to temporarily turn off checks or exclude certain content from linting.
113
+
114
+
### Turn off all Vale checks
115
+
116
+
To exclude a section of content from linting, wrap it with `vale off` and `vale on` comments:
117
+
118
+
```markdown
119
+
<!-- vale off -->
120
+
121
+
This entire section will be ignored by Vale.
122
+
123
+
<!-- vale on -->
124
+
```
125
+
126
+
### Turn off a specific rule
127
+
128
+
To turn off a specific Elastic style rule for a section, use the rule name with `= NO` and `= YES` to turn it back on:
129
+
130
+
```markdown
131
+
<!-- vale Elastic.RuleName = NO -->
132
+
133
+
This content will ignore only the specified rule.
134
+
135
+
<!-- vale Elastic.RuleName = YES -->
136
+
```
137
+
138
+
For example, to turn off the `Elastic.WordChoice` rule:
139
+
140
+
```markdown
141
+
<!-- vale Elastic.WordChoice = NO -->
142
+
143
+
This section can contain mispellings without triggering warnings.
144
+
145
+
<!-- vale Elastic.WordChoice = YES -->
146
+
```
147
+
148
+
:::{tip}
149
+
You can find the exact rule names in the [Elastic Vale rules repository](https://github.com/elastic/vale-rules/tree/main/styles/Elastic). Each rule is defined in a separate `.yml` file, and the filename (without the extension) is the rule name you use in comments.
150
+
:::
151
+
152
+
For more information about comment-based configuration, refer to the [Vale Markdown documentation](https://vale.sh/docs/formats/markdown#comments).
153
+
154
+
## Update the style guide
155
+
156
+
To update the Elastic style guide to the latest rules, rerun the installation script.
157
+
158
+
## Resources
159
+
160
+
- [Vale's official documentation](https://vale.sh/docs/vale-cli/overview/)
The Elastic Docs Utilities extension for Visual Studio Code and compatible IDEs provides autocompletion for Elastic Docs' Markdown, along with other features for authoring Elastic documentation.
8
+
9
+
:::{image} images/elastic-docs-vscode.gif
10
+
:screenshot:
11
+
:alt: Elastic Docs Utilities extension demo
12
+
:width: 800px
13
+
:::
14
+
15
+
## Installation
16
+
17
+
To install the extension:
18
+
19
+
1. Open the Visual Studio Marketplace or the **Extensions** view in your editor.
20
+
2. Search for `Elastic Docs Utilities` or go to the [extension page](https://marketplace.visualstudio.com/items?itemName=elastic.elastic-docs-v3-utilities).
21
+
3. Select **Install** to add the extension to your editor.
22
+
23
+
:::{tip}
24
+
The extension is also available for other editors that support the Open VSX Registry.
25
+
:::
26
+
27
+
## Availability
28
+
29
+
You can use the extension in the following ways:
30
+
31
+
- Working [locally](locally.md) in the Visual Studio Code desktop application.
32
+
- Working [in the browser](on-the-web.md) in Visual Studio Code web editors.
33
+
34
+
## Features
35
+
36
+
Elastic Docs Utilities provides the following features for authoring Elastic documentation.
37
+
38
+
### Syntax highlighting
39
+
40
+
The extension adds syntax highlighting for directives, parameters, roles, substitution variables, and mutation operators that works alongside standard Markdown highlighting.
41
+
42
+
### Autocompletion
43
+
44
+
The extension autocompletes standard and inline directives as you type. When you add frontmatter to your documents, it suggests valid field names and values.
45
+
46
+
The extension also provides autocompletion for inline roles like `{icon}`, `{kbd}`, `{applies_to}`, and `{subs}`. Type `{{` to see substitution variables from your `docset.yml` files and document frontmatter, and type `|` after any variable to view available mutation operators for text and version transformations.
47
+
48
+
### Validation and diagnostics
49
+
50
+
The extension validates your frontmatter fields against the schema and provides real-time syntax validation for directives, showing red underlines and hover cards when it detects errors. It also warns you when you're using literal values that should be replaced with substitution variables, helping maintain consistency across your documentation.
51
+
52
+
### Tooltips
53
+
54
+
Hover over existing `{{variable}}` references to see their full values and mutation transformations. When variables use mutation operators, you can view step-by-step transformation results in the preview.
55
+
56
+
## Substitution variables
57
+
58
+
The extension supports autocompletion for substitution variables defined in `docset.yml` files and document frontmatter (`sub:` field). These variables can be used throughout your Markdown files with the `{{variable}}` syntax.
59
+
60
+
### Substitution validation and quick fixes
61
+
62
+
The extension automatically detects when you're using literal values that can be replaced with substitution variables. For example, the extension shows a warning when you type "APM" directly in your content, suggesting you use `{{product.apm}}` instead.
63
+
64
+
When the extension detects a literal value that should be replaced, you can:
65
+
66
+
- Click the lightbulb icon that appears.
67
+
- Use the **Quick Fix** menu (Ctrl+. or Cmd+. on macOS)
68
+
- Hover over the warning and click **Quick Fix**.
69
+
70
+
The extension automatically replaces the literal text with the correct substitution variable syntax. This helps maintain consistency across your documentation and makes it easier to update product names and other values globally.
Review the changes, fixes, and more to {{serverless-full}}.
11
11
12
+
## November 10, 2025 [serverless-changelog-11102025]
13
+
14
+
### Features and enhancements [serverless-changelog-11102025-features-enhancements]
15
+
16
+
* Adds nightly maintenance for anomaly detection results indices to keep to manageable size [#136065]({{es-pull}}136065)
17
+
* Adds the ability to preview index requests in transforms [#137455]({{es-pull}}137455)
18
+
* Allows field capabilities to span across Elasticsearch Serverless projects [#137530]({{es-pull}}137530)
19
+
* Improves {{esql}} performance by skipping unnecessary query plan diff calculations in Elasticsearch Serverless [#137721]({{es-pull}}137721)
20
+
* Passes the {{es}} version in the EIS inference request header in Elasticsearch Serverless [#137643]({{es-pull}}137643)
21
+
* Introduces a synthetic `_id` format for time-series data streams [#137274]({{es-pull}}137274)
22
+
* Updates the Dashboard top navigation to include a **Save** menu [#237211]({{kib-pull}}237211)
23
+
* Moves visualization configuration settings, including appearance, titles and text, axis, and legend to a flyout panel in **Lens**[#240804]({{kib-pull}}240804)
24
+
* Supports subqueries in the Discover pretty printer [#241473]({{kib-pull}}241473)
25
+
* Adds context-aware autocomplete for Discover subqueries with nesting restrictions [#241912]({{kib-pull}}241912)
26
+
* Adds subquery support for columns after and validation in Discover [#241567]({{kib-pull}}241567)
27
+
* Adds support for Discover subqueries in FROM clauses across tools [#242166]({{kib-pull}}242166)
28
+
* Enables users to view the SLO associated with a burn rate rule on the rule details page in Elastic Observability Serverless [#240535]({{kib-pull}}240535)
29
+
* Exposes `sampling_rate` agent central config options to users in Elastic Observability Serverless [#241908]({{kib-pull}}241908)
30
+
* Makes the Elastic logo open a custom home page in solution view [#241571]({{kib-pull}}241571)
31
+
* Enforces the `object_src 'none'` directive in the {{kib}} content security policy [#241029]({{kib-pull}}241029)
32
+
* Adds origin configuration options for authentication providers [#239993]({{kib-pull}}239993)
33
+
* Adds the ability to cancel {{ml}} file uploads [#241297]({{kib-pull}}241297)
34
+
* Improves display of long field values in Data Visualizer top values list [#241006]({{kib-pull}}241006)
35
+
* Adds a temperature parameter to Inference AI, and OpenAI, Bedrock, and Gemini connectors [#239806]({{kib-pull}}239806)
36
+
* Adds support for custom headers in the OpenAI integration [#238710]({{kib-pull}}238710)
37
+
* Fixes public Update spaces APIs [#242136]({{kib-pull}}242136)
38
+
* Improves layout for custom inference endpoints [#241779]({{kib-pull}}241779)
39
+
* Displays field data types in the Processing table and step editor [#241825]({{kib-pull}}241825)
40
+
* Adds timezone and locale parameters to Streamlang [#241369]({{kib-pull}}241369)
41
+
* Displays field data types in the Streams Partitioning UI [#242134]({{kib-pull}}242134)
42
+
* Adds autocomplete for field values in Streams Partitioning and Processing tabs [#241119]({{kib-pull}}241119)
43
+
* Hides document match filter controls for users without manage privileges [#242119]({{kib-pull}}242119)
44
+
45
+
### Fixes [serverless-changelog-11102025-fixes]
46
+
47
+
* Fixes feature display order when using explain in Learning to Rank (LTR) [#137671]({{es-pull}}137671)
48
+
* Fixes an issue where missing geotile buckets caused errors in Transform [#137476]({{es-pull}}137476)
49
+
* Ensures {{esql}} full text functions accept `null` values as field parameters in Elasticsearch Serverless [#137430]({{es-pull}}137430)
50
+
* Fixes a missing attribute issue in {{esql}} full text functions in Elasticsearch Serverless [#137395]({{es-pull}}137395)
51
+
* Fixes a bug in `RankDocRetrieverBuilder` when `from` is set to the default -1 value [#137637]({{es-pull}}137637)
52
+
* Prevents use-after-close errors in async search by making `MutableSearchResponse` reference-counted [#134359]({{es-pull}}134359)
53
+
* Removes early phase failures during batched search execution [#136889]({{es-pull}}136889)
54
+
* Improves SQL validation errors by providing more descriptive exception messages [#137560]({{es-pull}}137560)
55
+
* Correctly accounts for additional settings providers when determining data stream effective settings [#137407]({{es-pull}}137407)
56
+
* Adds proxy SSL options for download sources [#241115]({{kib-pull}}241115)
57
+
* Ensures {{fleet}} policy name uniqueness is enforced consistently across spaces [#239631]({{kib-pull}}239631)
58
+
* Shows warnings on the sync integrations UI when referencing other entities [#241623]({{kib-pull}}241623)
59
+
* Escapes special characters when creating {{esql}} queries for **Lens** charts in Elastic Observability Serverless [#241662]({{kib-pull}}241662)
60
+
* Fixes "Values" dropdown display on smaller screens in Elastic Observability Serverless [#241812]({{kib-pull}}241812)
61
+
* Excludes stale SLOs from group-by statistics in Elastic Observability Serverless [#240077]({{kib-pull}}240077)
62
+
* Fixes missing `EngineMetadata.type` in generic entity popovers in Elastic Security Serverless [#239661]({{kib-pull}}239661)
63
+
* Sanitizes lookup names when creating indices in Elastic Security Serverless [#240228]({{kib-pull}}240228)
64
+
* Supports multiple values in IOC flyout table tab in Elastic Security Serverless [#236110]({{kib-pull}}236110)
65
+
* Fixes top-N popover overlapping the new case flyout in Elastic Security Serverless [#242045]({{kib-pull}}242045)
0 commit comments