Skip to content

arkvoidai/arkvoid-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ARKVOID SDK

AI Agent Monitoring & Governance

JavaScript SDK Python SDK License: MIT

Capture cryptographic audit trails for every AI agent action.
Zero-dependency. Works with OpenAI, Anthropic, LangChain, and any framework.

Website · Dashboard · Docs


What is ARKVOID?

ARKVOID is an AI governance platform that lets you:

  • Monitor every LLM call, tool invocation, and data access your agents make
  • Verify cryptographic integrity hashes on all traces
  • Audit compliance across SOC2, GDPR, and EU AI Act frameworks
  • Govern risk levels and require human approval for high-risk actions
  • Detect anomalies and policy violations in real time

SDK Installation

JavaScript / TypeScript

npm install arkvoid
import { ArkvoidClient } from "arkvoid";

const arkvoid = new ArkvoidClient({
  apiKey: process.env.ARKVOID_API_KEY!,
  agent: "my-agent",
});

await arkvoid.trace({
  action: "document_analysis",
  riskLevel: "low",
  modelProvider: "openai",
  modelName: "gpt-4o",
  inputTokens: 1200,
  outputTokens: 340,
  durationMs: 1823,
});

Python

pip install arkvoid
from arkvoid import ArkvoidClient

client = ArkvoidClient(api_key="ARK_...", agent="my-agent")

client.trace(
    action="document_analysis",
    risk_level="low",
    model_provider="openai",
    model_name="gpt-4o",
    input_tokens=1200,
    output_tokens=340,
    duration_ms=1823,
)

Zero-Boilerplate Options

JavaScript – logAction()

const result = await arkvoid.logAction(
  () => openai.chat.completions.create({ model: "gpt-4o", messages }),
  { action: "gpt4o_call", riskLevel: "low" }
);

Python – @trace Decorator

from arkvoid import trace

@trace(agent="my-agent", action="analyze_document", risk_level="low")
def analyze_document(text: str) -> str:
    return llm.complete(text)  # traced automatically — zero extra code

Repository Structure

arkvoid/
│
├── sdk/
│   ├── javascript/             # npm package: arkvoid
│   │   ├── src/
│   │   │   ├── index.ts        # Main exports + functional API
│   │   │   ├── client.ts       # ArkvoidClient class
│   │   │   ├── types.ts        # TypeScript interfaces
│   │   │   ├── hash.ts         # SHA-256 utilities (Web Crypto API)
│   │   │   ├── verify.ts       # Trace verification
│   │   │   ├── retry.ts        # Exponential backoff + jitter
│   │   │   ├── http.ts         # Fetch-based HTTP client
│   │   │   ├── errors.ts       # Custom error classes
│   │   │   └── logger.ts       # Debug logger
│   │   ├── examples/
│   │   │   ├── openai-monitoring.ts
│   │   │   ├── langchain-integration.ts
│   │   │   ├── custom-agent.ts
│   │   │   ├── document-analysis.ts
│   │   │   └── tool-tracing.ts
│   │   ├── dist/               # Built output (ESM + CJS)
│   │   ├── package.json
│   │   ├── tsconfig.json
│   │   ├── tsup.config.ts
│   │   └── README.md
│   │
│   └── python/                 # PyPI package: arkvoid
│       ├── arkvoid/
│       │   ├── __init__.py     # Public API surface
│       │   ├── client.py       # ArkvoidClient (sync)
│       │   ├── async_client.py # AsyncArkvoidClient
│       │   ├── decorators.py   # @trace, @trace_tool
│       │   ├── types.py        # Dataclasses + type aliases
│       │   ├── hash.py         # SHA-256 utilities (hashlib)
│       │   ├── errors.py       # Custom exceptions
│       │   ├── retry.py        # Retry with backoff
│       │   └── py.typed        # PEP 561 marker
│       ├── examples/
│       │   ├── openai_monitoring.py
│       │   ├── langchain_integration.py
│       │   ├── custom_agent.py
│       │   ├── document_analysis.py
│       │   └── tool_tracing.py
│       ├── pyproject.toml
│       └── README.md
│
├── docs/
│   ├── quickstart.md
│   ├── api-reference.md
│   └── integrations.md
│
├── LICENSE
├── .gitignore
└── README.md               ← you are here

Features

Feature JavaScript Python
Sync tracing
Async tracing ✅ (AsyncArkvoidClient)
Decorator / wrapper client.wrap() @trace
SHA-256 hashing ✅ Web Crypto API ✅ hashlib
Trace verification ✅ online + offline ✅ online + offline
Retry + backoff
Timeout handling ✅ AbortSignal
ESM + CommonJS
TypeScript types ✅ full
PEP 561 typed
Zero dependencies
Node.js 18+
Edge runtimes
Tool call tracing
Data access logging
Session grouping
Parent/child traces

Supported Runtimes

JavaScript SDK works in:

  • Node.js 18+
  • Deno
  • Bun
  • Cloudflare Workers
  • Vercel Edge Functions
  • Any runtime with fetch + crypto.subtle

Python SDK works in:

  • Python 3.8+
  • AWS Lambda
  • Google Cloud Functions
  • Azure Functions
  • FastAPI / Django / Flask

Build from Source

JavaScript

cd sdk/javascript
npm install
npm run build      # Outputs ESM + CJS to ./dist/
npm run typecheck

Python

cd sdk/python
pip install -e ".[dev]"
pytest
mypy arkvoid/

Publishing

npm

cd sdk/javascript
npm run prepublishOnly   # clean + build + typecheck
npm publish              # publishes as "arkvoid"

PyPI

cd sdk/python
pip install build twine
python -m build
twine upload dist/*

Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feat/my-feature
  3. Make your changes
  4. Run tests and type checks
  5. Open a pull request

License

MIT © ARKVOID Inc.
Built by Manish Talukdar — Cherazen Inc.

About

Production-grade AI observability and trust SDK for tracing, verification, monitoring, and secure AI agent execution.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors