OEL (previously AEL) 1.0.0

Packages

You add signed packages from the official OEL registry, or build each of your own private packages into a single file and host it on your own release page, at any https address or inside your project.

The official registry

pack.openeng.ai is the official package registry for OEL: every package on it is published and signed by OpenEng.

Only OpenEng publishes to the official registry; every version is signed, and a published version never changes.

Official registry

  • Published only by OpenEng

  • Every version signed

  • A published version never changes

Package families of OEL 1.0.0

  • Servers and APIs

    HTTP, gRPC, WebSocket and MCP

  • Model providers

    You choose local or cloud models: local model servers, optional packages for major cloud providers, and clients for inference endpoints you run yourself.

  • Caching and messaging

    Optional packages connect agents to streams, caches and message brokers.

  • Storage and databases

    Optional storage packages keep data in files on a local or mounted path or in object storage, and connect to SQL databases you run; each can be an agent's storage point.

  • Vector stores

    Optional vector-store packages index and search your knowledge for retrieval, in a database you run.

  • Skills

    A skill is a versioned, reusable bundle of instructions, typed tools and functions that an agent or subagent loads through the skills it declares; its tools run only where the agent's permissions allow, and it adds nothing the agent did not declare.

  • Running your existing programs as tools

  • Robotics

  • Scientific computing

  • Quantum computing

All package families (opens in a new tab)

Written in OEL

  • Every OEL package, from OpenEng or from you, is written in OEL and ships as compiled, verified OEL, with no bundled native code and no install scripts.

  • When a package talks to an outside system, such as a database, a model server, a robot or a quantum computer, it uses that system's own interface, and you run that system.

Your private packages

  • You build your own libraries into shareable packages that ship compiled, without your source.
  • You build each of your own private packages into a single file.
  • You host that file yourself: as a release download in your own GitHub or GitLab project, at any https address, or inside your project.
  • Your project records the file's address and fingerprint, and OEL refuses the file if it ever changes.
  • Access tokens for your private host stay outside your project files.
  • The official registry never hosts or lists private packages.
  • OEL never treats an external package as an official one, even if its name matches.

Private packages

  • A single package file

    Built from your own libraries, without your source

  • Hosted by you

    On your own release page, at any https address or inside your project

  • Address and fingerprint recorded

    OEL refuses the file if it ever changes

Verified, repeatable installs

  • OEL verifies every package before using it, whatever its host: its fingerprint, its contents and how it was built.
  • One manifest and one lock file give reproducible builds that also work offline.
  • Your lock file pins the exact versions you built with, so builds repeat, even offline, and nothing downloads when an app starts.
  • Each folder of a project can add its own packages without affecting the rest.
  • Adding, installing, updating and removing packages are atomic and safe to roll back, and a package never runs an install script.
  • You select exactly the exports you use, and the compiler flags selections you never use.
  • Only what you use ships: an HTTP-only app carries no WebSocket code, and no gRPC code unless an edge is placed on the network, and a GET-only API no POST handlers.

Read the documentation (opens in a new tab)Questions and answers