Files
xiaoju d63d58ccb5 chore: reorganize repo — legacy packages to legacy-packages/, templates to examples/
- Move 15 old workflow-* packages to legacy-packages/ (inactive, preserved for reference)
- Rename templates/ → examples/ for clarity
- Rewrite docs/architecture.md to reflect current uwf architecture
- Active packages remain in packages/: cli-uwf, uwf-agent-hermes, uwf-agent-kit, uwf-moderator, uwf-protocol, workflow-util

小橘 🍊(NEKO Team)
2026-05-19 07:19:40 +00:00

1.2 KiB

@uncaged/workflow-agent-llm

AgentFn adapter that calls an OpenAI-compatible POST /chat/completions endpoint using LlmProvider from @uncaged/workflow-runtime.

Single-turn: system text is the current role’s systemPrompt, user text is the thread’s initial prompt (ctx.start.content). Errors from HTTP, JSON, or empty choices are thrown as Error with a JSON payload string.

Install

bun add @uncaged/workflow-agent-llm @uncaged/workflow-runtime zod

In this monorepo: "@uncaged/workflow-agent-llm": "workspace:*", "@uncaged/workflow-runtime": "workspace:*" (and satisfy zod ^4 as required by @uncaged/workflow-runtime).

Usage

import { createLlmAdapter } from "@uncaged/workflow-agent-llm";

const agent = createLlmAdapter({
  baseUrl: "https://api.openai.com/v1",
  apiKey: process.env.OPENAI_API_KEY!,
  model: "gpt-4.1-mini",
});

API overview

Export Description
createLlmAdapter(provider) LlmProviderAgentFn
chatCompletionText({ provider, messages }) Low-level Result<string, LlmChatError> helper
LlmMessage { role: "system" | "user" | "assistant"; content: string }
LlmChatError Discriminated error kinds for failed completions