@sepurux/recorder
v0.3.0
Published
Lightweight TypeScript trace recorder helper for Sepurux
Downloads
183
Readme
Sepurux TypeScript Recorder
@sepurux/recorder provides the recommended TypeScript integration path for Sepurux:
env-aware client setup, managed trace upload, and optional campaign execution.
API
SepuruxClient.fromEnv()client.trace(taskName, taskInput, handler, options?)client.startTrace(taskName, taskInput, options?)configure(...)trace(taskName, taskInput, handler, options?)- Low-level compatibility:
TraceRecorder.buildTrace()
Quick start
import { SepuruxClient } from "@sepurux/recorder";
const client = SepuruxClient.fromEnv();
const recorder = await client.trace(
"issue-triage",
{ issueId: 123 },
async (trace) => {
trace.modelStep("planner", { prompt: "triage issue" }, { plan: "call jira" });
trace.toolCall("jira.create_issue", { project: "OPS", title: "Bug" });
trace.toolResult("jira.create_issue", { key: "OPS-123" });
},
{
campaignId: process.env.SEPURUX_CAMPAIGN_ID,
mutationPack: "sepurux.core.reliability",
},
);
console.log(recorder.traceId);
console.log(recorder.runId);Set these environment variables first:
SEPURUX_API_BASE_URL(defaults tohttp://localhost:8000)SEPURUX_API_KEYSEPURUX_PROJECT_IDSEPURUX_CAMPAIGN_IDif you want the trace to enqueue a run automatically
Release
- Push a tag in the format
ts-recorder-v0.3.0(must matchpackage.jsonversion). - GitHub Actions workflow
ts-recorder-publish-npm.ymlwill test, pack, and publish to npm. - Required repo secret:
NPM_TOKEN.
