Complete reference for the Spanda language (.sd): reserved words, triggers, std.* packages, global functions, built-in methods, and the spanda CLI.
Structured like JavaDoc (hierarchical packages and types) and man pages (NAME / SYNOPSIS / DESCRIPTION / OPTIONS for CLI commands).
Generated by
spanda reference/scripts/generate_spanda_reference.py. Signatures come from the type checker (spanda-core).
See also: spanda-language.md (tutorial-style guide), standard-library.md (stdlib overview), spanda-type-system.md (type rules).
Compile time: AI output is ActionProposal. Actuator execute() accepts only SafeAction from safety.validate(ActionProposal). ActionProposal motion components (UntrustedLinear / UntrustedAngular) cannot feed DifferentialDrive.drive / follow (including via let bindings). Non-AI literal drive / follow(path:) remain available. Runtime (interpreter run/sim): safety { max_speed = … } clamps linear velocity on drive, execute, and follow(path:) cruise speed; optional max_angular = … rad/s clamps turn rate on drive / execute; stop_if, zones, and emergency stop still gate motion. Not claimed: follow(path:) does not re-derive SafeAction per waypoint. Full write-up: spanda-type-system.md.
- Safety motion guarantee
- Keywords
- Triggers
- Standard library (
std.*) - Global functions
- Robot methods
- Type methods
- Object properties
- Scan properties
- Hardware sensor libraries
- CLI reference (man pages)
Reserved words recognized by the Spanda lexer. Identifiers cannot reuse these names.
moduleimportexportpublicprivateuse
structenumtraitimplfordynfnasyncawaitreturn
robotbehaviorsensoractuatorai_modelagentsafetytwintopicserviceactionmessagenodedevicebus
oneverywhentaskspawnselectparallelpriorityenteredexitedeventsubscribepublishreceive
letifelsematchloopwhileandornottruefalse
assertverifyobserveemergency_stopreset_emergency_stopstop_ifrequiresensuresinvariantcanwarningcertify
pipelinewatchdogrecoverretryfallbackfaultmissiondeadlinetimingmin_perioddurationjitterisolatedbackofftimes
hardwaredeployhalsocrequires_hardwarerequires_networksimulate_compatibilitybudgetcpustoragegpubatterycapacitysensorsactuatorsnetworkbandwidthlatency
adcaiatbaudbest_effortble_servicebluetoothcallcircleconnectivityconnectivity_policydiscoveremitenterenvexecuteexternfaultsfeedbackfilefleetfrequencyfromgeofencegoalgpiohistoryi2cinincludesmatchesmemorymirroroutpacket_losspermissionspinplanpolicyproviderpwmqosradiusraterectreliablerememberreplayrequestrequires_connectivityresourceresponseresultsafety_zonesecretsecuresend_goalsigned_bysizeskillspistatestate_machineswarmswitch_iftelemetrytotoolstransitiontrusttrusted_onlyuartuseswherewithzone
Unified reactive handlers on robots and agents. See triggers.md.
| Form | Syntax | Fires when |
|---|---|---|
| Event | on event_name { ... } |
Named event is emitted |
| Message | on message topic_name { ... } |
Message received on topic |
| Timer | every 100 ms { ... } |
Periodic wall-clock interval |
| Condition | when condition { ... } |
Boolean expression becomes true |
| State | on entered StateName { ... } |
State machine enters state |
| State | on exited StateName { ... } |
State machine exits state |
| Safety | on safety event_name { ... } |
Safety subsystem event |
| Hardware | on hardware event_name { ... } |
HAL / hardware event |
| AI | on ai event_name { ... } |
AI runtime event |
| Twin | on twin event_name { ... } |
Digital twin event |
| Log match | on log matches /pattern/ { ... } |
Log line matches regex |
| Message match | on message field matches /pattern/ { ... } |
Topic field matches regex |
Import with import std.robotics; (or any namespace below). Types resolve with or without the std.<module>. prefix.
Actuator types: motors, servos, grippers.
Types
ActuatorMotorServoGripperDriveUnitJointCommandTorqueCommandVelocityCommand
AI models, prompts, completions, reasoning traces.
Types
LLM— 2 method(s)VisionModel— 1 method(s)EmbeddingModelPromptCompletionEmbeddingTokenContextMemoryPlanReasoningTraceActionProposalSafeAction
Audit logs, provenance, mission records.
Types
AuditEventAuditLogProvenanceRecordMissionRecordRecordId
Standard library namespace.
Types
BluetoothConnectionBleConnectionBleService
Standard library namespace.
Types
CellularConnectionLTEConnectionFourGConnectionFiveGConnectionRoamingStatusSimIdentity
Containers: arrays, maps, sets, queues.
Types
ArrayMapSetQueueStackTuple
Topics, services, actions, events, bus.
Types
TransportQosProfileQoSBandwidthLatencyTopicPathServiceEndpointMessageEnvelopeDiscoveryFilterNetworkRequirementsReliabilityHistoryPolicyCommBusEndpointTopicMessageServiceActionEventBus
Standard library namespace.
Types
WifiConnectionBluetoothConnectionBleConnectionCellularConnectionLTEConnectionFourGConnectionFiveGConnectionEthernetConnectionMeshConnectionNetworkStatusSignalStrengthBandwidthLatencyPacketLossRoamingStatusSimIdentity
Foundation types: results, options, errors.
Types
ResultOptionErrorVoid
Hashing and signature primitives.
Types
HashSignature
Standard library namespace.
Types
WeatherTemperatureHumidityAirQualityLightLevel
Standard library namespace.
Types
FusedObservationStateEstimateConfidenceSensorFusion
Standard library namespace.
Types
GeoFenceGeoPoint
Deploy targets and compatibility reports.
Types
HardwareProfileCompatibilityReportSensorSpecActuatorSpecBusConfigPinConfigDeviceTreePeripheralInterface
Human–robot interaction: commands, intent, approval.
Types
CommandConversationSpeechGestureEmotionFeedbackIntentApproval
File and stream abstractions.
Types
FileReaderWriterBytes
Structured logging.
Types
LoggerLogLevel
Standard library namespace.
Types
HealthScoreMaintenanceAlertFailurePrediction
Standard library namespace.
Types
ArmGripperEndEffectorGraspPickPlace
Scalar math types.
Types
FloatInt
Standard library namespace.
Types
NavigationGoalPathWaypointTrajectoryCostMap
Transport, QoS, endpoints, discovery.
Types
TransportQosProfileQoSBandwidthLatencyTopicPathServiceEndpointMessageEnvelopeDiscoveryFilterNetworkRequirementsReliabilityHistoryPolicyCommBusEndpointTopicMessageServiceAction
Standard library namespace.
Types
GpsFixGnssFixGeoPointGeoFenceAltitudeHeadingSpeedOverGroundSatelliteInfoPositionAccuracyNavigationStatus
Error-handling types.
Types
ResultOptionError
Robot graph: motion, agents, goals, safe actions.
Types
RobotSensorActuatorMotionCommandControlSignalPIDConfigActionProposalSafeActionAgent— 1 method(s)GoalTaskSkillCapabilityIntent
Risk, hazards, constraints, emergency stop.
Types
RiskHazardSafetyConstraintEmergencyStopSafeAction
Identity, permissions, signatures, trust.
Types
IdentityRobotIdentitySignaturePermissionCapabilityTrustLevel
Sensor payload types (LiDAR, camera, IMU, …).
Types
CameraFrameImageDepthImagePointCloudLidarScanGpsFixImuDataAudioFrame
Simulation worlds, scenarios, replay buffers.
Types
SimulatorScenarioFaultReplayWorldStatePhysicsConfigSceneEntitySensorModelActuatorModelTickReplayBuffer
Standard library namespace.
Types
MapOccupancyGridLandmarkLocalizationEstimateMapLayer
Geometry: poses, transforms, paths, trajectories.
Types
Point2DPoint3DVector2DVector3DQuaternionPoseTransformTrajectoryPathWaypoint
Time, duration, timestamps, and intervals.
Types
TimeDurationTimestampInterval
Digital twin state and telemetry.
Types
Twin— 5 method(s)SimulationStateTelemetryReplayFaultScenario
Physical units: distance, velocity, mass, temperature, and more.
Types
DistanceVelocityAccelerationAngleAngularVelocityMassForcePowerVoltageCurrentTemperaturePressureHumidityIlluminanceLuminanceConcentrationSoundLevelMagneticFieldRotationalSpeedTorqueEnergyUvIndexPhConductivityParticulateMatterTurbiditySalinityRadiationSoilMoisture
Standard library namespace.
Types
WifiConnectionSignalStrengthNetworkStatus
Top-level functions available in every Spanda program.
fn assert() -> Void
Assert a condition at runtime (test / verify blocks).
fn channel() -> Channel
Create an async channel for task communication.
fn deserialize(format: String) -> Void
Deserialize a value from string (format parameter).
fn goal(text: String) -> Goal
Create an agent goal from text.
fn peer_send(peer: String, topic: String, value: Void) -> Void
Publish to a peer robot over the fleet bus.
fn pose(theta: Number(rad), x: Number(m), y: Number(m), z: Number(m)) -> Pose
Construct a Pose from coordinates (optional z).
fn recall(key: String) -> Memory
Recall a value from agent memory by key.
fn recv() -> Void
Receive a value from a channel.
fn recv_agent() -> Void
Receive a message from another agent.
fn send() -> Void
Send a value on a channel.
fn send_agent(to: String, value: Void) -> Void
Send a message to another agent.
fn serialize(format: String) -> String
Serialize a value to string (format parameter).
fn trajectory(from: Pose, steps: Number(none), to: Pose) -> Path
Interpolate a path between two poses.
fn transform(from: String, pose: Pose, to: String) -> Transform
Transform a pose between coordinate frames.
fn velocity(angular: Number(rad/s), linear: Number(m/s)) -> Velocity
Construct a Velocity from linear and angular components.
Methods on the implicit robot receiver inside behavior blocks.
robot.connectivity_link() -> String
Built-in method.
robot.identity() -> RobotIdentity
Robot identity for signing and audit.
robot.in_geofence(String) -> Bool
Built-in method.
robot.in_zone(String) -> Bool
True when the robot is inside a named zone.
robot.pose() -> Pose
Current robot pose.
robot.sim_identity() -> SimIdentity
Built-in method.
robot.velocity() -> Velocity
Current robot velocity.
Built-in methods on sensor, actuator, AI, safety, and twin types. Actuator/sensor instances use the type declared in the robot graph.
adafruitbh1750.calibrate() -> Void
Built-in method.
adafruitbh1750.read() -> Number(lux)
Built-in method.
adafruitveml6075.calibrate() -> Void
Built-in method.
adafruitveml6075.read() -> Number(uvi)
Built-in method.
adafruitvl53l0x.calibrate() -> Void
Built-in method.
adafruitvl53l0x.read() -> Number(m)
Built-in method.
agent.plan() -> Void
Built-in method.
atlasph.calibrate() -> Void
Built-in method.
atlasph.read() -> Number(pH)
Built-in method.
atlassalinity.calibrate() -> Void
Built-in method.
atlassalinity.read() -> Number(ppt)
Built-in method.
boschbme280.calibrate() -> Void
Built-in method.
boschbme280.read() -> Number(rh)
Built-in method.
boschbmp388.calibrate() -> Void
Built-in method.
boschbmp388.read() -> Number(m)
Built-in method.
boschbno055.calibrate() -> Void
Built-in method.
boschbno055.read() -> IMUReading
Built-in method.
camera.analyze() -> Detection
Built-in method.
camera.frame() -> CameraFrame
Built-in method.
camera.read() -> CameraFrame
Read latest sensor data.
dfrobotturbidity.calibrate() -> Void
Built-in method.
dfrobotturbidity.read() -> Number(NTU)
Built-in method.
differentialdrive.drive(angular: Number(rad/s), linear: Number(m/s)) -> Void
Drive with linear and angular velocity (non-AI); runtime-clamped by max_speed / max_angular. ActionProposal fields cannot feed drive().
differentialdrive.execute(SafeAction) -> Void
Execute a safety-validated SafeAction (only path for AI motion).
differentialdrive.follow(path: Path) -> Void
Follow a trajectory path. Cruise speed is clamped by safety.max_speed / zone caps; ActionProposal fields cannot feed follow().
differentialdrive.stop() -> Void
Stop all motion.
dronerotors.hover() -> Void
Built-in method.
dronerotors.set_thrust(thrust: Number(none)) -> Void
Built-in method.
gqgmc.calibrate() -> Void
Built-in method.
gqgmc.read() -> Void
Built-in method.
hokuyoust10.calibrate() -> Void
Built-in method.
hokuyoust10.read() -> Scan
Built-in method.
hokuyoutm30.calibrate() -> Void
Built-in method.
hokuyoutm30.read() -> Scan
Built-in method.
intelrealsensed435.calibrate() -> Void
Built-in method.
intelrealsensed435.read() -> Scan
Built-in method.
intelrealsensed455.calibrate() -> Void
Built-in method.
intelrealsensed455.read() -> Scan
Built-in method.
llm.reason(goal: Goal, input: Scan, prompt: String) -> ActionProposal
Run LLM reasoning over sensor input and goal.
llm.summarize(input: Scan) -> Completion
Summarize sensor input.
lidar.nearest_distance() -> Number(m)
Built-in method.
lidar.read() -> Scan
Read latest sensor data.
ousteros1.calibrate() -> Void
Built-in method.
ousteros1.read() -> Scan
Built-in method.
plantowerpms5003.calibrate() -> Void
Built-in method.
plantowerpms5003.read() -> Number(ug/m3)
Built-in method.
roboticarm.grip() -> Void
Built-in method.
roboticarm.move_to(x: Number(m), y: Number(m), z: Number(m)) -> Void
Built-in method.
roboticarm.release() -> Void
Built-in method.
safety.validate(ActionProposal) -> SafeAction
Validate an ActionProposal; clamps max_speed / max_angular and returns SafeAction.
sparkfunec.calibrate() -> Void
Built-in method.
sparkfunec.read() -> Number(uS/cm)
Built-in method.
sparkfunlsm9ds1.calibrate() -> Void
Built-in method.
sparkfunlsm9ds1.read() -> IMUReading
Built-in method.
twin.frame_count() -> Number(none)
Built-in method.
twin.mirror(field: String) -> Pose
Mirror a field from the digital twin.
twin.pose() -> Pose
Built-in method.
twin.replay(field: String, index: Number(none)) -> Pose
Replay twin state at an index.
twin.velocity() -> Velocity
Built-in method.
ubloxneom8n.calibrate() -> Void
Built-in method.
ubloxneom8n.read() -> Void
Built-in method.
vegetronixsoil.calibrate() -> Void
Built-in method.
vegetronixsoil.read() -> Number(%VWC)
Built-in method.
velodynevlp16.calibrate() -> Void
Built-in method.
velodynevlp16.read() -> Scan
Built-in method.
velodynevlp32.calibrate() -> Void
Built-in method.
velodynevlp32.read() -> Scan
Built-in method.
visionmodel.detect(CameraFrame) -> Detection
Built-in method.
waveshareuwmf.calibrate() -> Void
Built-in method.
waveshareuwmf.read() -> Number(m)
Built-in method.
ydlidarg4.calibrate() -> Void
Built-in method.
ydlidarg4.read() -> Scan
Built-in method.
ydlidarx4.calibrate() -> Void
Built-in method.
ydlidarx4.read() -> Scan
Built-in method.
Fields on structured runtime values returned by sensors and AI.
| Field | Type |
|---|---|
confidence |
Number(none) |
label |
String |
nearest_distance |
Number(m) |
| Field | Type |
|---|---|
count |
Number(none) |
pose |
Pose |
| Field | Type |
|---|---|
pitch |
Number(rad) |
roll |
Number(rad) |
yaw |
Number(rad) |
Fields on LiDAR Scan values.
| Field | Type |
|---|---|
nearest_distance |
Number(m) |
Vendor sensor drivers registered in the runtime. Each sensor type exposes read() and calibrate() unless noted otherwise.
bme280 — Bosch v1.0.0: Bosch BME280 environmental sensor (humidity, pressure, temperature)
ec — SparkFun v1.0.0: SparkFun conductivity sensor
soil — Vegetronix v1.0.0: Vegetronix soil moisture sensor
realsense — Intel v1.0.0: Intel RealSense depth cameras
salinity — Atlas v1.0.0: Atlas Scientific salinity sensor
veml6075 — Adafruit v1.0.0: Adafruit VEML6075 UV index sensor
vlp16 — Velodyne v1.0.0: Velodyne VLP-16 3D LiDAR puck
vlp32 — Velodyne v1.0.0: Velodyne VLP-32C ultra puck
pms5003 — Plantower v1.0.0: Plantower PMS5003 particulate matter sensor
turbidity — DFRobot v1.0.0: DFRobot turbidity sensor
ph — Atlas v1.0.0: Atlas Scientific pH sensor
bh1750 — Adafruit v1.0.0: Adafruit BH1750 digital light sensor
vl53l0x — Adafruit v1.0.0: Adafruit VL53L0X time-of-flight distance sensor
lsm9ds1 — SparkFun v1.0.0: SparkFun LSM9DS1 9-DOF IMU breakout
neo_m8n — u-blox v1.0.0: u-blox NEO-M8N multi-GNSS receiver (UART NMEA)
utm30 — Hokuyo v1.0.0: Hokuyo UTM-30LX-EW outdoor LiDAR
os1 — Ouster v1.0.0: Ouster OS1 digital LiDAR sensor
ust10 — Hokuyo v1.0.0: Hokuyo UST-10LX 2D LiDAR
bno055 — Bosch v1.0.0: Bosch BNO055 9-DOF absolute orientation IMU
bmp388 — Bosch v1.0.0: Bosch BMP388 barometric pressure sensor
uwmf — Waveshare v1.0.0: Waveshare ultrasonic distance module
g4 — YDLIDAR v1.0.0: YDLIDAR G4 2D LiDAR
gmc — GQ v1.0.0: GQ GMC geiger counter
x4 — YDLIDAR v1.0.0: YDLIDAR X4 2D LiDAR
Manual-page style reference for the spanda command-line tool. Individual pages also live under man/.
NAME
spanda — Spanda autonomous systems platform toolchain
SYNOPSIS
spanda <command> [options] [arguments]
DESCRIPTION
The Spanda CLI drives the autonomous systems platform: check, verify, simulate, replay, fleet, and document .sd programs.
COMMANDS
checkverifyrunsimreplaytelemetrytestreadinessassurediagnosehealcontinuityfleetpackagetracesecurityfmtlintdocmanreferencecodegendebug
Package commands: init, build, test, add, remove, install, publish, registry search, registry info. See packages.md.
NAME
check — Type-check and parse a Spanda program or project.
SYNOPSIS
spanda check [--json] [<file.sd> | --project]
DESCRIPTION
Type-check and parse a Spanda program or project.
OPTIONS
--json — machine-readable diagnostics
--readiness-json — readiness + recovery + continuity policy hints
--project — check all modules in the current project
EXAMPLES
spanda check examples/rover.sd
spanda check --projectEXIT STATUS
0 on success; 1 on parse, type, or lint errors.
FILES
spanda.toml — project manifest when using --project
SEE ALSO
spanda-verify(1), spanda-run(1), spanda-continuity(1)
NAME
verify — Check hardware compatibility for a deploy target (not formal verification). Alias: spanda compatibility.
SYNOPSIS
spanda verify [--json] [--target <profile>] [--all-targets] [--simulate] <file.sd>
DESCRIPTION
Check hardware compatibility for a deploy target (not formal verification). Alias: spanda compatibility.
OPTIONS
--target — hardware profile name
--all-targets — compatibility matrix
--simulate — include simulator checks
--json — JSON report
--strict-certify — fail when certify metadata is missing/incomplete (metadata only)
EXAMPLES
spanda verify robot.sd --target RoverV1
spanda compatibility robot.sd --all-targets --simulateEXIT STATUS
0 when compatible; 1 on compatibility failures or errors.
FILES
Hardware profile definitions in the program or hardware/ package paths.
SEE ALSO
spanda-check(1), spanda-run(1), verification-vocabulary.md
NAME
run — Execute a Spanda program on the interpreter backend.
SYNOPSIS
spanda run [--json] [--verbose] [--trace-*] [--record] [--persist-telemetry] <file.sd>
DESCRIPTION
Execute a Spanda program on the interpreter backend.
OPTIONS
--trace-scheduler, --trace-tasks, --trace-triggers, --trace-events — scheduler telemetry
--trace-realtime, --metrics-json — realtime metrics
--record — write mission trace
--persist-telemetry — append device/sensor/heartbeat events to .spanda/telemetry-store.jsonl
EXAMPLES
spanda run examples/rover.sd
spanda run robot.sd --trace-realtime --metrics-json
spanda run rover.sd --persist-telemetryEXIT STATUS
0 on successful execution; 1 on runtime or compile errors.
FILES
Mission traces when using --record (default: mission.trace). Persistent telemetry when using --persist-telemetry (.spanda/telemetry-store.jsonl).
SEE ALSO
spanda-sim(1), spanda-replay(1)
NAME
sim — Run a program in the built-in simulator with optional trace recording.
SYNOPSIS
spanda sim [--json] [--replay] [--wall-clock] [--record] [--trace-*] <file.sd>
DESCRIPTION
Run a program in the built-in simulator with optional trace recording.
OPTIONS
--replay — replay mode
--wall-clock — real-time pacing
--record — mission trace output
EXAMPLES
spanda sim examples/rover.sd --record
spanda sim robot.sd --wall-clockEXIT STATUS
0 on successful simulation; 1 on errors.
FILES
Mission traces when using --record.
SEE ALSO
spanda-run(1), spanda-replay(1), spanda-telemetry(1)
NAME
replay — Replay or deterministically verify a recorded mission trace.
SYNOPSIS
spanda replay <mission.trace> [--from T+mm:ss] [--deterministic] [--playback]
DESCRIPTION
Replay or deterministically verify a recorded mission trace.
OPTIONS
--from — start offset
--deterministic — verify reproducibility
--playback — frame-by-frame playback
EXAMPLES
spanda replay mission.trace --deterministic
spanda replay mission.trace --playback --from T+00:30EXIT STATUS
0 when replay succeeds or deterministic check passes; 1 otherwise.
FILES
Input mission trace file (.trace).
SEE ALSO
spanda-sim(1), spanda-run(1)
NAME
telemetry — Query the persistent telemetry store written by --persist-telemetry or SPANDA_TELEMETRY_STORE=1.
SYNOPSIS
spanda telemetry list|latest|heartbeats|devices|stats|export|prometheus|otlp|push|serve|sessions|replay|info [flags]
DESCRIPTION
Query the persistent telemetry store written by --persist-telemetry or SPANDA_TELEMETRY_STORE=1.
OPTIONS
list — filter by device, sensor, task, session, kind, since, limit
latest — most recent device metric, sensor read, task heartbeat, or device liveness
heartbeats / devices — index sidecar for tasks and devices
stats — event counts (includes session and runtime_metrics)
info — backend, paths, retention, migration backup
sessions — list persisted run sessions with linked mission traces
replay — replay the mission trace linked to a session (--record runs)
export — copy event log (JSONL from SQLite when needed)
prometheus — Prometheus text exposition
otlp — OTLP/JSON metrics export
push — POST OTLP/JSON to a remote collector (--endpoint or SPANDA_OTLP_ENDPOINT)
serve — HTTP server (/metrics, /otlp/v1/metrics, /healthz)
EXAMPLES
spanda telemetry stats
spanda telemetry info
spanda telemetry push --endpoint http://localhost:4318/v1/metrics
spanda telemetry sessions --json
spanda telemetry replay --session rover-123 --deterministicEXIT STATUS
0 on success; 1 when the store cannot be read.
FILES
.spanda/telemetry-store.jsonl or .spanda/telemetry-store.db when SPANDA_TELEMETRY_BACKEND=sqlite (override with SPANDA_TELEMETRY_STORE_PATH).
SEE ALSO
spanda-run(1), spanda-sim(1)
NAME
test — Run in-language test blocks and package test suites for a Spanda project.
SYNOPSIS
spanda test [--project <dir>]
DESCRIPTION
Run in-language test blocks and package test suites for a Spanda project.
OPTIONS
--project — project root (default: current directory)
EXAMPLES
spanda test
spanda test --project examples/roverEXIT STATUS
0 when all tests pass; 1 on failures.
FILES
spanda.toml, spanda.lock, project .sd sources.
SEE ALSO
spanda-check(1), spanda-package(1)
NAME
readiness — Evaluate operational readiness: health, safety, fleet, and deployment gates.
SYNOPSIS
spanda readiness [--json] [--readiness-json] <file.sd>
DESCRIPTION
Evaluate operational readiness: health, safety, fleet, and deployment gates.
OPTIONS
--json / --readiness-json — structured readiness report
EXAMPLES
spanda readiness robot.sd --readiness-jsonEXIT STATUS
0 when ready; 1 when blocking issues are found.
FILES
Readiness reports may reference spanda.toml safety metadata.
SEE ALSO
spanda-verify(1), spanda-assure(1)
NAME
assure — Run assurance workflows: anomaly coverage, prognostics, and assurance cases.
SYNOPSIS
spanda assure [--json] <file.sd>
DESCRIPTION
Run assurance workflows: anomaly coverage, prognostics, and assurance cases.
OPTIONS
--json — machine-readable assurance report
EXAMPLES
spanda assure robot.sd --jsonEXIT STATUS
0 when assurance checks pass; 1 on gaps or violations.
FILES
Assurance metadata in program declarations.
SEE ALSO
spanda-readiness(1), spanda-diagnose(1)
NAME
diagnose — Diagnose failures from static analysis and optional mission traces.
SYNOPSIS
spanda diagnose [--json] <file.sd> [<mission.trace>]
DESCRIPTION
Diagnose failures from static analysis and optional mission traces.
OPTIONS
--json — structured diagnosis report
EXAMPLES
spanda diagnose robot.sd
spanda diagnose robot.sd mission.traceEXIT STATUS
0 when diagnosis completes; 1 on errors.
FILES
Optional mission trace input.
SEE ALSO
spanda-assure(1), spanda-heal(1)
NAME
heal — Execute self-healing and recovery policies declared in the program.
SYNOPSIS
spanda heal [--json] <file.sd>
DESCRIPTION
Execute self-healing and recovery policies declared in the program.
OPTIONS
--json — recovery report
EXAMPLES
spanda heal robot.sd --jsonEXIT STATUS
0 when recovery succeeds; 1 on unrecoverable faults.
FILES
Recovery policies in .sd source.
SEE ALSO
spanda-diagnose(1), spanda-recovery(1)
NAME
continuity — Mission continuity, takeover, delegation, and succession planning.
SYNOPSIS
spanda continuity|takeover|delegate|succession <file.sd> [options]
DESCRIPTION
Mission continuity, takeover, delegation, and succession planning.
OPTIONS
--failed <name> — failed robot or entity
--progress <pct> — mission progress percent
--trigger <kind> — continuity trigger (e.g. robot_failed)
--successor / --to <name> — designated successor for takeover/delegate
--scope fleet|swarm|robot — succession scope
--json / --markdown / --html — report format
EXAMPLES
spanda continuity examples/showcase/continuity/warehouse.sd --failed ScannerAlpha --progress 72
spanda takeover examples/showcase/takeover/patrol.sd --failed RoverA
spanda delegate examples/showcase/delegation/survey.sd --failed SurveyBot --to RelayBot
spanda succession examples/showcase/fleet_succession/delivery.sd --scope fleet
spanda demo continuityEXIT STATUS
0 when planning succeeds; 1 on validation or safety gate failures.
FILES
continuity_policy and mission_plan declarations in .sd source.
SEE ALSO
spanda-recovery(1), spanda-fleet(1), mission-continuity.md
NAME
fleet — Run a multi-robot fleet program with peer communication.
SYNOPSIS
spanda fleet run [--json] [--trace-*] <file.sd>
DESCRIPTION
Run a multi-robot fleet program with peer communication.
OPTIONS
Same trace flags as spanda run.
EXAMPLES
spanda fleet run examples/communication/multi_robot_fleet.sdEXIT STATUS
0 on successful fleet run; 1 on errors.
FILES
Fleet mesh state when using remote agents.
SEE ALSO
spanda-run(1)
NAME
package — Manage Spanda packages: manifests, dependencies, builds, and registry operations.
SYNOPSIS
spanda <init|build|test|add|remove|install|publish|registry> [options]
DESCRIPTION
Manage Spanda packages: manifests, dependencies, builds, and registry operations.
OPTIONS
See spanda init, build, test, add, remove, install, publish, registry search, registry info.
EXAMPLES
spanda init my-robot
spanda add std.robotics
spanda publishEXIT STATUS
0 on success; 1 on manifest, lockfile, or registry errors.
FILES
spanda.toml, spanda.lock, packages/ registry mirror.
SEE ALSO
spanda-check(1), spanda-test(1)
NAME
trace — Record scheduler, task, trigger, and event traces from a program run.
SYNOPSIS
spanda trace [--json] [--out <file>] <file.sd>
DESCRIPTION
Record scheduler, task, trigger, and event traces from a program run.
OPTIONS
--out — trace output path
--json — structured trace summary
EXAMPLES
spanda trace robot.sd --out mission.traceEXIT STATUS
0 on success; 1 on runtime errors.
FILES
Output trace file (.trace).
SEE ALSO
spanda-replay(1), spanda-run(1)
NAME
security — Validate security policies, identities, and audit configuration.
SYNOPSIS
spanda security <check|audit> [--json] <file.sd>
DESCRIPTION
Validate security policies, identities, and audit configuration.
OPTIONS
check — static security validation
audit — audit log review
--json — machine-readable report
EXAMPLES
spanda security check robot.sd --json
spanda security audit robot.sdEXIT STATUS
0 when policies pass; 1 on violations.
FILES
Security metadata in program and spanda.toml when present.
SEE ALSO
spanda-verify(1), spanda-readiness(1)
NAME
fmt — Format Spanda source to canonical style.
SYNOPSIS
spanda fmt [--json] <file.sd>
DESCRIPTION
Format Spanda source to canonical style.
OPTIONS
--json — report whether the file changed
EXAMPLES
spanda fmt examples/rover.sdEXIT STATUS
0 on success; 1 on parse errors.
FILES
In-place .sd source file.
SEE ALSO
spanda-check(1)
NAME
lint — Run linter rules beyond parse/type checking.
SYNOPSIS
spanda lint [--json] <file.sd>
DESCRIPTION
Run linter rules beyond parse/type checking.
OPTIONS
--json — structured lint report
EXAMPLES
spanda lint robot.sdEXIT STATUS
0 when no lint issues; 1 when issues are found.
FILES
Input .sd source file.
SEE ALSO
spanda-check(1)
NAME
doc — Generate JavaDoc-style API docs for .sd modules (markdown or HTML).
SYNOPSIS
spanda doc [--json] [--html] [--out <file>] <file.sd|dir/>
DESCRIPTION
Generate JavaDoc-style API docs for .sd modules (markdown or HTML).
OPTIONS
--out — write output file or directory
--html — emit HTML instead of markdown
--json — wrap output in JSON
EXAMPLES
spanda doc module.sd --out module-api.md
spanda doc --html examples/EXIT STATUS
0 on success; 1 on lex/parse errors.
FILES
Output docs under --out or stdout.
SEE ALSO
spanda-reference(1), spanda-man(1)
NAME
man — Display man-page style documentation for Spanda CLI commands.
SYNOPSIS
spanda man [<command>] [--roff]
DESCRIPTION
Display man-page style documentation for Spanda CLI commands.
OPTIONS
--roff — emit roff for Unix man viewers
No argument — list available pages
EXAMPLES
spanda man
spanda man verify
spanda man run --roffEXIT STATUS
0 on success; 1 when the command page is not found.
FILES
Man pages are generated from compiler metadata into docs/man/.
SEE ALSO
spanda-reference(1), spanda-doc(1)
NAME
reference — Emit the full Spanda language reference and optional man pages.
SYNOPSIS
spanda reference [--json] [--out <file.md>] [--man-dir <dir>]
DESCRIPTION
Emit the full Spanda language reference and optional man pages.
OPTIONS
--out — write reference markdown
--man-dir — write man pages
--json — wrap markdown in JSON
EXAMPLES
spanda reference --out docs/spanda-reference.md --man-dir docs/manEXIT STATUS
0 on success.
FILES
docs/spanda-reference.md, docs/man/ when generating.
SEE ALSO
spanda-doc(1), spanda-man(1)
NAME
codegen — Generate deployable artifacts from a Spanda program.
SYNOPSIS
spanda codegen [--target native|wasm|esp32] [--out <file>] <file.sd>
DESCRIPTION
Generate deployable artifacts from a Spanda program.
OPTIONS
--target — output format
EXAMPLES
spanda codegen --target wasm robot.sd --out robot.wasmEXIT STATUS
0 on success; 1 on codegen errors.
FILES
Generated artifact at --out.
SEE ALSO
spanda-deploy(1), spanda-compile-native(1)
NAME
debug — Start an interactive debug session.
SYNOPSIS
spanda debug [--break <line>] <file.sd>
DESCRIPTION
Start an interactive debug session.
OPTIONS
--break — initial breakpoint line
EXAMPLES
spanda debug robot.sd --break 42EXIT STATUS
0 on clean exit; 1 on errors.
FILES
Debug session uses source .sd file.
SEE ALSO
spanda-run(1)