/**
 * ============================================================
 *  plugins/workflow-runner/plugin.ts
 * ------------------------------------------------------------
 *  workflow-runner 插件入口。接管 /workflow 与 /workflows 两个命令的执行：
 *  不走声明式 markdown→LLM 通道，而是直接调插件内置的 YAML DAG 执行器。
 *
 *  执行器与全部依赖都住在本插件目录 ./src/，外部 src/ 一行不改。
 *  插件只通过 src/plugin-sdk.ts 取框架运行时（runQuery / chat / executeTool 等）。
 *
 *  契约：default export 一个 PluginApi 对象。框架 pluginLoader 会按 pluginRoot
 *  缓存这次 import，所以 cold start 后 dynamic import 只跑一次。
 * ============================================================
 */
import { runWorkflowFromCommand, runWorkflowsList } from './src/index.js';
const api = {
    async *runCommand(commandName, args, ctx) {
        if (commandName === 'workflows') {
            yield* runWorkflowsList();
            return;
        }
        if (commandName === 'workflow') {
            yield* runWorkflowFromCommand(args, {
                provider: ctx.provider,
                history: ctx.history,
                signal: ctx.signal,
            });
            return;
        }
        yield {
            type: 'error',
            error: `workflow-runner: 未知命令 /${commandName}`,
        };
    },
};
export default api;
