snl
OfficialBuild concurrent EPICS state machines
AuthorBCDA-APS
Version1.0.0
Installs0
System Documentation
What problem does it solve?
This Skill helps you author EPICS State Notation Language (SNL) programs that coordinate concurrent state machines and reliably react to Process Variable (PV) changes.
Core Features & Use Cases
- State machine authoring for EPICS: Define
program, one or moress(state sets),state,entry/exitblocks, andwhen(...)transitions for deterministic control flows. - PV interaction patterns: Connect variables to PVs with
assign, keep them updated withmonitor, and synchronize transitions usingsync/syncqwithevflag. - Async communication and integration: Perform
pvGet/pvPutoperations (including queued monitoring and completion checks) and embed C helpers via SNL escaped C code. - Use Case: Implement an IOC-side controller that monitors operator commands and sensor limits, raises safety states on threshold violations, and performs coordinated initialization via event-flag synchronization across multiple state sets.
Quick Start
Ask the AI to generate an SNL .st program named "interlockControl" that monitors {prefix}:start, {prefix}:fault, and {prefix}:status, uses an evflag to gate transitions, and includes embedded C code to compute a derived status string before updating a PV.
Dependency Matrix
Required Modules
None requiredComponents
Standard package💻 Claude Code Installation
Recommended: Let Claude install automatically. Simply copy and paste the text below to Claude Code.
Please help me install this Skill: Name: snl Download link: https://github.com/BCDA-APS/opencode-skills/archive/main.zip#snl Please download this .zip file, extract it, and install it in the .claude/skills/ directory.
Agent Skills Search Helper
Install a tiny helper to your Agent, search and equip skill from 471,000+ vetted skills library on demand.