A unified, self-hosted platform for job scheduling, visual workflow automation, server monitoring, alerting, and incident response — built for teams who demand full ownership of their operations stack.
xyOps is a next-generation operations platform that merges job scheduling, workflow automation, server monitoring, and incident ticketing into a single cohesive system. Unlike point solutions that force teams to stitch together separate cron managers, observability tools, and alert routers, xyOps creates a closed feedback loop: when a job fails or a monitor fires an alert, the platform automatically captures a server snapshot, opens a ticket with full context, and gives operators everything they need to diagnose the issue without switching tools.
At its core, xyOps ships with a visual workflow editor that lets you construct multi-step pipelines by connecting event triggers, conditional branches, shell actions, file transfers, HTTP requests, and monitoring checkpoints on a graphical canvas. Workflows execute as trackable jobs, so every run — whether triggered by a schedule, a webhook, or a monitor condition — produces a full audit trail of logs, output, timing, and linked alerts.
The platform is built for fleet management. A lightweight satellite agent (xysat) deploys to each managed server and streams real-time CPU, memory, disk, network, and process data back to a central conductor. Operators can define custom monitors with jexl expression-based alert thresholds, configure multi-channel notifications, and group servers logically for bulk operations. Clusters of conductors are supported with built-in leader election over WebSocket, allowing high-availability deployments.
xyOps is released under the BSD-3-Clause license, requiring no telemetry and no vendor lock-in. A paid Professional and Enterprise tier adds commercial support, SSO assistance, and private ticketing — but every feature of the application is available in the open-source release from day one.
Architecture xyOps is organized as a layered monolith built on the pixl-server component framework, where discrete capability modules — Scheduler, Workflow, Monitor, Alert, Ticket, Multi, Action, SSO, and Server — are composed into a single engine class at startup rather than deployed as microservices. Each layer registers event listeners on a central minute-tick bus and communicates through shared in-memory state and a pluggable storage abstraction, avoiding inter-process serialization overhead while keeping concerns cleanly separated. The multi-server layer uses WebSocket-based leader election with a configurable masters.json file to designate conductor nodes, and the lightweight xysat satellite process runs on each managed host to stream telemetry back to the active master. This design means a single Node.js process handles scheduling, real-time monitoring, workflow execution, alerting, and ticketing in concert, making cross-domain correlations — like attaching a live server snapshot to a failing job — trivially cheap.
Tech Stack The server runtime is Node.js LTS targeting v16 or later, with the entire backend written in modern class-based JavaScript using the BSD-licensed pixl-server family of components for HTTP, storage, user management, and full-text search. Storage is pluggable: better-sqlite3 is the default for single-node installs, with PostgreSQL via the pg driver and Redis via ioredis available for clustered deployments. The jexl expression library powers alert threshold evaluation and workflow conditional branching, giving operators a safe, sandboxed expression language without arbitrary code execution. The frontend is a jQuery and CodeMirror 5 application served from htdocs, compiled at build time with uglify-js and clean-css, and the terminal interface uses xterm.js with its fit addon. Alerting emails are HTML with inline CSS via the juice library, and the Dockerfile targets Node 22 on Debian Bookworm slim with Docker CLI, Python 3, and uv pre-installed for action plugins.
Code Quality The test suite is comprehensive, with dedicated test files covering every major subsystem — scheduler, workflows, jobs, alerts, monitors, tickets, search, servers, API keys, webhooks, roles, and more — totalling roughly 4,900 lines of integration tests run via pixl-unit. Error handling is explicit throughout: each module has a dedicated logger method, errors propagate through standard Node.js callbacks, and the engine hooks the logger to write a dedicated Error.log. Naming conventions are consistent across modules with camelCase method names following a descriptive verb-noun pattern. There is no TypeScript, but the codebase applies structured data contracts through configuration schemas and the unbase index definitions. The CONTRIBUTING.md, SECURITY_OVERVIEW.md, THREAT_MODEL.md, and CHANGELOG.md indicate mature release discipline, and the Longevity Pledge reflects deliberate governance planning.
What Makes It Unique The defining technical differentiator of xyOps is its automated context-threading: when a monitor fires an alert or a job fails, the platform synchronously captures a full server snapshot — process list, CPU state, memory map, network connections — and attaches it to the alert or ticket record at the moment of failure rather than after the fact. This means operators see the system state at the instant of the incident, not after logs have rolled. The visual workflow editor expresses pipelines as typed node graphs evaluated with jexl expressions, combining the safety of sandboxed scripting with the discoverability of a no-code canvas, while still allowing raw shell, HTTP, file, Docker, and SSH action nodes for power users.
xyOps is released under the BSD-3-Clause license, one of the most permissive open-source licenses available. It allows commercial use, modification, redistribution, and private deployment without any requirement to open-source your own code or pay royalties. The only obligations are preserving the copyright notice and the three-clause disclaimer. This makes xyOps legally straightforward for commercial operations teams and enterprises that need to integrate automation tooling into proprietary environments.
Running xyOps yourself means you are responsible for the full operational stack: Node.js process supervision, storage backend management (SQLite file backups or PostgreSQL cluster maintenance), log rotation, TLS certificate renewal, network firewall rules, and OS-level security patching on the host. The satellite agent (xysat) must be deployed and kept in sync with the conductor version on every managed server. The platform does include Docker and Dockerfile support and a container-start script, which eases deployment on container orchestrators, but there is no official Kubernetes operator or Helm chart in the repository. High availability requires manual configuration of multi-conductor mode with a shared masters.json.
The Free tier is fully featured with community support via Reddit and Discord. The Professional tier (paid, see xyops.io/pricing) adds private support tickets with a 24-hour response SLA, and the Enterprise tier adds SSO setup assistance, air-gapped installation support, and a one-hour response SLA with live chat. Users who self-host without a paid plan are responsible for diagnosing their own issues and contributing back through community channels. For teams without dedicated DevOps capacity to maintain a Node.js application stack, the Professional plan’s support contract may be worth evaluating before committing to a self-hosted deployment.
Automation · Productivity · AI Assistants
Build, deploy, and run autonomous AI agents that automate complex multi-step workflows using a visual block-based graph editor.
Monitoring
Self-hosted monitoring for every service you run — 23 monitor types, 95 notification channels, live dashboards, and public status pages with no vendor lock-in.
Devops · Automation · Security
A cloud-native reverse proxy and load balancer that auto-configures itself from Docker, Kubernetes, and other orchestrators — zero manual routing required.