diff --git a/CLAUDE.md b/CLAUDE.md index 9bbbdb8..d9411b5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -245,6 +245,23 @@ bun run format # biome format --write bun test # run tests ``` +### Cross-repo Development (bun link) + +For developing workflows in a separate repo (e.g. `xingyue-workflows`) against local monorepo packages: + +```bash +# 1. Register all @uncaged/* packages (run once from monorepo root) +bun run link + +# 2. Consume linked packages (run from the external workflow repo) +bun run link:consume + +# 3. Restore original npm versions (undo link) +bun run link:unlink +``` + +The script is at `scripts/link-all.sh`. It links/unlinks all 16 `@uncaged/*` packages. + ## Commit Convention ``` diff --git a/package.json b/package.json index 8871b81..ee8e8c3 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,10 @@ "check": "bunx tsc --build && biome check .", "typecheck": "bunx tsc --build", "format": "biome format --write .", - "test": "bun run --filter '*' test" + "test": "bun run --filter '*' test", + "link": "./scripts/link-all.sh", + "link:consume": "./scripts/link-all.sh --consume", + "link:unlink": "./scripts/link-all.sh --unlink" }, "devDependencies": { "@biomejs/biome": "^2.4.14", diff --git a/packages/cli-workflow/src/commands/init/templates.ts b/packages/cli-workflow/src/commands/init/templates.ts index 658e56b..d2cf16e 100644 --- a/packages/cli-workflow/src/commands/init/templates.ts +++ b/packages/cli-workflow/src/commands/init/templates.ts @@ -6,7 +6,7 @@ export function templatePackageJson(templateName: string): string { private: true, type: "module", dependencies: { - "@uncaged/workflow-runtime": "^0.1.0", + "@uncaged/workflow-runtime": "*", zod: "^4.0.0", }, }, diff --git a/packages/cli-workflow/src/commands/init/workspace.ts b/packages/cli-workflow/src/commands/init/workspace.ts index 4d0ad50..c5a8711 100644 --- a/packages/cli-workflow/src/commands/init/workspace.ts +++ b/packages/cli-workflow/src/commands/init/workspace.ts @@ -28,7 +28,7 @@ function workflowsPackageJson(): string { private: true, type: "module", dependencies: { - "@uncaged/workflow-runtime": "^0.1.0", + "@uncaged/workflow-runtime": "*", zod: "^4.0.0", }, },