A library is a themed, ready-made bundle of building blocks: agents, models, skills, templates and cells for one kind of work, such as "Kubernetes Operations" or "Backend API Platform". You import a bundle into a config as one unit instead of picking every item yourself. The bundles are published at library.openeng.app, and the Console's Library page (Building blocks → Library) lists them and imports them.
Status on September 25, 2026: OpenEng AI isn't live yet
The Console and Web Console interfaces load, but the OpenEng AI API routes and the Broker aren't deployed. Nothing can be saved or published, and no AI engine can register or connect. Pro, Enterprise and pay-as-you-go launch in Q4 2026 and can't be purchased yet. This page describes OpenEng AI as it works once those services are live (status).
What a bundle contains
A bundle carries no new content of its own. It points, by id, at items already published in the other public catalogs:
| In the bundle | Points at | Catalog |
|---|---|---|
| Agents | agent_def_… | agents.openeng.app — see Agents |
| Models | mdl_def_…, each tied to one role group (for example the planner or the reviewer) | models.openeng.app — see Models |
| Skills | skill_def_… | skills.openeng.app — see Skills |
| Templates | tpl_def_… | templates.openeng.app — see Templates |
| Cells | cell_def_… | cells.openeng.app — see Cells |
| Loops (supported by the importer; no current bundle has any) | loop_def_… | loops.openeng.app — see Loops |
A bundle picks at most one model per role group. The Console can also import loops from a bundle, but none of the current bundles includes any.
The bundles today
As of September 25, 2026, library.openeng.app publishes eight bundles:
| Bundle | Category | Agents | Models | Skills | Templates | Cells |
|---|---|---|---|---|---|---|
| Backend API Platform | Backend | 6 | 6 | 6 | 4 | 4 |
| CI/CD & Release Engineering | DevOps | 6 | 7 | 6 | 4 | 4 |
| Cloud Cost & FinOps | FinOps | 6 | 6 | 4 | 3 | 4 |
| Database & Data Reliability | Data | 6 | 7 | 6 | 4 | 4 |
| Frontend & Web Ops | Frontend | 6 | 7 | 6 | 4 | 0 |
| Kubernetes Operations | Infrastructure | 6 | 7 | 6 | 4 | 4 |
| Observability & Incident Response | Operations | 6 | 7 | 6 | 1 | 4 |
| Security & Compliance Baseline | Security | 6 | 7 | 5 | 4 | 4 |
For example, Kubernetes Operations brings six inspector and auditor agents (admission webhooks, certificate expiry, config and secret drift, CoreDNS, capacity and reliability, cost), hardening skills such as least-privilege RBAC and Helm chart scaffolding, four templates (ArgoCD GitOps delivery, Helm chart authoring, a cluster security review, deployment manifests), cells for EKS, AKS and GKE, and a model for each of seven role groups (Qwen3 4B for complexity analysis, Qwen3 14B for planning, Qwen3 32B for plan orchestration, Qwen3 8B for the agent and the delegator, Phi-4 14B for review, Llama 3.2 3B for summaries). Each bundle has its own page on library.openeng.app listing every item.
Import a bundle
- Open Library in the Console (or press ⌘K and choose Import a library).
- On a bundle's card, choose Import. The card expands in place (there is no dialog):
- Import into: New config, or one of your existing configs.
- Config name: used only when you create a new config. It defaults to the bundle's name.
- Choose Confirm import. When it finishes, the Console opens the target config, and a toast sums up what was added (for example "6 agents, 7 models, 6 skills, 4 templates").
- Review the config in its guided builder and publish it (Configs). Importing never publishes anything: the engine only serves what you publish.
Note
The import never creates a config you didn't name. Pick New config to get a fresh one, or pick an existing config to add the bundle to it.
What an import does
The import reuses the same steps each Building blocks page uses, one domain at a time:
- Agents are copied into your agents (Agents → Mine) and attached to the config. An orchestrator agent arrives with every sub-agent in its tree.
- Models are added to My models under a unique name; a catalog model you already added is reused rather than copied again. They're catalog models, Ollama-library tags that need Ollama installed and running on the machine (Models). Each one is then bound to the role group the bundle names, unless the config already has a model for that role group: your existing choice always wins.
- Skills and loops are adopted: each becomes your own copy that remembers its catalog id. One you already adopted is reused.
- Templates become your own private templates, each holding a reference block to the catalog template, and are attached to the config.
- Cells are not registered for you. A cell connects to your own cloud account and needs a deployment URL that a bundle can't know, so the import ends with a notice that the bundle's cells need connecting. Finish each one on the Cells page.
- Everything imported is selected on the config, so the config builder shows it ticked and the publish check finds it.
- If a bundle explicitly asks for it, the import also turns on the config's Self-improving skills switch (Skills).
Each item is imported on its own. If one fails (for example, an item was removed from its catalog), the rest still import, and a warning names what was skipped. Importing the same bundle again is safe: items already on the config aren't added twice.
After importing
- Register the bundle's cells on the Cells page, then select them in the config.
- Check the config's Models step: the bundle filled only the role groups that were still empty.
- Publish the config. Running it needs the
openengengine, which starts only on an active Pro plan (Plans & billing).
Plan & tier notes
The Library is open on every plan: browsing and importing bundles has no plan gate. The items it imports follow their own pages' rules.
Troubleshooting
"Couldn't load the library catalog." The Console couldn't reach library.openeng.app. Choose Try again. If the page instead says the catalog may be stale, it's showing the last copy it loaded successfully.
"N cells need connecting." Expected: cells are never registered automatically. Register each one on the Cells page with your own deployment URL.
"Some items were skipped." An item the bundle names is no longer in its catalog, or a model's role isn't a known role group (that model is imported without a binding). The rest of the bundle imported normally.
A role group kept its old model. The import never replaces a model that's already bound to a role group. Change it in the config's Models step.
Nothing changed on my machine. Importing only edits the config's draft. Publish the config.