intersystems-community/iris-vector-graph/ivg-arno
Claude Code and agent skill by intersystems-community/iris-vector-graph
- community
Checking that the SKILL.md file is still in the repository.
Arno (libarno_callout.so) Rust acceleration for IVG — BFS, Leiden community detection, PPR. Load when working on large-graph operations with ivg-iris-enterprise container.
Install
npx vskill@latest install intersystems-community/iris-vector-graph/ivg-arnoSKILL.md
ivg-arno — Arno Rust Acceleration for IVG
What It Is
Arno (libarno_callout.so) is a Rust callout library that accelerates IVG's most compute-intensive graph operations. It replaces Python-side BFS and community detection with native Rust implementations invoked via IRIS $ZF(-5) callout.
When It Matters
| Operation | Without Arno | With Arno | Threshold | |
|---|---|---|---|---|
| BFS / multi-hop traversal | LazyKG Python (~seconds at scale) | Rust BFS (~ms) | > ~10K nodes | |
| Leiden community detection | leidenalg Python | leiden-rs Rust crate | > ~5K nodes | |
| PPR (Personalized PageRank) | Not available | Available | Any size | |
| Graph serialization to Rust | ~944ms (20K Native-API hops) | ~9–60ms (1 SQL round-trip) | > ~2K edges |
For small graphs (< 5K nodes) the Python fallback is fast enough. Use Arno when running production workloads, benchmarks, or Shaarpec/FHIR-scale data.
How to Enable
Arno requires the enterprise container (ivg-iris-enterprise):
The up command runs tcp-load-arno which streams docker/enterprise/libarno_callout.so into the container via TCP and calls Graph.KG.ArnoAccel.Load to register it.
ASQ Query Syntax vs Cypher
IVG exposes two query languages:
| Cypher | ASQ | ||
|---|---|---|---|
| Syntax | MATCH (a)-[:REL]->(b) RETURN b | JSON/structured adjacency spec | |
| Surface | engine.execute_cypher(q) | engine.execute_asq(q) | |
| Multi-hop | [*1..N] variable-length | native BFS depth parameter | |
| When Arno helps | Routes to Rust BFS internally | Direct Rust BFS | |
| Best for | Ad-hoc queries, Cypher-fluent callers | Programmatic traversal, bulk BFS |
ASQ example:
Fixtures in Tests
Tests that require Arno use the arno_iris_connection fixture (port 31972). They auto-skip when the enterprise container is not running — they never hard-fail on Community-only machines.
Key ObjectScript Classes
| Class | Purpose | |
|---|---|---|
Graph.KG.ArnoAccel | Callout bridge — Load, BFS, PPR, Leiden | |
Graph.KG.NKGAccel | Integer-keyed adjacency operations over ^NKG | |
Graph.KG.NKGAccelTraversal | Traversal methods (BFS, k-hop) on ^NKG | |
Graph.KG.NKGAccelCentrality | Closeness/eigenvector/betweenness on ^NKG |
Deploy / Recompile
If ObjectScript classes change, redeploy to the enterprise container:
Direct irispython or docker cp won't work — the enterprise container uses a NoPWS HealthShare image where TCP and irispython route to different database files (dual-DB split). Always use the tcp-deploy subcommand.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/ivg-arno/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/intersystems-community/iris-vector-graph/ivg-arno)