CMLabs · Psyclone AIOS

Glossary

The core Psyclone vocabulary in one place — every term in one or two plain sentences, with a link to the chapter that covers it in depth.

Terms

TermDefinitionChapter
AIOS“AI Operating System” — the full product name is Psyclone AIOS. Not an OS you install on hardware, but the runtime that hosts, connects and monitors the components of your application.1
PsySpecThe single XML file that declares an entire system: every component, its triggers, cranks and posts, plus nodes, spaces, contexts and variables.3, 13
ComponentA running part of a Psyclone system: a module, whiteboard or catalog.1
ModuleThe basic building block: subscribes to input messages via triggers, processes them in crank functions, and publishes results through posts.4
CrankThe function (C++ or Python) that does a component's actual work; it is called when a trigger fires and talks to the system through a PsyAPI handle. Built-in cranks (like Ping) need no user code.4
TriggerA module's input declaration: which message type(s) wake the module. Crank code refers to triggers by name, so rerouting is a spec-only change.4, 5
PostA module's output declaration: what message type an output published by the crank gets, and optionally where a direct copy goes.4, 5
DataMessageThe universal data container that travels between components: typed entries (int, float, string, time, binary, nested messages) plus header fields like type, timestamps and tags.9
PsyType (message type)A message's dot-notation type, e.g. input.video.raw — increasingly specific left to right. Posts apply types; triggers and subscriptions match them, exactly or with wildcards.5
SignalA lightweight broadcast that bypasses subscription matching — the fast lane. Think of a conductor's stick beating time in a simulation.5
ContextA named situation (e.g. SoB.Alive.Awake) that selects which trigger/post sets are active in each module — the mechanism for reconfiguring dataflow at runtime.6
WhiteboardA message store: keeps posted messages and offers a retrieval query language, plus visual message viewing and filtering in PsyProbe. Under the hood, a specialised catalog.7
CatalogAn advanced module that additionally answers synchronous queries: a data store with a query language, or a conduit to an external system.8
QueryA synchronous request/reply exchange with a catalog (or whiteboard), in contrast to the asynchronous publish/subscribe message flow.8
NodeOne running Psyclone instance. A distributed system is a master node plus satellite nodes declared in the master's PsySpec.10
System ID (sysid)A 16-bit number identifying a running Psyclone system. An external program links CMSDK and calls PsySpace::connect(sysid) with this ID to attach to that system (a single local system is 1).4, 10
SpaceA separate OS process within a node. Components in a crashing space are restarted without harming the rest of the system — crash isolation.10
PsyProbePsyclone's built-in web interface for live monitoring and interaction, served over HTTP on the main port (default http://localhost:10000/).12
CMSDKThe bundled base library (threads, networking, shared memory, timing…) that Psyclone is built on and that your crank libraries compile and link against.2, 4
Tip. New to all of this? Read Introduction and Core Concepts first — they introduce these terms in order and with diagrams.
Psyclone AIOS · CMLabs