Skip to content

Commit 3957520

Browse files
authored
Merge pull request #228 from flashcatcloud/doc-review/2026-07-29-194515
docs: sync doc-review findings (2026-07-29)
2 parents 395780b + 692a7e9 commit 3957520

38 files changed

Lines changed: 354 additions & 86 deletions

en/ai-sre/agents.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ On the A2A Agents list page, click **Add A2A Agent** and fill in the form:
7777
| Streaming | bool | on | Whether to communicate with the remote agent in streaming mode |
7878
| User Auth Mode | enum | `shared` | See "Auth Modes" below |
7979
| Skip TLS certificate verification | bool | off | Shown only when the Card URL uses HTTPS. Enable only when the remote endpoint uses a self-signed certificate inside a controlled network; this skips certificate-chain and hostname verification |
80-
| Allow OAuth discovery over HTTP | bool | off | Required only when "Per-user OAuth" is selected and the Card URL is a non-local HTTP URL. Use only in controlled test environments; after you enable it, the Safari service can fetch OAuth metadata from that host |
80+
| Allow OAuth discovery over HTTP | bool | off | Required only when "Per-user OAuth" is selected and the Card URL is a non-local HTTP URL. Use only in controlled test environments; after you enable it, the AI SRE service can fetch OAuth metadata from that host |
8181

8282
### Using the FlashAI Template
8383

@@ -199,8 +199,8 @@ The full lifecycle of A2A agents is managed on the **Plugins → Agents** page.
199199
<Accordion title="Delete" icon="trash">
200200
Remove an A2A agent from the current scope. **Active sessions that delegated to it will fail.** Deletion requires confirmation.
201201
</Accordion>
202-
<Accordion title="Filter by scope" icon="filter">
203-
The scope filter bar at the top of the list lets you switch between "All", "Account only", and "Specific team", making it easy to focus on relevant resources when managing many. Each row also has a label showing its scope (account / team name).
202+
<Accordion title="Filter by scope and search" icon="filter">
203+
The scope filter bar at the top of the list lets you switch between "All", "Account only", and "Specific team", making it easy to focus on relevant resources when managing many. Each row also has a label showing its scope (account / team name). The search box to the right of the filter bar filters the list by keywords in the name, instructions, or Card URL.
204204
</Accordion>
205205
</AccordionGroup>
206206

en/ai-sre/mcp.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ OAuth authorization completes through a browser **bounce page** at `/oauth-callb
164164

165165
---
166166

167-
The MCP list displays each server's **name** (including its AI description), **scope** (account or team name), **transport**, an **enabled** toggle, and an **actions** column — the list only contains MCP servers you have added to the account; the built-in Flashduty MCP server is injected by the runtime and does not appear in this list, see "Inspection" below. The scope filter bar at the top lets you switch between All / Account / Team views.
167+
The MCP list displays each server's **name** (including its AI description), **scope** (account or team name), **transport**, an **enabled** toggle, and an **actions** column — the list only contains MCP servers you have added to the account; the built-in Flashduty MCP server is injected by the runtime and does not appear in this list, see "Inspection" below. The scope filter bar at the top lets you switch between All / Account / Team views, and the search box to its right filters the list by keywords in the name, description, transport, or URL.
168168

169169
<AccordionGroup>
170170
<Accordion title="Enable / Disable" icon="toggle-on">

en/ai-sre/sessions.mdx

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Console
3-
description: An AI SRE session holds one complete conversation between you and the agent, including messages, streaming responses, tool calls, and artifacts. This page covers creating and managing sessions, sending messages, previewing artifacts, session forking, context compaction, team binding, and session data export.
3+
description: An AI SRE session holds one complete conversation between you and the agent, including messages, streaming responses, tool calls, and artifacts. This page covers creating and managing sessions, sharing, sending messages, previewing artifacts, session forking, context compaction, team binding, and session data export.
44
keywords: ["AI SRE", "session", "chat", "streaming response", "tool call", "Artifacts", "Fork", "context compaction", "team binding", "export", "NDJSON"]
55
sidebarTitle: Console
66
---
@@ -61,6 +61,24 @@ The account is the hard access boundary for sessions: sessions are never accessi
6161

6262
Pinning is a personal preference and does not modify the session itself; if you can read a session, you can pin or unpin it for yourself. Account owners and admins can manage team sessions, but they cannot read or manage another member's personal session.
6363

64+
### Sharing a Session
65+
66+
The chat page header provides share controls, shown only when you have manage permission on the current session. Click the **Copy share link** button to enable sharing and copy the link to your clipboard (a "Share link copied" toast appears). The link appends a `share_token` to the current session URL, with the token in the URL fragment (after `#`). The share link is **stable**: while sharing stays enabled, copying it again yields the same link.
67+
68+
| Topic | Details |
69+
|---|---|
70+
| Who can share | Members with manage permission on the session — the creator of a personal session, or the creator / account owner / admin / team members of a team session |
71+
| Who can open it | Members who hold the link and are signed in to the **same account**; the link does not work across accounts or for anonymous visitors |
72+
| What link holders see | The session opens in **read-only** mode with a "This is a read-only shared session" notice: they can inspect the full context (messages, tool calls, artifacts), but the composer is replaced by the notice — they cannot continue the conversation or modify the original session |
73+
| How to keep working | Link holders can click **Fork into a new session** to derive their own session and continue from there |
74+
| How to revoke | Once sharing is enabled, a **Remove share** button appears in the header; clicking it invalidates the link immediately (a "Share removed" toast appears). Re-enabling sharing later generates a new link — the old link is not restored |
75+
76+
Sharing mainly changes the visibility of **personal sessions**: a team session is already readable by any member of the same account who has the session ID (see the table above), whereas a personal session is visible only to its creator by default — a share link is the only way for other members of the account to open it.
77+
78+
<Note>
79+
Incognito sessions and Subagent sessions cannot be shared.
80+
</Note>
81+
6482
### Per-Session Actions
6583

