cfe4543d39
BREAKING CHANGES:
- Remove AgentFn, AgentFnResult, AgentBinding from workflow-protocol
- Remove wrapAgentAsAdapter from workflow-util-agent
- workflowAsAgent → workflowAdapter (old name kept as deprecated re-export)
New APIs:
- createTextAdapter(producer) — bridges text-producing functions to AdapterFn
- TextProducerFn, TextAdapterResult types
- workflowAdapter() — direct AdapterFn for child workflow delegation
All agent packages (cursor, hermes, llm) now return AdapterFn directly,
no wrapping needed. Bundle entries simplified accordingly.
小橘 🍊(NEKO Team)
34 lines
1.2 KiB
TypeScript
34 lines
1.2 KiB
TypeScript
/**
|
|
* develop bundle entry — 小橘 🍊
|
|
*
|
|
* All roles use cursor-agent with workspace auto-extracted from context.
|
|
*/
|
|
import { createCursorAgent } from "@uncaged/workflow-agent-cursor";
|
|
import { createWorkflow } from "@uncaged/workflow-runtime";
|
|
import { optionalEnv, requireEnv } from "@uncaged/workflow-util";
|
|
import { buildDevelopDescriptor, developWorkflowDefinition } from "./src/index.js";
|
|
|
|
const llmProvider = {
|
|
baseUrl: optionalEnv(
|
|
"WORKFLOW_LLM_BASE_URL",
|
|
"https://dashscope.aliyuncs.com/compatible-mode/v1",
|
|
),
|
|
apiKey: requireEnv("WORKFLOW_LLM_API_KEY", "set WORKFLOW_LLM_API_KEY for meta extraction"),
|
|
model: optionalEnv("WORKFLOW_LLM_MODEL", "qwen-plus"),
|
|
};
|
|
|
|
const adapter = createCursorAgent({
|
|
command: requireEnv("WORKFLOW_CURSOR_COMMAND", "set WORKFLOW_CURSOR_COMMAND (e.g. cursor-agent)"),
|
|
model: optionalEnv("WORKFLOW_CURSOR_MODEL"),
|
|
timeout: optionalEnv("WORKFLOW_CURSOR_TIMEOUT")
|
|
? Number(optionalEnv("WORKFLOW_CURSOR_TIMEOUT"))
|
|
: 0,
|
|
workspace: null,
|
|
llmProvider,
|
|
});
|
|
|
|
const wf = createWorkflow(developWorkflowDefinition, { adapter, overrides: null });
|
|
|
|
export const descriptor = buildDevelopDescriptor();
|
|
export const run = wf;
|