Skip to main content

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