6684
Hover over a session row to reveal the pin and archive actions. A pinned session displays a persistent pin icon to the left of its name.

en/ai-sre/skills.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ Skill archive size limits: archives saved by the agent in-conversation are cappe
160160

161161
---
162162

163-
The skill list displays each skill's **name** (with source template badge and **Update available** marker), **scope** (account or team), **version**, **enabled** toggle, and an **actions** column.
163+
The skill list displays each skill's **name** (with source template badge and **Update available** marker), **scope** (account or team), **version**, **enabled** toggle, and an **actions** column. The toolbar above the list provides a scope filter (All / Account / Team) and a search box that filters the list by keywords in the name, description, or author.
164164

165165
<AccordionGroup>
166166
<Accordion title="Enable / Disable" icon="toggle-on">

en/monitors/alert-rules/clickhouse.mdx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,14 @@ This mode is suitable for scenarios requiring threshold comparison on aggregated
3030
GROUP BY service_name
3131
```
3232
2. **Field Mapping**:
33-
- **Label Fields**: Fields used to distinguish different alert objects. In the above example, it's `service_name`. This field can be left empty; Monitors will automatically treat all fields except value fields as label fields.
34-
- **Value Fields**: Numeric fields used for threshold evaluation. In the above example, it's `error_cnt`.
33+
- **Value Fields**: Numeric fields used for threshold evaluation. In the above example, it's `error_cnt`. Monitors automatically treats fields other than the value fields in the query result as labels (`service_name` in the above example).
3534
3. **Threshold Conditions**:
3635
- Use `$A.field_name` to reference values.
3736
- Example: `Critical: $A.error_cnt > 50`, `Warning: $A.error_cnt > 10`.
3837

3938
### How It Works
4039

41-
The engine executes the SQL query and gets the result set. It groups data by "label fields", then extracts "value fields" values to compare against threshold expressions.
40+
The engine executes the SQL query and gets the result set. It automatically groups data using fields other than the value fields as labels, then extracts the "value fields" values to compare against threshold expressions.
4241

4342
### Recovery Logic
4443

@@ -113,6 +112,6 @@ ClickHouse is very sensitive to time partitions. Always include time range filte
113112
</Accordion>
114113

115114
<Accordion title="Field Case">
116-
Monitors engine converts column names returned by ClickHouse to lowercase. When filling in "label fields" and "value fields", always use lowercase letters.
115+
Monitors engine converts column names returned by ClickHouse to lowercase. When filling in "value fields", always use lowercase letters.
117116
</Accordion>
118117
</AccordionGroup>

en/monitors/alert-rules/mysql.mdx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,14 @@ This mode is suitable for scenarios requiring threshold comparison on aggregated
3030
GROUP BY service_name
3131
```
3232
2. **Field Mapping**:
33-
- **Label Fields**: Fields used to distinguish different alert objects. In the above example, it's `service_name`. This field can be left empty; Monitors will automatically treat all fields except value fields as label fields.
34-
- **Value Fields**: Numeric fields used for threshold evaluation. In the above example, it's `error_cnt`.
33+
- **Value Fields**: Numeric fields used for threshold evaluation. In the above example, it's `error_cnt`. Monitors automatically treats fields other than the value fields in the query result as labels (`service_name` in the above example).
3534
3. **Threshold Conditions**:
3635
- Use `$A.field_name` to reference values.
3736
- Example: `Critical: $A.error_cnt > 50`, `Warning: $A.error_cnt > 10`.
3837

