From 5209cfa7ac45ab87fd4d8b6f82355380057453be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=98=9F=E6=9C=88?= Date: Sat, 23 May 2026 19:06:57 +0800 Subject: [PATCH] fix(cli): disable YAML anchor/alias + fix biome errors in setup.ts - Disable aliasDuplicateObjects in YAML stringify to prevent &a1/*a1 anchors when multiple steps have identical output - Fix unused discoverAgents function (prefixed with _) and format issue in setup.ts --- packages/cli-workflow/src/commands/setup.ts | 9 ++++++--- packages/cli-workflow/src/commands/thread.ts | 2 +- packages/cli-workflow/src/format.ts | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/cli-workflow/src/commands/setup.ts b/packages/cli-workflow/src/commands/setup.ts index 1014a60..538c9ab 100644 --- a/packages/cli-workflow/src/commands/setup.ts +++ b/packages/cli-workflow/src/commands/setup.ts @@ -141,7 +141,7 @@ function apiKeyEnvName(providerName: string): string { * Discover uwf-* agent binaries in PATH. * Returns sorted list of binary names (e.g., ["uwf-hermes", "uwf-claude-code"]). */ -async function discoverAgents(): Promise { +async function _discoverAgents(): Promise { try { // Use which -a to find all uwf-* binaries in PATH const proc = Bun.spawn(["which", "-a", "uwf-hermes", "uwf-claude-code", "uwf-cursor"], { @@ -186,12 +186,15 @@ async function discoverAgents(): Promise { } // Parse which output - each line is a path to a binary - const paths = text.trim().split("\n").filter((line) => line.length > 0); + const paths = text + .trim() + .split("\n") + .filter((line) => line.length > 0); const agents = new Set(); for (const path of paths) { const basename = path.split("/").pop(); - if (basename && basename.startsWith("uwf-") && basename !== "uwf") { + if (basename?.startsWith("uwf-") && basename !== "uwf") { agents.add(basename); } } diff --git a/packages/cli-workflow/src/commands/thread.ts b/packages/cli-workflow/src/commands/thread.ts index 6e535b2..3adabbb 100644 --- a/packages/cli-workflow/src/commands/thread.ts +++ b/packages/cli-workflow/src/commands/thread.ts @@ -440,7 +440,7 @@ function collectOrderedSteps( } function formatYaml(value: unknown): string { - return stringify(value).trimEnd(); + return stringify(value, { aliasDuplicateObjects: false }).trimEnd(); } function formatCompactStep(index: number, item: OrderedStepItem, outputYaml: string): string { diff --git a/packages/cli-workflow/src/format.ts b/packages/cli-workflow/src/format.ts index 2c4b368..7fc0fec 100644 --- a/packages/cli-workflow/src/format.ts +++ b/packages/cli-workflow/src/format.ts @@ -7,6 +7,6 @@ export function formatOutput(data: unknown, format: OutputFormat): string { case "json": return JSON.stringify(data); case "yaml": - return stringify(data).trimEnd(); + return stringify(data, { aliasDuplicateObjects: false }).trimEnd(); } }