Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add rules/kubev2v/forklift-console-plugin/ovirtgit clone --depth 1 https://github.com/kubev2v/forklift-console-pluginWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/rules/kubev2v/forklift-console-plugin/ovirt)<a href="https://agentmods.dev/rules/kubev2v/forklift-console-plugin/ovirt"><img src="https://agentmods.dev/badge/rules/kubev2v/forklift-console-plugin/ovirt.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00018 | $0.03561 |
| Opus 5 | $0.00009 | $0.01781 |
| Sonnet 5 | $0.00004 | $0.00712 |
| Haiku 4.5 | $0.00002 | $0.00356 |
Grade A, and why
ovirt scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 317 lines — stays where its author put it; the contents beside it link to each section on GitHub.
oVirt Provider
Analyzed from commit:
412c71822on2026-05-04
Authentication & Connection
The collector authenticates against the oVirt Engine SSO endpoint:
- Token URL:
{engine-url}/ovirt-engine/sso/oauth/token - Grant type:
passwordwith scopeovirt-app-api - Secret fields:
user,password,cacert(PEM CA certificate) - InsecureSkipVerify: controlled by
insecureSkipVerifyflag in the Secret - API version header:
Version: 4(oVirt API v4) - Token management: Bearer token with automatic refresh on expiry
- Client timeout: default 30 minutes, overridable via
spec.settings.ovirtClientTimeout
Source: pkg/controller/provider/container/ovirt/client.go
Inventory Collector
Lifecycle Phases
The collector runs a state machine loop:
| Phase | Action |
|---|---|
Started |
Note the last oVirt event ID (GET events?max=1) |
Load |
Full inventory load — list every resource type from Engine API |
Loaded |
First incremental refresh via Engine events |
Parity |
Start DB watches; mark parity = true |
Refresh |
Poll Engine events every 10 s, apply changesets to local DB |
On any error the collector retries after 5 s.
oVirt Engine API Endpoints Queried
Resources are loaded in this adapter order (important for FK resolution):
| # | Adapter | Engine API path | follow params |
|---|---|---|---|
| 1 | DataCenterAdapter | datacenters |
— |
| 2 | StorageDomainAdapter | storagedomains |
— |
| 3 | NICProfileAdapter | vnicprofiles |
— |
| 4 | DiskProfileAdapter | diskprofiles |
— |
| 5 | NetworkAdapter | networks |
vnic_profiles |
| 6 | DiskAdapter | disks |
— (LUN disks re-fetched individually for logical unit details) |
| 7 | ClusterAdapter | clusters |
— |
| 8 | ServerCPUAdapter | options/ServerCPUList |
— |
| 9 | HostAdapter | hosts |
network_attachments, nics |
| 10 | VMAdapter | vms |
disk_attachments, host_devices, snapshots, watchdogs, cdroms, nics |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 317 lines · 18 tokens per session scan A 18da88aef6b4
ovirt is a cursor rule published in the GitHub repository kubev2v/forklift-console-plugin (11 stars, last pushed 4d ago), licensed Apache-2.0. It adds 18 tokens to every session and 3,561 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other cursor rules, from other repositories
angular-20
This rule provides comprehensive best practices and coding standards for Angular development, focusing on modern TypeScript, standalone components, signals, and performance optimizations.
dev-standard
Apache Superset development standards and guidelines for Cursor IDE.
cli-error-handling
CLI command error handling patterns.
prefer-direct-imports-over-module-mocks
Prefer extracting a testable core over vi.mock / vi.resetModules when unit tests need to reach production logic entangled with config, env, or singletons.
control-plane-descriptors
Control plane descriptor and instance implementation patterns.
family-instance-domain-actions
Family instance domain action implementation patterns.