3938
### How It Works
4039

41-
The engine executes SQL query and gets the result set. It groups data by "label fields", then extracts "value fields" values to compare against threshold expressions.
40+
The engine executes SQL query and gets the result set. It automatically groups data using fields other than the value fields as labels, then extracts the "value fields" values to compare against threshold expressions.
4241

4342
### Recovery Logic
4443

@@ -105,6 +104,6 @@ Recommended syntax: `log_time > now() - INTERVAL 5 MINUTE`
105104
</Accordion>
106105

107106
<Accordion title="Field Case">
108-
Monitors engine converts column names returned by MySQL to lowercase. When filling in "label fields" and "value fields", always use lowercase letters.
107+
Monitors engine converts column names returned by MySQL to lowercase. When filling in "value fields", always use lowercase letters.
109108
</Accordion>
110109
</AccordionGroup>

en/monitors/alert-rules/oracle.mdx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,14 @@ This mode is suitable for scenarios requiring threshold comparison on aggregated
3030
GROUP BY service_name
3131
```
3232
2. **Field Mapping**:
33-
- **Label Fields**: Fields used to distinguish different alert objects. In the above example, it's `service_name`. This field can be left empty; Monitors will automatically treat all fields except value fields as label fields.
34-
- **Value Fields**: Numeric fields used for threshold evaluation. In the above example, it's `error_cnt`.
33+
- **Value Fields**: Numeric fields used for threshold evaluation. In the above example, it's `error_cnt`. Monitors automatically treats fields other than the value fields in the query result as labels (`service_name` in the above example).
3534
3. **Threshold Conditions**:
3635
- Use `$A.field_name` to reference values.
3736
- Example: `Critical: $A.error_cnt > 50`, `Warning: $A.error_cnt > 10`.
3837

3938
### How It Works
4039

41-
The engine executes SQL query and gets the result set. It groups data by "label fields", then extracts "value fields" values to compare against threshold expressions.
40+
The engine executes SQL query and gets the result set. It automatically groups data using fields other than the value fields as labels, then extracts the "value fields" values to compare against threshold expressions.
4241

4342
### Recovery Logic
4443

@@ -105,6 +104,6 @@ Recommended syntax: `log_time > SYSDATE - INTERVAL '5' MINUTE`
105104
</Accordion>
106105

107106
<Accordion title="Field Case">
108-
Monitors engine converts column names returned by Oracle to lowercase. When filling in "label fields" and "value fields", always use lowercase letters.
107+
Monitors engine converts column names returned by Oracle to lowercase. When filling in "value fields", always use lowercase letters.
109108
</Accordion>
110109
</AccordionGroup>

en/monitors/alert-rules/postgres.mdx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,14 @@ This mode is suitable for scenarios requiring threshold comparison on aggregated
3030
GROUP BY service_name
3131
```
3232
2. **Field Mapping**:
33-
- **Label Fields**: Fields used to distinguish different alert objects. In the above example, it's `service_name`. This field can be left empty; Monitors will automatically treat all fields except value fields as label fields.
34-
- **Value Fields**: Numeric fields used for threshold evaluation. In the above example, it's `error_cnt`.
33+
- **Value Fields**: Numeric fields used for threshold evaluation. In the above example, it's `error_cnt`. Monitors automatically treats fields other than the value fields in the query result as labels (`service_name` in the above example).
3534
3. **Threshold Conditions**:
3635
- Use `$A.field_name` to reference values.
3736
- Example: `Critical: $A.error_cnt > 50`, `Warning: $A.error_cnt > 10`.
3837

