Sterblue Synapses

Sterblue Synapses enables interactions between heterogeneous agents such as Humans and Web services alike.

The following introduction describes the base concepts which will be used throughout the documentation.

Plan, Execution and Activity#

split diagram

Synapses relies on three different entities to express the workflows:

  • Plan: represents the goal, what needs to be performed by your agents.

  • Execution: represents the result, what has been output by your agents.

  • Activity: express explicitly what has been done by your agents between two steps of your workflow.

In the above example, the execution of a wind turbine inspection has been split into three blades inspections. These three inspections might themselves be split into leading-edge and trailing-edge inspections, creating a fine-grained workflow.



Handlers are the functions responsible for holding your business logic. They interact with Synapses Activity in order to retrieve the data required for their executions.

Doing all the boilerplate work required to fetch your data and give Synapses the output it needs can be tedious and annoying. To make it easier, multiple helpers are provided, allowing you to create boilerplate-free handlers



Connectors takes care of connecting your agents to the communication layer of your choice. Through the connectors, your agents are able to subscribe to events and send their results back into the workflow pipeline.

Why is Synapses required, can't I just write my agent code directly?#

Agents and services comes in many different flavors. As your team grows, you need to make sure that your agents are able to communicate with each others. In old architectures that were not originally built to support interactions with multiple agents, you can find patterns we consider outdated, such as bloated Enterprise Service Bus or unreliable API contracts.

At Sterblue, we believe agents should be first thought as parts of a larger process. This is why Sterblue Synapses provides a quick and standardized way to write your agents so they can easily be plugged to each others.