Skip to main content

OLAV โ€” AI-native platform for autonomous operations with domain-aware agents, API-as-Tool, and Agent Harness

Project description

OLAV Logo

OLAV ๐Ÿบ

Online Analytical Vertex for Agentic Operations
AI-native platform for autonomous infrastructure operations.

Version License Python Docs Website

ไธญๆ–‡ๆ–‡ๆกฃ

Control your infrastructure with natural language. Connect any REST API in one command, query it instantly, generate environment-aware automation scripts โ€” no MCP servers, no code generation, no runtime complexity.

pip install olav
olav registry register http://netbox:8000        # connect any API
olav "how many devices are in NetBox?"            # query immediately
olav --agent netops "write a backup script"          # generate real scripts

Quick Start | Docs | ไธญๆ–‡


Why OLAV?

API-as-Service โ€” Beyond MCP

MCP requires a server process per service, stdio/HTTP transport, and framework-specific adapters. OLAV takes a different approach:

MCP:   Service โ†’ MCP server process โ†’ stdio/HTTP โ†’ adapter โ†’ agent
OLAV:  Service โ†’ olav registry register โ†’ reference markdown โ†’ api_request โ†’ done

One command. No server processes. No generated code. No runtime overhead.

# Register once
olav registry register http://netbox:8000

# Query from any agent, forever
olav "how many devices are in NetBox?"
olav --agent netops "compare OLAV database vs NetBox โ€” are they in sync?"

The api_request tool is schema-aware โ€” it reads API reference docs generated at registration time, handles pagination (DRF/NetBox style), and manages auth (JWT/Bearer/API-key) automatically.

Three Agents โ€” Strict Tool Isolation

olav "list all devices"                  โ†’ Core Agent (database + knowledge base)
olav --agent netops "simulate link failure" โ†’ Ops Agent (network operations + SSH)
olav --agent audit "run health check"    โ†’ Audit Agent (compliance + learning)

Core agent uses a subagent architecture โ€” the orchestrator sees only 5 tools:

core orchestrator (5 tools: execute_sql, olav_recall_memory, web_search, format_and_export, olav_delegate)
  โ”œโ”€โ”€ db_query    โ€” database queries, knowledge base, web search, export
  โ”œโ”€โ”€ api_query   โ€” API requests, health checks, web search, export
  โ”œโ”€โ”€ remote      โ€” SSH to servers, local shell commands
  โ””โ”€โ”€ admin       โ€” platform management, deployment, cron

Each subagent has only the tools it needs. execute_sql and api_request are in different subagents โ€” the LLM cannot confuse them. Principle of least authority, enforced by the harness.

7-Layer Write Security

AI agents that can write to production need more than HITL approval:

Layer Defense Bypassable?
--enable-api-write Write mode locked by default No
services.yaml readonly_only Per-service read/write control Config only
Dry-run simulation Must pass before approval offered No
HITL approval User sees diff, then confirms Not skippable
sandbox_guard hard_block HTTP writes in isolated sandbox Not skippable
unshare --net Kernel-level network isolation Not skippable
Audit trail Every api_request logged โ€”

--dangerously-skip-permissions bypasses tool approval for testing โ€” but cannot bypass API write approval. Network devices are always read-only.

Agent Harness โ€” The OS for AI Agents

Every agent decision passes through a mandatory execution control layer:

Layer 0: AAA        Token/LDAP/OIDC auth โ†’ RBAC โ†’ full audit trail
Layer 1: Middleware  HITL interception + memory injection
Layer 2: Sandbox    Pre-scan โ†’ DuckDB read-only โ†’ network namespace isolation
Layer 3: Output     Credential redaction + SSE encoding

Self-Improving Loop

Use OLAV โ†’ audit log captures every tool call
    โ†’ failure patterns extracted โ†’ written to LanceDB memory
    โ†’ future runs recall constraints before acting

Export as SFT/trajectory training data: olav log export sft.


Quick Start

# 1. Install
pip install olav

# 2. Initialize
olav init

# 3. Configure LLM
nano .olav/config/api.json   # set shared.api_key + llm.model

# 4. Connect a service
olav registry register http://netbox:8000

# 5. Query
olav "how many devices are in NetBox?"

Network Operations (optional)

olav agent install /path/to/olav-netops/          # adds netops + devops workspaces
                                                   # (legacy alias: `olav skill install`)

olav --agent netops "/netops_init"                 # collect device data via SSH
olav --agent netops "simulate R2 link failure"     # What-If analysis
olav --agent netops "deploy digital twin"          # ContainerLab validation

Other Interfaces

olav                            # interactive TUI
olav service start --all        # web UI at localhost:2280
olav --agent core "run: df -h"  # shell commands via Core Agent

Architecture

olav v0.18.0 (pip install olav)
โ”œโ”€โ”€ core orchestrator (5 tools)
โ”‚   โ”œโ”€โ”€ db_query    โ€” execute_sql, olav_recall_memory, web_search, format_and_export
โ”‚   โ”œโ”€โ”€ api_query   โ€” api_request, service_health, web_search, format_and_export
โ”‚   โ”œโ”€โ”€ remote      โ€” remote_execute (SSH), run_shell
โ”‚   โ””โ”€โ”€ admin       โ€” workspace_health, bulk_ingest, deploy/stop_service, cron, ...
โ”‚
olav-netops v0.19.0 (olav agent install olav-netops/)
โ”œโ”€โ”€ netops orchestrator
โ”‚   โ”œโ”€โ”€ probe    โ€” Parallel SSH with command whitelist (Nornir)
โ”‚   โ”œโ”€โ”€ analysis โ€” Dijkstra + ECMP simulation (networkx)
โ”‚   โ”œโ”€โ”€ diff     โ€” Cross-snapshot drift detection
โ”‚   โ””โ”€โ”€ lab      โ€” ContainerLab digital twin + commit-validate
โ”œโ”€โ”€ audit
โ”‚   โ”œโ”€โ”€ design   โ€” Compliance profiles + health reports
โ”‚   โ””โ”€โ”€ learn    โ€” TextFSM template learning
โ””โ”€โ”€ netops.*     โ€” DuckDB tables + TextFSM collection pipeline

Tech Stack: LangChain ยท LangGraph ยท DeepAgents ยท DuckDB ยท LanceDB ยท FastAPI ยท NetworkX


Documentation

Docs: docs.olavai.com ยท Website: olavai.com


License

BSL-1.1 โ€” Business Source License 1.1

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

olav-0.21.0.tar.gz (1.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

olav-0.21.0-py3-none-any.whl (1.9 MB view details)

Uploaded Python 3

File details

Details for the file olav-0.21.0.tar.gz.

File metadata

  • Download URL: olav-0.21.0.tar.gz
  • Upload date:
  • Size: 1.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for olav-0.21.0.tar.gz
Algorithm Hash digest
SHA256 baa9b0f3babebf4cb257119d8954bf2e2b1e77d67d8e30b8ec46794c2a3bb712
MD5 27a5b4b02e08b8b0a2772430cb749efb
BLAKE2b-256 49979777038565e2a4de17cc264f24fc20c4c52c0c969698199603d876b85776

See more details on using hashes here.

File details

Details for the file olav-0.21.0-py3-none-any.whl.

File metadata

  • Download URL: olav-0.21.0-py3-none-any.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for olav-0.21.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c6fe2b48e80565eb6ed6658269207c9f502c0269356443f8e54ca3ce4bd69cb3
MD5 2eec1fbfde6de7f3299a106d51efdd39
BLAKE2b-256 3f045ead3798fdbe3ba84175481b77374d311c38d2096c053875869ce4c3ff6d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page