9 Commits

Author SHA1 Message Date
a469f30b42 refactor(workflow-generator): multi-file DIP + Role Factory + esbuild bundle
- Split 500-line monolith into roles/{planner,coder,tester,committer}/
- Each role: index.ts (build function) + prompt.ts (pure function)
- Use createCursorRole/createLlmRole/createHermesRole factories
- DIP: env vars read in index.ts, injected via build.ts
- esbuild bundle to dist/index.js (24kb)
- Moderator logic preserved: planner→coder→tester→committer with retries

Fixes xiaoju/nerve-workspace#3
2026-04-28 08:48:23 +00:00
e05c71d6b0 refactor(sense-generator): use createCursorRole factory, slim meta to routing-only
- planner/coder: replaced 80+ lines hand-written agent calls with createCursorRole()
- SenseMeta slimmed to routing signals only (senseName, filesCreated, passed/attempt)
- Roles read context from thread via nerve thread <id>, not from previous role's meta
- tester stays hand-written (pure CLI logic)
- Re-exported spawnSafe from workflow-utils for helper use

Refs uncaged/nerve#210

小橘 🍊(NEKO Team)
2026-04-28 02:22:38 +00:00
c5ea790447 refactor(workflow-generator): simplify roles — merge analyst+architect→planner, add coder⇄tester loop, hermes committer
Refs #143

小橘 <xiaoju@shazhou.work>
2026-04-25 10:31:33 +00:00
61c8349307 fix: allow reading other workflows but not writing
小橘 🍊(NEKO Team)
2026-04-25 06:26:14 +00:00
024ddf0b8b fix(workflow-generator): restrict coder to only touch target workflow dir
Prevents coder from modifying other workflow directories like
sense-generator when generating a new workflow.

小橘 🍊(NEKO Team)
2026-04-25 06:19:18 +00:00
028125b74f feat(workflow-generator): add committer role
Auto-generated by workflow-generator itself. After reviewer passes,
committer creates a feature branch, stages workflow files, commits
with a meaningful message, and pushes to origin.

小橘 🍊(NEKO Team)
2026-04-25 06:02:09 +00:00
0803a00482 chore: instruct coder to use .default() on zod schemas for llmExtract
小橘 🍊(NEKO Team)
2026-04-25 04:48:11 +00:00
9f2067db7d fix: add dryRun early-return for all roles in workflow-generator
llmExtract returns {} as T in dryRun mode, causing .map() on undefined.
Each role now returns mock data immediately when dryRun is true.

小橘 🍊(NEKO Team)
2026-04-25 04:24:42 +00:00
7bfb24c2c1 feat: add workflow-generator meta-workflow (Issue #99)
4-role workflow (analyst → architect → coder → reviewer) that generates
new workflows from natural language descriptions. Uses cursorAgent for
analysis/design/code generation and llmExtract for structured extraction.

小橘 🍊(NEKO Team)
2026-04-25 04:18:57 +00:00