---
title: "openvibe-sdk/codes · OpenVibe.Services"
canonical: "https://openvibe.services/docs/sdk/codes"
updated: null
---

# openvibe-sdk/codes · OpenVibe.Services

HTML: [openvibe-sdk/codes · OpenVibe.Services](https://openvibe.services/docs/sdk/codes)

# `openvibe-sdk/codes`

Generated at 2026-11-13 06:25:48 UTC from [`openvibe-contracts v0.419.0`](https://github.com/OpenVibers/OpenVibe.Contracts/tree/v0.419.0) and [`openvibe-sdk v0.161.0`](https://github.com/OpenVibers/OpenVibe.SDK/tree/v0.161.0).

From `types/codes.d.ts` (server only). Declarations are shown verbatim.

## type CodesTaskMode

~~~~
export type CodesTaskMode = 'create' | 'openvibe' | 'repo';
~~~~

## type CodesTaskStatus

~~~~
export type CodesTaskStatus = 'queued' | 'running' | 'needs-you' | 'done' | 'failed' | 'stopped';
~~~~

## type CodesModelPreset

~~~~
export type CodesModelPreset = 'Fast' | 'Balanced' | 'Deep' | 'Council';
~~~~

## type CodesModelEffort

~~~~
export type CodesModelEffort = 'none' | 'low' | 'medium' | 'high' | 'xhigh' | 'max';
~~~~

## interface CodesModelPlan

~~~~
export interface CodesModelPlan {
    mode: 'single' | 'pair' | 'council' | 'escalate';
    roles: Array<{ role: 'planner' | 'builder' | 'reviewer' | 'verifier'; model: string; effort: CodesModelEffort;
        samples?: number; budget?: { tokens?: number; minutes?: number; dollars?: number } }>;
    ladder?: string[];
    checks: { tests?: boolean; lint?: boolean; reviewer?: boolean };
}
~~~~

## interface CodesTaskSummary

~~~~
export interface CodesTaskSummary {
    id: string; title: string; status: CodesTaskStatus; mode: CodesTaskMode; repo: string;
    started_at: string; updated_at: string; steps: number; url: string; preview_url: string | null; pr_url: string | null;
}
~~~~

## interface CodesTaskCreate

~~~~
export interface CodesTaskCreate {
    text: string; mode: CodesTaskMode; repo?: string; attachments?: string[];
    plan?: CodesModelPlan; preset?: CodesModelPreset;
}
~~~~

## interface CodesClient

~~~~
export interface CodesClient {
    tasks: {
        list(opts?: Opts & { limit?: number }): Promise<{ tasks: CodesTaskSummary[] }>;
        create(req: CodesTaskCreate, opts?: Opts): Promise<{ id: string | null; url: string }>;
        stop(id: string, opts?: Opts): Promise<{ ok: true }>;
    };
    modelPlans: {
        get(opts?: Opts & { project?: string }): Promise<{ account: CodesModelPlan; project: CodesModelPlan | null; effective: CodesModelPlan; source: 'account' | 'project' }>;
        put(plan: CodesModelPlan, opts?: Opts & { project?: string }): Promise<{ plan: CodesModelPlan; resolved: CodesModelPlan; fallbacks: unknown[]; prices: unknown[] }>;
        presets(opts?: Opts): Promise<{ presets: Record<CodesModelPreset, CodesModelPlan> }>;
    };
}
~~~~

## function createCodesClient

~~~~
export declare function createCodesClient(client: CodesJson, opts?: { baseUrl?: string }): CodesClient;
~~~~
