asd-ste100-checker skill (sourdough-bread/asd-ste100-checker)
- Install
- SKILL.md (verbatim)
- When to use
- Core principles
- Strict workflow
- MCP tools
- spaCy model (MCP)
- When to use stesuggestrewrite
- When to use stesuggestsemanticreview
- When to use steapplysafefixes
- Tier-2 rule IDs
- Tier-3 rule IDs
- Other files in this skill
- references/result-format.md (verbatim)
- Severity meanings
- Tier-2 rule IDs
- Tier-3 rule IDs
- Finding
- Suggestion
- Example Finding (JSON)
- AnalysisResult
- Example AnalysisResult (JSON)
- Related schema types (not always in check output)
- DictionaryRecord (lookup)
- Glossary (YAML profile → engine)
- SARIF note
- references/terminology-profiles.md (verbatim)
- File shape
- Field notes
- Worked example
- How to use with MCP
- Expected effect
- Authoring checklist
- references/workflow.md (verbatim)
- 0. Multi-file first pass
- 1. Classify: procedure vs description
- 2. Sentence length limits (Tier-1)
- Procedure — too long / multi-instruction
- Description — too long
- 2b. Tier-2 syntax (deterministic)
- 2c. Tier-3 semantic (hybrid heuristics)
- 3. Check → explain → suggestrewrite → (semanticreview) → host rewrite → recheck
- Rules for each rewrite pass
- 4. Vocabulary and glossary
- 5. Preserve always
- 6. Stopping criteria
- 7. Example end-to-end
What it does. Check, rewrite, or review technical procedures and descriptions for ASD-STE100-style compliance. Use for manuals, instructions, warnings, maintenance text, technical requirements, and controlled-language reviews. From sourdough-bread/asd-ste100-checker, listed on Agent skills.
| Upstream | sourdough-bread/asd-ste100-checker |
| Skill file | skill/SKILL.md |
| License | Apache-2.0 |
| Author | sourdough-bread |
| Fetched | 2026-09-10 |
Install
npx skills add sourdough-bread/asd-ste100-checker --skill asd-ste100-checker, or copy the skill folder into~/.claude/skills/asd-ste100-checker/.- Raw file:
curl -sL https://raw.githubusercontent.com/sourdough-bread/asd-ste100-checker/HEAD/skill/SKILL.md
SKILL.md (verbatim)
name: asd-ste100
description: Check, rewrite, or review technical procedures and descriptions for ASD-STE100-style compliance. Use for manuals, instructions, warnings, maintenance text, technical requirements, and controlled-language reviews.
ASD-STE100 Checker Skill
Unofficial — not affiliated with, endorsed by, or sponsored by ASD. ASD-STE100 is a registered European Union Trade Mark (No. 017966390). This skill and the companion MCP/engine are an independent tool. They make no claim of official compliance or certification.
When to use
Use this skill when the user asks to:
- Check or rewrite manuals, procedures, warnings, maintenance text, or technical descriptions for STE-style clarity
- Review controlled language / Simplified Technical English wording
- Look up whether a word is approved and what alternatives exist
- Apply safe synonym fixes before a full rewrite
- Explain what a checker
rule_idmeans and how to fix it - Check only locally changed documentation files in a git working tree
- Judge Tier-3 semantic WARNINGs (pronouns, topic sentence, POS) via a review brief
Do not use this skill for creative writing, marketing copy, or general English editing unrelated to technical procedures/descriptions.
Core principles
- Prefer short sentences (procedures ≤ 20 words; descriptions ≤ 25 words).
- Use approved dictionary words; prefer project glossary terms when provided.
- Write procedures in active, imperative mood (one instruction per sentence).
- Avoid progressive/perfect/complex verb stacks; keep multi-word nouns ≤ 3 words.
- Name nouns instead of ambiguous pronouns; put the topic in the first descriptive sentence.
- Use each approved word in its approved part of speech only.
- One meaning per word; do not invent alternate senses.
- Preserve identifiers, measurements, part numbers, and safety information.
Strict workflow
- Multi-file / PR-local docs: call
ste_check_changed_filesfirst (working tree vsHEAD, or passbase=for merge-base vs a branch; default globs*.md/*.txt/*.rst/*.adoc). - Classify the text as
procedureordescription(or leave asautoif unsure). - Check with MCP:
ste_check_text(paste) orste_check_file(path). Pass a glossary path when available. - Treat deterministic ERROR findings as authoritative. Do not dismiss ERROR results based on your own judgment (includes high-confidence
STE-POS-MISMATCH). - WARNINGs are advisory (Tier-2 parse confidence or Tier-3 semantic heuristics). Prefer fixing them; leave with rationale only if unclear, unless the user asks to clear warnings too.
- If unsure what a
rule_idmeans, callste_explain_finding(rule_id). - Optionally call
ste_apply_safe_fixesfirst for unambiguous 1:1 synonyms (e.g.utilize→use), then recheck. - Call
ste_suggest_rewriteto get a structured rewrite brief (prompt+ capped findings +constraints+ optionalsafe_fix_preview). It does not call an LLM — you (the host agent) rewrite from that brief. - If Tier-3 WARNINGs remain (
STE-PRONOUN-AMBIG,STE-TOPIC-SENTENCE, or advisorySTE-POS-MISMATCH), callste_suggest_semantic_review, judge the brief, edit, then recheck. - Propose a minimal rewrite using the brief(s). Change only what ERROR findings require (and WARNINGs when requested).
- Recheck the rewrite with
ste_check_text. - Stop only when no ERROR findings remain, or explicitly list unresolved findings and why they remain.
- Never claim certified compliance. Never claim compliance from your rewrite alone without a successful recheck.
- Preserve part numbers, measurements, identifiers, warnings, cautions, and safety-critical wording unless a finding requires a synonym that does not change meaning.
Canonical loop: check → explain → suggest_rewrite → (optional semantic_review) → host rewrite → recheck.
Details: references/workflow.md
MCP tools
| Tool | Use when |
|---|---|
ste_check_text(text, text_type="auto", glossary=None, output="json") |
Check pasted/generated text; primary loop tool |
ste_check_file(path, text_type="auto", output="json") |
Check a file on disk |
ste_check_changed_files(globs=None, text_type="auto", glossary=None, output="json", base=None) |
Check working-tree doc changes vs HEAD, or vs git merge-base HEAD <base> |
ste_lookup_word(word) |
Inspect status, meaning, alternatives, inflections, rule_ref |
ste_explain_finding(rule_id) |
Explain a finding’s rule (title, severity, STE ref, fix hints) |
ste_apply_safe_fixes(text, glossary=None) |
Apply only unambiguous 1:1 synonym replacements; returns text + diff |
ste_suggest_rewrite(text, text_type="auto", glossary=None, max_findings=20) |
Build a host-agent rewrite brief (prompt-return; no LLM API) |
ste_suggest_semantic_review(text, text_type="auto", glossary=None, max_findings=20) |
Tier-3-only semantic brief (prompt-return; no LLM API) |
spaCy model (MCP)
Check tools do not take a spaCy model parameter. Set STE100_SPACY_MODEL
in the MCP server environment before start (default en_core_web_sm).
When to use ste_suggest_rewrite
Call it after you have ERROR (or requested WARNING) findings and before you
rewrite with your own LLM. Use prompt as the rewrite instructions; respect
constraints. Optionally inspect safe_fix_preview — call
ste_apply_safe_fixes only if you want those 1:1 synonyms applied.
When to use ste_suggest_semantic_review
Call it when the check returns Tier-3 findings (especially WARNINGs for pronouns
or topic sentence). Use prompt for host judgment; clear POS ERRORs before
claiming done. Semantic WARNINGs alone do not make compliant: false.
When to use ste_apply_safe_fixes
Call it before a manual rewrite when findings are mostly vocabulary synonyms with a single clear approved alternative. Do not use it for sentence splits, voice/mood changes, or ambiguous terms—rewrite those yourself, then recheck.
Tier-2 rule IDs
| Rule ID | Meaning |
|---|---|
STE-PASSIVE |
Verbal passive in procedures (Rule 3.6) |
STE-IMPERATIVE |
Non-imperative procedural step (Rule 5.3) |
STE-VERB-FORM |
Progressive / perfect / complex verb stack (Rules 3.2 / 3.4) |
STE-NOUN-CLUSTER |
Multi-word noun longer than 3 words (Rule 2.1) |
Tier-3 rule IDs
| Rule ID | Meaning |
|---|---|
STE-PRONOUN-AMBIG |
Ambiguous pronoun (it / this / these / those / they) |
STE-TOPIC-SENTENCE |
Weak description opener (topic not clear) |
STE-POS-MISMATCH |
Approved POS clash (verb↔noun / adj↔noun); ERROR if high-confidence |
Result shapes: references/result-format.md
Project glossaries: references/terminology-profiles.md
Other files in this skill
references/result-format.md (verbatim)
Result format
Unofficial tool. Not affiliated with ASD. EU TM No. 017966390.
Primary MCP/CLI output is JSON mirroring ste100/core/schema.py. Optional
SARIF is available via output="sarif" on check tools.
Severity meanings
| Severity | Meaning | Agent action |
|---|---|---|
error |
Determinative Tier-1/Tier-2/Tier-3 violation (high-confidence) | Authoritative. Must fix or explicitly report unresolved. |
warning |
Likely issue; may be heuristic / lower-confidence Tier-2 or Tier-3 | Prefer fixing; may leave with rationale if unclear unless user asks to clear warnings. |
info |
Advisory / context | Optional; do not treat as compliance failure. |
AnalysisResult.compliant is true only when there are no ERROR-level findings (engine definition). Warnings/info alone do not make a text non-compliant in the engine’s boolean.
Tier-2 / Tier-3 findings include evidence keys: confidence, parse_cue, text_type, rule_ref. Call MCP ste_explain_finding(rule_id) for titles, fix hints, and STE mapping.
Tier-2 rule IDs
rule_id |
STE ref | Typical scope |
|---|---|---|
STE-PASSIVE |
Rule 3.6 | procedure |
STE-IMPERATIVE |
Rule 5.3 | procedure |
STE-VERB-FORM |
Rule 3.2 / 3.4 | both |
STE-NOUN-CLUSTER |
Rule 2.1 | both |
Tier-3 rule IDs
rule_id |
STE ref | Typical scope |
|---|---|---|
STE-PRONOUN-AMBIG |
STE pronoun clarity | both |
STE-TOPIC-SENTENCE |
STE topic sentence | description |
STE-POS-MISMATCH |
Rule 1.2 / 1.3 | both (ERROR if high-conf) |
ste_suggest_semantic_review returns Tier-3 findings only, plus a host-agent prompt. Semantic WARNINGs alone do not make compliant false.
Finding
A single located rule violation.
| Field | Type | Description |
|---|---|---|
rule_id |
string |
Stable rule identifier (e.g. vocabulary or sentence rule). |
severity |
"error" | "warning" | "info" |
See table above. |
message |
string |
Human-readable explanation. |
start |
int |
Inclusive UTF-8/codepoint offset into the analyzed text. |
end |
int |
Exclusive offset of the flagged span. |
sentence |
int | null |
0-based sentence index when known. |
evidence |
object |
Rule-specific context (word, count, etc.). Default {}. |
suggestions |
Suggestion[] |
Proposed replacements. Default []. |
Suggestion
| Field | Type | Description |
|---|---|---|
replacement |
string |
Proposed text for the span. |
confidence |
float |
0.0–1.0; default 0.0. |
automatic |
bool |
true if suitable for ste_apply_safe_fixes-style auto apply. Default false. |
Example Finding (JSON)
{
"rule_id": "vocabulary.unapproved",
"severity": "error",
"message": "Word 'utilize' is not approved; prefer 'use'.",
"start": 0,
"end": 7,
"sentence": 0,
"evidence": {
"word": "utilize",
"status": "unapproved"
},
"suggestions": [
{
"replacement": "use",
"confidence": 1.0,
"automatic": true
}
]
}
AnalysisResult
Full check response for ste_check_text / ste_check_file when output="json".
| Field | Type | Description |
|---|---|---|
text_type |
"auto" | "procedure" | "description" |
Effective classification used for the run (auto may be resolved by the analyzer before rules run; the returned value reflects the type applied). |
compliant |
bool |
true if no ERROR findings. |
findings |
Finding[] |
All findings; may be empty. |
summary |
object |
Aggregates (counts by severity/rule). Default {}. |
Example AnalysisResult (JSON)
{
"text_type": "procedure",
"compliant": false,
"findings": [
{
"rule_id": "sentence.length",
"severity": "error",
"message": "Procedural sentence has 24 words; maximum is 20.",
"start": 0,
"end": 118,
"sentence": 0,
"evidence": { "word_count": 24, "limit": 20 },
"suggestions": []
}
],
"summary": {
"error": 1,
"warning": 0,
"info": 0
}
}
Related schema types (not always in check output)
These models live in the same schema module; agents may see them via
ste_lookup_word or glossary loading, not always in AnalysisResult.
DictionaryRecord (lookup)
| Field | Type |
|---|---|
word |
string |
part_of_speech |
string |
status |
WordStatus enum string |
approved_meaning |
string | null |
inflections |
string[] |
alternatives |
string[] |
category |
string | null |
rule_ref |
string | null |
examples_ste / examples_non_ste |
string[] |
notes |
string | null |
WordStatus values: approved, unapproved, forbidden, technical_noun,
technical_verbs, not_approved_technical_verb.
Glossary (YAML profile → engine)
| Field | Type |
|---|---|
name |
string |
technical_nouns |
GlossaryEntry[] |
technical_verbs |
GlossaryEntry[] |
preferred_terms |
map[string, string] |
See terminology-profiles.md.
SARIF note
When output="sarif", the same findings are serialized as a SARIF 2.1.0
log suitable for CI upload / code-scanning UIs.
- Each Finding maps to a SARIF
result(ruleId←rule_id, level from severity). - Offsets map to a physical location on the analyzed artifact.
- Prefer JSON for the agent rewrite loop; use SARIF for tooling pipelines.
Severity → SARIF level (typical mapping):
| Severity | SARIF level |
|---|---|
error |
error |
warning |
warning |
info |
note |
Exact SARIF field layout is owned by ste100/core/serialize.py; treat this
section as contract intent, not a second schema.
references/terminology-profiles.md (verbatim)
Terminology profiles (project glossaries)
Unofficial tool. Not affiliated with ASD. EU TM No. 017966390.
Pass a glossary YAML path to ste_check_text / ste_apply_safe_fixes via the
glossary argument so project-specific nouns, verbs, and preferred terms are
recognized during checks and safe fixes.
The engine loads YAML into the Glossary model from ste100/core/schema.py.
File shape
name: <profile-name> # required string
technical_nouns: # optional list
- word: <lemma>
part_of_speech: noun # default: noun
status: technical_noun # default: technical_noun
approved_meaning: <str> # optional
inflections: [] # optional list of surface forms
preferred_term: <str> # optional canonical display form
technical_verbs: # optional list
- word: <lemma>
part_of_speech: verb
status: technical_verbs # default for verbs when set explicitly
approved_meaning: <str>
inflections: []
preferred_term: <str>
preferred_terms: # optional map: dispreferred → preferred
<unwanted-form>: <preferred-form>
Field notes
| Key | Purpose |
|---|---|
technical_nouns |
Product/domain nouns not in (or extending) the STE dictionary. |
technical_verbs |
Approved technical verbs for this project. |
preferred_terms |
Unambiguous 1:1 renames; safe-fixes may apply these. |
inflections |
Plural/tense forms the engine should treat as the same entry. |
preferred_term |
Optional canonical spelling for that entry. |
approved_meaning |
Single allowed sense; agents must not invent other senses. |
Keep glossaries minimal. Only add terms the project truly needs. Prefer STE approved words when they already cover the meaning.
preferred_terms must be 1:1 and unambiguous (same referent, no context
branching). Ambiguous mappings belong in agent rewrite judgment, not safe-fixes.
Worked example
File: glossaries/landing-gear.yaml
# Project terminology for landing-gear maintenance manuals.
# Unofficial STE checker profile — not an ASD publication.
name: landing-gear-maintenance
technical_nouns:
- word: torque-link
part_of_speech: noun
status: technical_noun
approved_meaning: The link that connects the landing gear oleo to the axle.
inflections:
- torque-links
preferred_term: torque-link
- word: oleo
part_of_speech: noun
status: technical_noun
approved_meaning: The shock absorber strut of the landing gear.
inflections:
- oleos
- word: bogie
part_of_speech: noun
status: technical_noun
approved_meaning: The multi-wheel truck assembly of the main landing gear.
inflections:
- bogies
technical_verbs:
- word: safeties
part_of_speech: verb
status: technical_verbs
approved_meaning: Installs a safety device or lock to prevent unwanted movement.
inflections:
- safety
- safetied
- safetying
preferred_term: safety
preferred_terms:
utilize: use
ensure: make sure
torque link: torque-link
shock strut: oleo
How to use with MCP
ste_check_text(
text=<manual excerpt>,
text_type="procedure",
glossary="glossaries/landing-gear.yaml",
output="json",
)
ste_apply_safe_fixes(
text=<manual excerpt>,
glossary="glossaries/landing-gear.yaml",
)
Expected effect
torque-link/oleo/bogieare accepted as technical nouns (not flagged as unapproved vocabulary solely for being absent from the base dictionary).utilize→useand similarpreferred_termsentries are candidates forste_apply_safe_fixes.- Agent rewrites must keep the approved_meaning of glossary terms and must not substitute unrelated synonyms for safety-critical nouns.
Authoring checklist
- One profile per product family or manual set (
nameunique and stable). - Lemmas lowercase unless the term is a required mixed-case identifier.
- List needed inflections; do not rely on guessing irregular forms.
- Put only clear synonyms in
preferred_terms. - Re-run
ste_check_textafter glossary edits—do not assume compliance without a recheck.
references/workflow.md (verbatim)
Rewrite / recheck workflow
Unofficial tool. Not affiliated with ASD. EU TM No. 017966390.
This document expands the skill workflow. The engine is deterministic; you (the agent) rewrite with your own LLM, then recheck via MCP.
0. Multi-file first pass
When the user asks about changed docs, a PR, or “what I edited locally”:
- Call
ste_check_changed_files(or CLIste100 check-changed). - It compares the working tree to
HEAD(staged + unstaged + untracked). - Default globs:
*.md,*.txt,*.rst,*.adoc(override withglobs/--glob). - Aggregate
compliantis true only when every matched file has no ERROR findings. - Then drill into individual files with
ste_check_file/ste_suggest_rewriteas needed.
Requires a git repository. If not in a repo, the tool returns a clear error.
1. Classify: procedure vs description
| Signal | Prefer procedure |
Prefer description |
|---|---|---|
| Mood | Imperative verbs, numbered steps | Declarative statements |
| Purpose | Tell the reader what to do | Explain what something is/does |
| Typical headings | Procedure, Removal, Installation, Warning | Description, Overview, Function |
If mixed, set text_type to the dominant type for the span you are checking, or use auto and accept the analyzer’s choice.
Pass the classification into ste_check_text / ste_check_file / ste_suggest_rewrite as text_type.
2. Sentence length limits (Tier-1)
| Text type | Max words per sentence |
|---|---|
| Procedure | 20 |
| Description | 25 |
Count words in the English sentence the engine segments. Split long sentences; do not pack multiple instructions into one procedural sentence.
Procedure — too long / multi-instruction
Remove the cover and disconnect the cable and inspect the connector for damage.
Rewrite (one instruction per sentence, ≤ 20 words):
Remove the cover.
Disconnect the cable.
Inspect the connector for damage.
Description — too long
The hydraulic pump supplies pressure to the landing gear system and also provides backup pressure to the brake system during emergency operation.
Rewrite (≤ 25 words each):
The hydraulic pump supplies pressure to the landing gear system.
It also supplies backup pressure to the brake system during emergency operation.
2b. Tier-2 syntax (deterministic)
| Rule ID | Fix approach |
|---|---|
STE-PASSIVE |
Rewrite procedures in active voice / imperative. Past participles used as adjectives (Rule 3.3) are not errors. |
STE-IMPERATIVE |
Numbered steps must be commands (Close the valve.). |
STE-VERB-FORM |
Drop progressive/perfect/modal+passive; use approved simple forms. |
STE-NOUN-CLUSTER |
Keep multi-word nouns to ≤ 3 words. |
Call ste_explain_finding(rule_id) when a finding’s meaning is unclear. ERRORs are authoritative; WARNINGs are advisory unless the user asks to clear them.
Evidence on Tier-2 findings includes confidence, parse_cue, text_type, and rule_ref.
2c. Tier-3 semantic (hybrid heuristics)
| Rule ID | Scope | Fix approach |
|---|---|---|
STE-PRONOUN-AMBIG |
both | Name the noun instead of it / this / these / those / they when the prior sentence has no clear antecedent or multiple candidates. |
STE-TOPIC-SENTENCE |
description only | Put the topic noun in the first sentence; avoid pronoun/demonstrative starts, fragments, pure coordination, and meta-comments. |
STE-POS-MISMATCH |
both | Use the approved dictionary part of speech (verb↔noun / adj↔noun). High-confidence clashes are ERRORs; TN/TV and unapproved words are skipped (vocab owns them). |
Default severity is WARNING. Only high-confidence approved POS clashes escalate to ERROR.
After check, if Tier-3 WARNINGs remain → call ste_suggest_semantic_review → host judgment → recheck.
POS ERRORs still go through the rewrite path and must clear before claiming done.
3. Check → explain → suggest_rewrite → (semantic_review) → host rewrite → recheck
(optional) ste_check_changed_files # multi-file / local changes
↓
classify
↓
ste_check_text / ste_check_file
↓
ERROR findings?
├─ no → if Tier-3 WARNINGs → ste_suggest_semantic_review → host edit → recheck
│ else report “no ERROR findings on recheck” (still unofficial; not certified)
└─ yes → optional ste_explain_finding
↓
optional ste_apply_safe_fixes (1:1 only) + recheck
↓
ste_suggest_rewrite → use returned prompt (host LLM; no API in MCP)
↓
host produces minimal rewrite
↓
(optional) ste_suggest_semantic_review for remaining Tier-3 WARNINGs
↓
ste_check_text again
↓
remaining ERRORs?
├─ no → done
└─ yes → repeat suggest_rewrite / rewrite / recheck
OR report unresolved findings
Rules for each rewrite pass
- Treat every
severity: "error"finding as must-fix unless you cannot without changing safety meaning—then report it unresolved. - Prefer the finding’s
suggestionswhen present and high-confidence. - Change the smallest span that clears the finding.
- Do not “improve” style beyond what findings require.
- Prefer
ste_suggest_rewriteover ad-hoc prompting; follow itsconstraints. - Prefer
ste_suggest_semantic_reviewfor Tier-3 WARNINGs; follow itsconstraints. - After every rewrite (including safe-fixes), call
ste_check_textagain. - Never claim compliance from an unchecked rewrite.
- Treat
warningas advisory unless the user asks to clear warnings.
4. Vocabulary and glossary
- Unapproved / forbidden words → replace with approved alternatives from the finding or
ste_lookup_word. - Project glossary terms override or extend the dictionary when a glossary path is passed.
- Prefer glossary
preferred_termsmappings when both forms appear.
5. Preserve always
Do not alter unless a finding explicitly requires a synonym that keeps the same referent:
- Part numbers, serial numbers, document IDs, software identifiers
- Numeric values and units (e.g.
5 mm,120 °C) - Warning / Caution / Note labels and safety-critical conditions
- Proper names required by the product or regulation
6. Stopping criteria
Done: recheck returns compliant: true or zero ERROR findings.
Stop with report: remaining ERRORs that you cannot clear without inventing data or changing safety meaning. List each unresolved finding (rule_id, span/evidence, reason).
Forbidden: claiming certified ASD-STE100 compliance; claiming the text is compliant because you rewrote it without a successful MCP recheck.
7. Example end-to-end
Input (procedure):
Utilize a torque wrench to carefully tighten the bolts and then check them.
- Classify →
procedure ste_check_text(..., text_type="procedure")→ errors forutilize, sentence length / multi-instruction- Optional:
ste_explain_finding/ste_apply_safe_fixesmay yieldUse a torque wrench...still multi-instruction ste_suggest_rewrite→ useprompt+constraints- Minimal rewrite:
Use a torque wrench to tighten the bolts.
Then check the bolts.
ste_check_texton the rewrite → no ERROR findings → report rewrite + note that results are unofficial / not certified.
Input (Tier-2 passive step):
1. The valve is closed by the operator.
- Classify →
procedure - Check →
STE-PASSIVE/STE-IMPERATIVEERRORs (callste_explain_findingif needed) ste_suggest_rewrite→ host rewrite →1. Close the valve.- Recheck → no ERROR findings for those rules
Input (Tier-3 ambiguous pronoun):
Remove the panel from the unit. It is damaged.
- Classify →
description - Check →
STE-PRONOUN-AMBIGWARNING (compliantmay still be true) ste_suggest_semantic_review→ host names the noun →The panel is damaged.- Recheck → no Tier-3 findings for that span
Back to Agent skills.