import { ACPWorkerRuntime } from './ACPWorkerRuntime.js';
import { GitLabRepoBackend } from './GitLabRepoBackend.js';
import { MarkdownTaskBackend } from './MarkdownTaskBackend.js';
import { MatrixNotifier } from './MatrixNotifier.js';
export function createTaskBackend(config, customStates) {
    // v0.42.0: markdown is the only supported backend. Plane/Trello removed.
    if (config.PM_TOOL && config.PM_TOOL !== 'markdown') {
        throw new Error(`PM_TOOL="${config.PM_TOOL}" is no longer supported as of v0.42.0. ` +
            `Only 'markdown' is available. Update your conf to PM_TOOL="markdown".`);
    }
    return new MarkdownTaskBackend(config, customStates);
}
export function createRepoBackend(config) {
    return new GitLabRepoBackend(config);
}
export function createNotifier(config) {
    return new MatrixNotifier(config);
}
export function createAgentRuntime(ctx) {
    return new ACPWorkerRuntime(ctx);
}
/** Create AgentRuntime for harness mode (sps agent) — no project config required. */
export function createSessionRuntime(sessionCtx) {
    return new ACPWorkerRuntime(sessionCtx);
}
//# sourceMappingURL=registry.js.map