Quickstart
Send your first call record to Argosvix in five minutes.
Fastest: set up everything with one command
Run this in your project directory:
npx @argosvix/cli init
Approve once in your browser, and it handles the rest automatically: least-privilege API key issuance, SDK install, .env setup, MCP server connection (Cursor / Claude Desktop), and a test event. You can also ask Claude or Cursor to "set up Argosvix" and let the agent run this command for you.
Prefer to do it step by step? Continue below.
1. Create an account and issue an API key
- Sign up at dashboard.argosvix.com/signup.
- After email verification, open the API keys page and click + New.
- Copy the
argk_...token immediately — it cannot be displayed again.
ℹ️ The API key is sensitive. Do not commit it to Git. Store it in an environment variable such as
process.env.ARGOSVIX_API_KEY.
2. Install the SDK
Install alongside the AI provider SDK you use.
# OpenAI
npm install @argosvix/sdk@alpha openai
# Anthropic
npm install @argosvix/sdk@alpha @anthropic-ai/sdk
# Gemini
npm install @argosvix/sdk@alpha @google/genai
# Mistral
npm install @argosvix/sdk@alpha @mistralai/mistralai
For Python:
pip install argosvix openai
import os
from openai import OpenAI
from argosvix import wrap, ArgosvixConfig
client = wrap(OpenAI(), ArgosvixConfig(api_key=os.environ["ARGOSVIX_API_KEY"]))
# then call client.chat.completions.create(...) as usual — calls are recorded automatically
3. Wrap your client with wrap()
Pass your existing AI client through wrap() and every call will be recorded by Argosvix automatically.
OpenAI example
import OpenAI from "openai";
import { wrap } from "@argosvix/sdk";
const openai = wrap(new OpenAI(), {
apiKey: process.env.ARGOSVIX_API_KEY,
tags: { service: "my-app" },
});
const res = await openai.chat.completions.create({
model: "gpt-5.5",
messages: [{ role: "user", content: "Hello" }],
});
Anthropic example
import Anthropic from "@anthropic-ai/sdk";
import { wrap } from "@argosvix/sdk";
const anthropic = wrap(new Anthropic(), {
apiKey: process.env.ARGOSVIX_API_KEY,
tags: { service: "my-app" },
});
const res = await anthropic.messages.create({
model: "claude-sonnet-4-6",
max_tokens: 200,
messages: [{ role: "user", content: "Hello" }],
});
tags is an arbitrary key/value map you can use to filter or aggregate on the dashboard — common examples include service, env, and feature.
4. Cloudflare Workers / AWS Lambda / Vercel Edge
In short-lived runtimes, always await flushClient() inside the handler's finally block. Without it, records never reach the dashboard because the runtime terminates before the SDK finishes sending.
import { wrap, flushClient } from "@argosvix/sdk";
const client = wrap(new OpenAI(), {
apiKey: process.env.ARGOSVIX_API_KEY,
});
export default {
async fetch(req, env) {
try {
return await handler(client, req, env);
} finally {
await flushClient(client);
}
},
};
Long-lived processes (Node.js servers, Bun, Deno deploy, and similar) don't need it. The TypeScript SDK sends automatically once 100 records are buffered (call flushClient() to send earlier); the Python SDK flushes in the background roughly every 5 seconds.
5. Check the dashboard
After sending a single call, open the Calls page. A new record should appear within a few seconds.
- The table shows recent calls in columns: time, provider, model, tokens, cost, latency, and status.
- Sort by clicking column headers. Filter by time preset (today, last 7 days, 30 days, 90 days, all), provider, model name (partial match), or row count.
- Click a row to open the detail modal with all metadata, tags, and error details.
Next steps
- Models — per-model usage stats and cheaper-model swap recommendations.
- Alerts — email and Slack notifications when cost, error rate, or latency cross a threshold.
- API key management — rename or revoke keys.
- Settings — plan management and curl examples for direct API access.
Support
If you get stuck, email hello@argosvix.com. We respond quickly during the beta period.
Last updated: 2026-07-09