When humans and AI
speak the same language.

Every daemon, every YAML playbook, and every AI agent meets on one event bus and speaks the same vocabulary of facts and generic verbs. You write intent as YAML; agents call the same verbs over MCP.

Architecture

The whole stack fits on one screen.

Core

logger:9100

JSONL log sink (batch + SIGHUP)

database:9102

Postgres gateway

cliconsole

Operator CLI / control plane

Modules

playbook:9108

YAML workflow orchestrator

showman:9111

HTTP content & templating

scheduler:9110

Time-based triggers (cron)

mailbox:9107

Multi-IMAP/SMTP gateway

webhookcaller:9109

Outbound HTTP (HMAC)

aiinjector:9104

LLM gateway (multi-provider)

datatransporter:9105

ETL + S3/MinIO storage

dataanaliser:9106

Analytics + anomaly + forecast

traefiklinker:9103

Edge integrator (Traefik)

Verticals

modbus:9112

MODBUS TCP / RTU PLC gateway

Playbooks

Three primitives. That is the grammar.

A trigger names the event that starts a run. steps run verbs in order, passing results with ${prev.…}. parallel fans steps out concurrently. There is no if-jungle and no expression language — branching belongs to events, logic belongs to daemons. Playbooks hot-reload on file drop; the host validates every file against the full verb contract before it runs.

parallel · yaml
steps:
  - id: fan-out
    parallel:
      - run: webhook.send
        with: { alias: ops-chat, body: { text: "Deploy done" } }
      - run: mail.send
        with: { from_alias: bot, to: [ops@yourco.example],
                subject: "Deploy done", body_text: "All green." }

Protocols

Every direction, one engine.

Inbound edge

traefiklinker
HTTPHTTPSWSWSSSSEgRPCgRPC-web

Outbound API

webhookcaller
RESTHMACOAuth2GraphQLSOAP

Messaging

mailbox
IMAPSMTPMQTTAMQP

AI providers

aiinjector
AnthropicOpenAIOllama

Industrial

modbus
MODBUS TCPMODBUS RTU (over TCP)Master read/writeSCADA slave modeMEI device ID

Storage / ETL

datatransporter
S3MinIOSFTPFTPlocal fs

Integrations

One verb reaches all of them.

Binions does not ship a thousand connectors — it ships webhook.send and friends, which speak plain REST, HMAC-signed webhooks, GraphQL and SOAP. If a service has an API, a playbook can drive it. A few names people ask about:

Google SheetsGmailOpenAISlackTelegramGoogle GeminiAnthropicAirtableGoogle DriveMicrosoft Excel 365NotionSupabaseDiscordPostgresMySQLGitHubGoogle CalendarMongoDBMicrosoft SQLOpenWeatherMapHubSpotX (Twitter)MauticBaserowRedisPushoverSendGridJira SoftwareClickUpTrelloAWS S3TwilioWooCommerceTodoistPipedriveNextcloudMicrosoft OutlookMQTT
More
Action NetworkActiveCampaignAdaloAffinityAirtopAMQPAPITemplate.ioAsanaAutopilotAWS Certificate ManagerAWS CognitoAWS ComprehendAWS DynamoDBAWS ELBAWS IAMAWS LambdaAWS RekognitionAWS SESAWS SNSAWS SQSAWS TextractAWS TranscribeAzure Cosmos DBAzure StorageBitbucketBitlyBitwardenBrevoBubbleCal.comCalendlyCircleCIClearbitClockifyCloudflareCockpitCodaCoinGeckoConvertKitCopperCortexcrowd.devCurrentsCustomer.ioDatabricksDeepLDemioDHLDiscourseDriftDropboxDropcontactE-goiElastic SecurityElasticsearchEmeliaERPNextFacebookFacebook Graph APIFacebook Lead AdsFigmaFlowForm.ioFormstackFreshdeskFreshserviceFreshworks CRMGhostGitLabGongGoogle AdsGoogle AnalyticsGoogle BigQueryGoogle BooksGoogle Business ProfileGoogle ChatGoogle Cloud Realtime DatabaseGoogle Cloud StorageGoogle DocsGoogle PerspectiveGoogle SlidesGoogle TasksGoogle Workspace AdminGoToWebinarGrafanaGristHaloPSAHelp ScoutHighLevelHome AssistantHumantic AIIntercomInvoice NinjaJenkinsJina AIJiraJotformKitemakerKoBoToolboxLemlistLinearLinkedInLoneScaleMagento 2MailcheckMailchimpMailerLiteMailgunMailjetMandrillMarketstackMattermostMessageBirdMetabaseMicrosoft Dynamics CRMMicrosoft Entra IDMicrosoft Graph SecurityMicrosoft OneDriveMicrosoft SharePointMicrosoft TeamsMicrosoft To DoMindeeMISPMistral AIMoceanMonday.comMSG91NetlifyNetscaler ADCNocoDBNpmOdooOktaOnfleetOracle DatabaseOuraPagerDutyPayPalPerplexityPhantombusterPlivoPostBinPostHogProfitWellPushbulletQuickBooks OnlineQuickChartRaindropRedditRocketChatSalesforceSeaTableSecurityScorecardSegmentSentry.ioServiceNowsevenShopifySnowflakeSplunkSpotifyStoryblokStrapiStravaStripeSurveyMonkeyTaigaTapfiliateTheHiveTheHive 5TimescaleDBTypeformUptimeRoboturlscan.ioVenafi TLS Protect CloudVenafi TLS Protect DatacenterVeroVonageWebflowWekanWhatsAppWhatsApp Business CloudWiseWordpressXeroZammadZendeskZoho CRMZoomZulip

Footprint

629 MB. Everything included.

Measured live: thirteen daemons, fourteen Redis instances, the edge proxy, tracing and object storage — the entire platform idles at 629 MB RSS. Category minimums for comparable stacks start where we end.

Binions (full stack)629 MB
Node-based workflow tool (engine only)500 MB
Python DAG orchestrator2 GB
JVM BPM suite3 GB
JVM dataflow platform4 GB
Enterprise ESB (typical minimum)8 GB

Binions: live RSS on a production host. Others: typical published minimums per category.

Scale

The same stack, from a Pi to a rack.

Raspberry Pi 4

2 GB RAM

Edge, at the machine

31% used by the full stack

Intel NUC

8 GB RAM

Branch / small office

8% used by the full stack

1U server

32 GB RAM

Production

2% used by the full stack

Dell R730

256 GB RAM

Datacenter headroom

1% used by the full stack

Scaling is vertical by design — one host, no cluster choreography.

Observability

Traced from the first boot.

Every event carries a correlation id across daemons; spans land in Jaeger, metrics in Prometheus, logs as structured events you can trigger on. When a run fails, dead-letter queues keep the evidence.

Security

Hardened like a service, not a script.

Systemd sandboxing on all daemons, per-daemon Redis with own credentials, allow-listed SSH commands, HMAC-verified ingest, TLS at the edge, and an anti-piracy licence layer that fails closed. Secrets live in root-owned files — never in YAML.