Self‑Hosted Quickstart
⚠️ Work in progress: This guide is not final and may change as AccordKit Cloud evolves.
AccordKit is local‑first. You can run everything without any cloud:
Prereqs
- Node 18+
- pnpm or npm
- Git
1) Emit events locally
Install libs in your app:
pnpm add @accordkit/tracer @accordkit/provider-openai openai
Minimal example:
import OpenAI from 'openai';
import { FileSink, Tracer } from '@accordkit/tracer';
import { withOpenAI } from '@accordkit/provider-openai';
const tracer = new Tracer({ sink: new FileSink() });
const client = withOpenAI(new OpenAI({ apiKey: process.env.OPENAI_API_KEY! }), tracer);
await client.chat.completions.create({
model: 'gpt-4o',
messages:[{ role:'user', content:'Hello AccordKit' }]
});
This writes JSONL to ~/.accordkit/logs/<session>.jsonl.
2) View traces
Clone the viewer and run locally:
git clone https://github.com/accordkit/viewer
cd viewer && pnpm i && pnpm dev
Drag & drop the JSONL from ~/.accordkit/logs into the viewer.
3) Optional local HTTP sink
If you prefer HTTP instead of file sink, run the demo endpoint from examples/http-sink-demo and configure:
import { HttpSink, Tracer } from '@accordkit/tracer';
const tracer = new Tracer({ sink: new HttpSink({ endpoint: 'http://localhost:8787/v1/events' }) });
See also: /docs/libraries/sinks