Files
united-workforce/packages/workflow-agent-llm
xiaoju 98122b446d feat: Phase 3 — agent observability for Merkle call stack
- StartStep gains parentState: string | null (from StartNodePayload)
- buildAgentPrompt injects Parent Context section when parentState is set
- CLI thread show outputs parentState (top-level) and childThread (per step)
- 2 new prompt tests + thread show assertion updates

Refs #197, #194

小橘 🍊(NEKO Team)
2026-05-12 02:23:15 +00:00
..

@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