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 --agent infra "how many devices in NetBox?" # query immediately
olav --agent devops "write a backup script"      # generate real scripts

Quick Start | Blog: v0.13 Release | ไธญๆ–‡


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 infra "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.

Six Specialized Agents โ€” Not One Omniscient Model

olav "quick question"                    โ†’ Quick Agent (80% of daily use)
olav --agent infra "query NetBox"        โ†’ Infra Agent (API read + write)
olav --agent devops "write a script"     โ†’ DevOps Agent (environment-aware)
olav --agent ops "simulate link failure" โ†’ Ops Agent (network operations)
olav --agent audit "run health check"    โ†’ Audit Agent (compliance reports)

Each agent has only the tools it needs. The analysis agent can't SSH to devices. The infra agent can't modify the network. Principle of least authority, enforced by the harness.

DevOps Agent โ€” Scripts for YOUR Infrastructure

The DevOps agent doesn't write templates. It queries your actual database first:

olav --agent devops "write a script to backup all router configs"

It discovers R1 (192.168.100.101, Juniper), R2-R4 (Cisco IOS), SW1-SW2, then generates a 158-line bash script with:

  • Platform-specific commands (show run vs show configuration)
  • --dry-run flag, error handling, dependency checks
  • Exported to exports/scripts/backup-configs.sh โ€” a real file, not chat text

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

7,650+ audit messages captured. Export as SFT/trajectory training data: olav log export sft.


Quick Start

# 1. Install
pip install olav

# 2. Initialize
olav init

# 3. Configure LLM
export OLAV_LLM_API_KEY="sk-..."

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

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

# 6. Generate scripts
olav --agent devops "write a backup script for all routers"

Network Operations (optional)

pip install olav-netops

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

Other Interfaces

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

Architecture

olav v0.13 (pip install olav)
โ”œโ”€โ”€ core     โ€” Tools: api_request, execute_sql, sandbox, export
โ”œโ”€โ”€ quick    โ€” Fast queries (default agent)
โ”œโ”€โ”€ infra    โ€” API read + write (--enable-api-write)
โ”œโ”€โ”€ devops   โ€” Environment-aware script generation
โ”œโ”€โ”€ audit    โ€” Compliance profiles + health reports
โ””โ”€โ”€ config   โ€” Platform management

olav-netops v0.13 (pip install olav-netops)
โ”œโ”€โ”€ ops orchestrator
โ”‚   โ”œโ”€โ”€ analysis โ€” Dijkstra + ECMP simulation (networkx)
โ”‚   โ”œโ”€โ”€ probe    โ€” Parallel SSH with command whitelist (Nornir)
โ”‚   โ”œโ”€โ”€ diff     โ€” Cross-snapshot drift detection
โ”‚   โ””โ”€โ”€ lab      โ€” ContainerLab digital twin + commit-validate
โ””โ”€โ”€ netops.*     โ€” DuckDB tables + TextFSM collection pipeline

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


By the Numbers

Metric Value
Tests 1,358 passing
DDD Claims 44 verified
Issues closed 62+
Doc pages 28 (EN + ZH)
Audit messages 7,650+

Documentation

Docs: docs.olavai.com ยท Website: olavai.com ยท Blog: v0.13 Release


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.14.3.tar.gz (270.0 kB view details)

Uploaded Source

Built Distribution

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

olav-0.14.3-py3-none-any.whl (336.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: olav-0.14.3.tar.gz
  • Upload date:
  • Size: 270.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for olav-0.14.3.tar.gz
Algorithm Hash digest
SHA256 409e1d44edc506efec17026bc9f81fa3bc4bdb2be2df0bdf71d0761b96c9f729
MD5 c47c1b98215f79d86152c4f9ad792a7b
BLAKE2b-256 7ccaeb610dca697e208d1ce0fff6386ce8dd42a16cfa8c3f9d8ce9bf7d73ad12

See more details on using hashes here.

File details

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

File metadata

  • Download URL: olav-0.14.3-py3-none-any.whl
  • Upload date:
  • Size: 336.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for olav-0.14.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d79aea1acda2836a05312678f9b482d769d2e2829c00df877ceaebb10fdf9b65
MD5 c41460fac0757dab7271e2f6d6fec6dd
BLAKE2b-256 8f3c922b6617fe038128320ff9bf50fb9cc39bd1deaffc1597cb30d053db4450

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