
An AI copilot that reads semiconductor communication logs and explains failures inengineering terms
Semiconductor equipment talks to the factory host over SECS/GEM on HSMS. Every command, event report, alarm and acknowledgement crosses the wire as an SxFy message. When something goes wrong during equipment bring-up, host integration or a production run, the answer is always in the log — and the log is enormous.

A single shift produces well over a hundred thousand lines. Finding the one transaction that broke means an experienced engineer scrolling through it by hand, mentally pairing primaries with secondaries and timing reply windows.
The failures they are hunting for are always the same handful of shapes:
Failure mode | What it looks like on the wire |
T3 / T4 timeouts | A primary is sent, the reply window expires, the transaction is abandoned |
Missing acknowledgements | The secondary message never arrives |
ERRCODE bursts | Cascading error codes from a single upstream fault |
Protocol order anomalies | SxFy messages arriving out of sequence |
Delayed responses | Latency breaches that appear only under load |
Unexpected sequences | A secondary with no matching primary |
The cost is consistent across every project:
Hours spent reading raw logs per incident
Expert-dependent — the knowledge lives in a few heads
Delayed integration cycles and host hand-offs
No existing tool explains SECS/GEM in engineering terms
A diagnostic pipeline that combines protocol-aware deterministic rules with AI reasoning. The rules know what the SEMI standards define. The AI explains what the standards cannot tell you — why it happened here, on this tool, in this sequence.

# | Stage | What happens |
01 | Log Ingestion | Equipment, host, simulator and integration test logs are uploaded. Format is auto-detected from the first line — MwlHSMS and EAF/EPIV are supported today. |
02 | TransactionParsing | The raw stream becomes structured records: SxFy, timestamp, direction,primary↔secondary pairing, computed latency. Multi-line SECS list payloads arefolded before parsing. |
03 | Rule Detection | A deterministic engine flags T3/T4 timeouts, missing secondaries, orderinganomalies, latency breaches and discarded messages — with severity and the rawevidence attached. |
04 | SimilarityLookup | A vector knowledge base retrieves historical incidents whose transaction patternsmatch the current one. |
05 | Guardrailed LLM | The model receives a structured evidence pack — never the raw log — andreturns an explanation, probable root cause, confidence score and correctiveactions. |
The outcome is an engineer-readable diagnostic: the failure explained, a probable root cause, a confidencescore, and actions to take.

Six layers, top to bottom. Raw logs are ingested and parsed, fan out across the rule engine, the vector storeand the transaction store, then converge on the evidence builder and the guardrailed reasoning layer beforereaching the engineer.
The amber accents mark the two deterministic components — the raw log itself and the Protocol Rule Engine.Everything the agent concludes traces back to one of them.
A Coordinator Agent routes work to five specialists, each owning one concern, then assembles a unified diagnostic report.
Agent | Produces |
Parser Agent | Structured transactions |
Rule Detection Agent | Protocol violations |
Case Retrieval Agent | Similar historical incidents |
Explanation Agent | Root cause summary |
Visualization Agent | Timeline view |
Separating concerns this way is what makes the system extensible: a new rule pack or a new log format plugsinto one agent without touching the reasoning layer.
The entire workflow is two screens. That is deliberate — an engineer mid-incident should not be navigating anapplication.
Drop an HSMS log file in. No format selection and no configuration: the parser reads the first line, identifiesthe format and starts work. Analysis runs as a background job, so the session opens immediately and updateswhile parsing continues.
Previous sessions stay listed with their message counts and violation totals, so a returning engineer picks upwhere they left off.