3938
### How It Works
4039

41-
The engine executes SQL query and gets the result set. It groups data by "label fields", then extracts "value fields" values to compare against threshold expressions.
40+
The engine executes SQL query and gets the result set. It automatically groups data using fields other than the value fields as labels, then extracts the "value fields" values to compare against threshold expressions.
4241

4342
### Recovery Logic
4443

@@ -105,6 +104,6 @@ Recommended syntax: `log_time > NOW() - INTERVAL '5 minutes'`
105104
</Accordion>
106105

107106
<Accordion title="Field Case">
108-
Monitors engine converts column names returned by PostgreSQL to lowercase. When filling in "label fields" and "value fields", always use lowercase letters.
107+
Monitors engine converts column names returned by PostgreSQL to lowercase. When filling in "value fields", always use lowercase letters.
109108
</Accordion>
110109
</AccordionGroup>

en/monitors/alert-rules/sls.mdx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,14 @@ This mode is suitable for scenarios requiring threshold comparison on aggregated
3131
- `sls.timespan.value`: (Optional) Time span value, default is 15.
3232
- `sls.timespan.unit`: (Optional) Time span unit, supports `s` (seconds), `m` (minutes), `h` (hours), `d` (days). Default is `m`.
3333
3. **Field Mapping**:
34-
- **Label Fields**: Fields used to distinguish different alert objects. In the above example, it's `host`. This field can be left empty; Monitors will automatically treat all fields except value fields as label fields.
35-
- **Value Fields**: Numeric fields used for threshold evaluation. In the above example, it's `error_cnt`.
34+
- **Value Fields**: Numeric fields used for threshold evaluation. In the above example, it's `error_cnt`. Monitors automatically treats fields other than the value fields in the query result as labels (`host` in the above example).
3635
4. **Threshold Conditions**:
3736
- Use `$A.field_name` to reference values.
3837
- Example: `Critical: $A.error_cnt > 50`, `Warning: $A.error_cnt > 10`.
3938

4039
### How It Works
4140

42-
The engine calls SLS API, specifying time range (like last 15 minutes), executing SQL query. After getting results, it groups by "label fields", extracts "value fields" to compare against thresholds.
41+
The engine calls SLS API, specifying time range (like last 15 minutes), executing SQL query. After getting results, it automatically groups data using fields other than the value fields as labels, then extracts "value fields" to compare against thresholds.
4342

4443
### Recovery Logic
4544

en/monitors/alert-rules/victorialogs.mdx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ Calls `/select/logsql/query` interface, returning two-dimensional table data.
1818
| Query Statement | e.g., `error \| fields _time, _stream, _msg \| sort by (_time) desc` |
1919
| Return Limit | Limit maximum returned rows, max can be set to 100 |
2020
| Time Range | Specify query time window, e.g., "last 5 minutes" |
21-
| Label Fields | Used to distinguish different alert entities, can configure multiple |
2221
| Value Fields | Required in threshold evaluation mode |
2322
</Tab>
2423

@@ -57,7 +56,7 @@ Result looks like:
5756
|-------|-------|
5857
| ERROR | 150 |
5958

60-
Configure value field as `total`, label field as `level` (or leave empty, Monitors will auto-detect). Different threshold different level configuration examples:
59+
Configure the value field as `total`; Monitors automatically recognizes fields other than the value fields (`level` in the above example) as labels. Different threshold different level configuration examples:
6160

6261
- Warning: `$A.total >= 50` or shorthand `$A >= 50` (since there's only one value field: total)
6362
- Critical: `$A.total >= 100` or shorthand `$A >= 100` (since there's only one value field: total)

0 commit comments

Comments
 (0)