Tauri + Svelte 5 + Rust application for orchestrating multiple AI coding agents. Includes Claude, Aider, Codex, and Ollama provider support, multi-agent communication (btmsg/bttask), session anchors, plugin sandbox, FTS5 search, Landlock sandboxing, and 507 vitest + 110 cargo tests.
38 lines
1 KiB
TypeScript
38 lines
1 KiB
TypeScript
import { invoke } from '@tauri-apps/api/core';
|
|
|
|
export interface CtxEntry {
|
|
project: string;
|
|
key: string;
|
|
value: string;
|
|
updated_at: string;
|
|
}
|
|
|
|
export interface CtxSummary {
|
|
project: string;
|
|
summary: string;
|
|
created_at: string;
|
|
}
|
|
|
|
export async function ctxInitDb(): Promise<void> {
|
|
return invoke('ctx_init_db');
|
|
}
|
|
|
|
export async function ctxRegisterProject(name: string, description: string, workDir?: string): Promise<void> {
|
|
return invoke('ctx_register_project', { name, description, workDir: workDir ?? null });
|
|
}
|
|
|
|
export async function ctxGetContext(project: string): Promise<CtxEntry[]> {
|
|
return invoke('ctx_get_context', { project });
|
|
}
|
|
|
|
export async function ctxGetShared(): Promise<CtxEntry[]> {
|
|
return invoke('ctx_get_shared');
|
|
}
|
|
|
|
export async function ctxGetSummaries(project: string, limit: number = 5): Promise<CtxSummary[]> {
|
|
return invoke('ctx_get_summaries', { project, limit });
|
|
}
|
|
|
|
export async function ctxSearch(query: string): Promise<CtxEntry[]> {
|
|
return invoke('ctx_search', { query });
|
|
}
|