Everything else happens here. One screen, five regions, no drilling down.
Region | What it does |
Stats bar | The whole session at a glance — 722 messages parsed, 357 transactions paired, 15violations found, 15 diagnostics generated. Session severity and status sit in the topbar alongside a severity filter. |
Violations sidebar | All 15 findings, ranked and colour-coded. Each row is a one-line identity: violationtype, the message type it occurred on, and a confidence percentage — here 82% to92% across protocol order anomalies on S16F9, S16F7, S1F17, S6F11 and anunexpected S6F12 sequence. |
Incident summary | The selected finding, resolved: Issue Type T3 TIMEOUT · Transaction S16F9 ·Confidence 82% · Severity HIGH · Timestamp 2025-02-20 10:58:38. |
Transaction timeline | The failure reconstructed as actors and events — Host → Tool: S16F9 sent · Tool:Awaiting reply… · Tool: No reply issued · RuleEngine: T3 Timeout DETECTED — withthe raw evidence directly beneath it, including the source line number and theverbatim log line. |
AI explanation,root cause,actions | The reasoning output, with a confidence bar and specific corrective actions. |
Nothing is asserted without evidence. The raw evidence block carries primary_line: 6813 and theverbatim log entry. An engineer can open the log at that line and check the conclusion against the wire ratherthan trusting it — which is the difference between a tool engineers adopt and one they quietly stop opening.
The dashboard above is a real diagnostic. Here is what produced it.
On the wire. At 10:58:38.463, line 6813 of ProcessJob_Notcreated.txt:
2025-02-20 10:58:38,463 [12] INFO EPIV03-01_Connector.SecsTransport.H5000 .Device-32767.S16.F9 - Received SECS Message:S16F9 W-Bit=0, DeviceId=0x7FFF, TransactionId=0x00000053 |
A primary S16F9 is sent. Its secondary, S16F10, is never returned.
What each stage did:
Stage | Output |
Parser | Logged S16F9 as an unmatched primary — no secondary paired within the reply window.Across the full log: six S16F9 primaries, zero S16F10 secondaries. |
Rule Engine | Raised T3_TIMEOUT, HIGH severity — the configured 10-second reply window elapsed.Attached the line number, the raw entry and the transaction ID as evidence. |
Explanation Agent | Identified S16F9 as a primary expecting an S16F10 reply and attributed the absence to acommunication breakdown, an equipment processing delay, or a device-side error-handling failure. |
Root cause | "The remote equipment (DeviceId=0x7FFF) either failed to process the S16F9 message,encountered an internal error preventing response generation, or experienced anetwork/transport layer failure that prevented the secondary message S16F10 from beingtransmitted back within the T3 timeout period." |
Confidence | 82% — calibrated down, not asserted at ceiling, because more than one cause remainsconsistent with the evidence. |
The corrective actions it generated:
Verify remote equipment connectivity and check equipment-side logs (device console / debug logs) forS16F9 processing errors or exceptions around 2025-02-20T10:58:38.
Increase the T3 timeout threshold from 10.0 s to 15.0–20.0 s if the equipment is known to have slowerresponse times — but first confirm this is not masking a deeper issue.
Review the equipment firmware version and SECS/GEM implementation for known bugs related to thismessage handling.
Note the second one. It offers the pragmatic fix and immediately warns against using it as a band-aid. That isthe tone the guardrails are tuned for: the agent is a colleague with an opinion, not an autocomplete.
An engineer would have found this. It would have taken them an afternoon of scrolling 8,047 lines andmentally tracking which primaries came back. The agent did it on upload, and showed its work.
Validated on real logs
Two production logs, two different vendor formats, no synthetic data.
The demo session — EAF / EPIV format
File | ProcessJob_Notcreated.txt — the session shown in both screenshots |
Source | EPIV03-01_Connector, H5000, Device-32767, captured 2025-02-20 |
Volume | 8,047 lines → 722 SECS messages parsed into 357 paired transactions |
Window | 10:22:33 → 11:11:21 — 49 minutes |
Result | 15 violations, 15 diagnostics, session severity HIGH |
Findings included the S16F9 T3 timeout detailed above, a series of protocol order anomalies across S16F9,S16F7, S1F17 and S6F11, and an unexpected S6F12 sequence — each at 82–92% confidence.
The scale test — MwlHSMS format
File | MwlHSMS_1.8.33.104_2026-04-29.txt — equipment firmware 1.8.33.104 |
Volume | 127,423 lines |
Window | 00:00:05 → 10:52:30 — 10 hours 52 minutes of continuous operation |
Messagetypes | Linktest.req/rsp, S1F1R/S1F2, S2F13R/F14, S2F37R/F38, S2F49R/F50, S5F3R/F4,S5F5R/F6, S6F11R |
173 discarded messages (rc -4) — clustered as a burst at 10-second intervals, consistent with reply-window exhaustion on a connection that was already dead. Classified separately from a T3 timeout, because the cause is connection-level, not handler-level.
A robot command timeout — 15,000 ms on an RQ RVSN command, followed by anAsyncCommandFailureException.
An equipment state transition — Initializing → Error, correlated in time with the command failure above.
The two logs together are the point. They come from different vendors in different formats — one line-oriented HSMS trace, one bracketed connector log — and neither required configuration. The parser auto-detects the format from the first line. The same rule engine, the same knowledge base and the samereasoning layer handled both.

Layer | Technology |
Backend | Python 3.11 · FastAPI (async, background analysis jobs) |
Log parsing | Regex + format auto-detection · multi-line payload folding |
Transaction pairing | Custom matcher — SxFyR → SxFy with latency computation |
Rule engine | Pure Python, deterministic, fully auditable |
Vector store | ChromaDB (local, persistent) |
Embeddings | all-MiniLM-L6-v2 — Sentence-Transformers, 384-dim |
LLM | Anthropic Claude · pluggable to OpenAI or a local Ollama model |
Session storage | SQLite + SQLAlchemy async |
Frontend | Next.js 15 · React · Tailwind CSS |
Deployment | Docker Compose — one command, two services |
Two deployment postures. With Claude or OpenAI for best reasoning quality, or with a local Ollama modelwhen log data must not leave the network — a real constraint in fab environments. The rule engine, parserand knowledge base are identical either way; only the reasoning layer swaps. And if no model is reachable atall, the system degrades to rules-only output rather than failing.
The current agent runs a single automated pass. The roadmap makes it steerable and continuously learning.
Human-in-the-loop. The engineer reviews findings and issues commands — approve, reject or redirect thereasoning. Follow-ups like "re-check T4" or "focus on PM1" refine the analysis in place.
Pluggable skills. New protocols, rule packs and equipment types are added as skills without touching thecore engine — E84 handoff, E87 carrier management, recipe-step verification.
Incremental cross-log analysis. The engineer selects a reported SECS/GEM incident, which locks its timewindow, then uploads any additional subsystem log — PM, SMC, robot controller. The agent analyses itagainst that same window and produces a combined root-cause report, explaining the SECS/GEM incidentwith evidence from the correlated log.
↓ Debug time | Automated analysis replaces manual log scrolling |
↓ Mean time to recovery | Engineers act on an explanation in minutes instead of deriving one over hours |
↑ Knowledge reuse | Resolved incidents are captured and retrieved across tools, projects and years |
↑ Engineer productivity | Time goes to solving problems, not parsing protocol |
↑ Integration quality | Anomalies are caught early, before they delay a host hand-off |
The broader point: this is a reusable, domain-specific AI module that extends the MindAI platform intosemiconductor automation — deterministic protocol analysis, vector similarity learning and generativeexplanation, combined into one engineering copilot.
Access expert knowledge and actionable insights to make
informed decisions and drive your business forward.