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
ref(skills): retire the router and category concept (#311)
Dissolving the last routers (#310) emptied both category buckets, but the
generator still emitted their headings, intro prose, and a bare table header
with no rows underneath. That ships to every agent that reads SKILL_TREE.md as
two sections advertising capabilities with nothing in them.
Removing just those sections would leave a worse state behind: a skill carrying
a category would still be scanned and validated, but nothing would render it, so
it would vanish from the tree with the script reporting success. So retire the
concept instead of half of it.
Nothing needs it. No skill carries category, parent, role, or
disable-model-invocation; outside this script nothing reads those fields at all.
What remained was ~120 lines validating and rendering a model the project has
abandoned -- router roles, parent-must-be-a-router, leaf-listed-in-its-router,
per-category tables -- none of it reachable. The hierarchy validation is
replaced by the rule that actually holds now: those four fields are rejected
outright, so a stale copy-paste or an attempt to reintroduce routing fails
loudly rather than dropping a skill silently.
The categorize pass collapses with it: one flat table means every skill is a
row, so ALL_SKILLS is the list and the STANDALONE/ROUTERS split has nothing left
to distinguish. The heading becomes "Available Skills" -- "Standalone" only
meant something in contrast to the category sections that are gone.
The inert breadcrumb check goes too. It skipped every skill that was neither a
router nor categorized, which is all of them, so no link has been checked for
some time; replacing it is a separate change.
# Escape characters that would break a markdown table cell.
198
121
escape_cell() {
199
122
printf'%s'"$1"| tr '\n'''| sed 's/|/\\|/g'
200
123
}
201
124
202
-
# Build markdown rows for standalone skills, using the full description (it is
203
-
#the routing signal for these flat skills).
204
-
build_standalone_rows() {
205
-
fornamein${STANDALONE[@]+"${STANDALONE[@]}"};do
125
+
# Build a markdown row per skill, using the full description — it is the
126
+
# routing signal now that there is nothing else to route through.
127
+
build_skill_rows() {
128
+
fornamein"${ALL_SKILLS[@]}";do
206
129
local file desc
207
130
file="$(skill_get "$name" file)"
208
131
desc="$(escape_cell "$(skill_get "$name" desc)")"
@@ -228,150 +151,52 @@ You are **Sentry's AI assistant**. You help developers set up Sentry, debug prod
228
151
229
152
2. **Wait for their answer.** Do not proceed until the user tells you what they want.
230
153
231
-
3. **Read the matching skill** from the tables below and follow its instructions step by step.
154
+
3. **Read the matching skill** from the table below and follow its instructions step by step.
232
155
233
156
Each skill file contains its own detection logic, prerequisites, and configuration steps. Trust the skill — read it carefully and follow it. Do not improvise or take shortcuts.
Self-contained skills — start here. If you're not sure what the user needs, read `sentry-get-started`; it orients you and points to the right skill.
165
+
Each one is self-contained and named for the job it does. If you're not sure what the user needs, read `sentry-get-started`; it orients you and points to the right skill.
244
166
245
167
| Skill | What it does |
246
168
|---|---|
247
-
STANDALONE_HEADER
248
-
build_standalone_rows
249
-
250
-
# Workflows
251
-
local col_wf col_fs
252
-
col_wf="$(column_header workflow)"
253
-
cat <<'WF_HEADER'
254
-
255
-
## Workflows
256
-
257
-
Debug production issues and maintain code quality with Sentry context.
Copy file name to clipboardExpand all lines: src/SKILL_TREE.md
+3-17Lines changed: 3 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,15 +14,15 @@ You are **Sentry's AI assistant**. You help developers set up Sentry, debug prod
14
14
15
15
2.**Wait for their answer.** Do not proceed until the user tells you what they want.
16
16
17
-
3.**Read the matching skill** from the tables below and follow its instructions step by step.
17
+
3.**Read the matching skill** from the table below and follow its instructions step by step.
18
18
19
19
Each skill file contains its own detection logic, prerequisites, and configuration steps. Trust the skill — read it carefully and follow it. Do not improvise or take shortcuts.
20
20
21
21
---
22
22
23
-
## Standalone Skills
23
+
## Available Skills
24
24
25
-
Self-contained skills — start here. If you're not sure what the user needs, read `sentry-get-started`; it orients you and points to the right skill.
25
+
Each one is self-contained and named for the job it does. If you're not sure what the user needs, read `sentry-get-started`; it orients you and points to the right skill.
26
26
27
27
| Skill | What it does |
28
28
|---|---|
@@ -34,17 +34,3 @@ Self-contained skills — start here. If you're not sure what the user needs, re
34
34
|[`sentry-otel-exporter-setup`](skills/sentry-otel-exporter-setup/SKILL.md)| Configure the OpenTelemetry Collector with Sentry Exporter for multi-project routing and automatic project creation. Use when setting up OTel with Sentry, configuring collector pipelines for traces and logs, or routing telemetry from multiple services to Sentry projects. |
35
35
|[`sentry-setup-releases`](skills/sentry-setup-releases/SKILL.md)| Set up Sentry releases and deploy tracking — tag events with a version and environment, create the release in CI with its commits, and wire up suspect commits and code mappings, so Sentry can show which release introduced an issue, which commit is responsible, and release health. Use when asked to set up releases, track deploys, see what changed, or when issues show an unknown release or no suspect commit. |
36
36
|[`sentry-snapshots-cocoa`](skills/sentry-snapshots-cocoa/SKILL.md)| Full Sentry Snapshots setup for Apple/Cocoa projects. Use when asked to "setup SnapshotPreviews", "setup Apple snapshot testing", "upload Apple snapshots to Sentry", "setup Apple snapshot GitHub Actions", or "setup Apple selective snapshot testing". |
37
-
38
-
## Workflows
39
-
40
-
Debug production issues and maintain code quality with Sentry context.
41
-
42
-
| Use when | Skill |
43
-
|---|---|
44
-
45
-
## Feature Setup
46
-
47
-
Configure specific Sentry capabilities beyond basic SDK setup.
0 commit comments