ai-harness / src /cli /state /factory.ts
stevenkhan's picture
Initial AI Harness - production-grade model-agnostic CLI agent runtime
908562b verified
// ─── Runtime Factory ─────────────────────────────────────────────────────────
import { EventBus } from '../../core/events/index.js';
import type { ProviderAdapter } from '../../core/provider/index.js';
import { resolveProvider } from './provider-resolver.js';
export interface CreateRuntimeOpts {
provider: string;
model?: string;
skills: string[];
verbose?: boolean;
compact?: boolean;
}
export async function createRuntime(opts: CreateRuntimeOpts) {
const eventBus = new EventBus();
const provider = resolveProvider(opts.provider);
const model = opts.model ?? (await provider.listModels())[0]?.id ?? 'unknown';
return {
runtime: null, // Chat mode doesn't use full runtime
eventBus,
provider,
model,
};
}