feat: build pipeline — .ts → .esm.js + .yaml + .d.ts 三件套

- add command auto-detects .ts vs .esm.js input
- .ts: Bun.build → bundle + descriptor extraction + JSON Schema → .d.ts
- .esm.js: requires .yaml alongside, .d.ts optional
- JSON Schema → TypeScript type converter
- hello-world example workflow
- 63 tests pass, biome clean

Closes #7
小橘 <xiaoju@shazhou.work>
This commit is contained in:
2026-05-06 06:26:14 +00:00
parent 47e8fdf5b3
commit e670047e6a
15 changed files with 405 additions and 236 deletions
+1 -1
View File
@@ -19,7 +19,7 @@ export const descriptor = {
};
const greeter: Role<Roles["greeter"]> = async (ctx) => ({
content: "Hello, " + ctx.start.content,
content: `Hello, ${ctx.start.content}`,
meta: { greeting: "Hello!" },
});