diff --git a/packages/workflow-template-develop/src/roles/coder.ts b/packages/workflow-template-develop/src/roles/coder.ts index 27ddca3..42650f2 100644 --- a/packages/workflow-template-develop/src/roles/coder.ts +++ b/packages/workflow-template-develop/src/roles/coder.ts @@ -25,7 +25,11 @@ The thread ID (26-char Crockford Base32) appears in the first message. If unsure ## Completing a phase -Report which phase you completed using the phase **hash** (not the title). If you legitimately finish every remaining phase in this single turn, set completedPhase to the **last** phase hash in the plan (the workflow treats that as full completion). List the files you changed and summarize what you did.`; +Report which phase you completed using the phase **hash** (not the title). If you legitimately finish every remaining phase in this single turn, set completedPhase to the **last** phase hash in the plan (the workflow treats that as full completion). List the files you changed and summarize what you did. + +## Output rules + +Keep your final response **short** — a brief summary paragraph plus the structured meta output. Do NOT paste diffs, file contents, or code blocks in your response. The actual changes are already on disk; repeating them wastes tokens. Just say what you did and why.`; export const coderRole: RoleDefinition = { description: diff --git a/packages/workflow-template-develop/src/roles/planner.ts b/packages/workflow-template-develop/src/roles/planner.ts index 1abdacf..635d68a 100644 --- a/packages/workflow-template-develop/src/roles/planner.ts +++ b/packages/workflow-template-develop/src/roles/planner.ts @@ -39,7 +39,11 @@ Fewer phases is always better. Each phase must justify its existence — if two After storing all phases via the CLI, output compact JSON only: { "phases": [{ "hash": "", "title": "" }] } -Order phases so earlier steps unblock later ones. Cover root cause, edge cases, and verification across the phases.`; +Order phases so earlier steps unblock later ones. Cover root cause, edge cases, and verification across the phases. + +## Output rules + +Keep your final response **short** — just the JSON with phases. Do NOT paste code snippets, diffs, or implementation details in your response. Phase details are already stored in CAS; your response should only contain the compact phases JSON.`; export const plannerRole: RoleDefinition = { description: "Breaks the task into sequential phases for the coder.", diff --git a/packages/workflow-template-develop/src/roles/reviewer.ts b/packages/workflow-template-develop/src/roles/reviewer.ts index dcb4709..05a5a73 100644 --- a/packages/workflow-template-develop/src/roles/reviewer.ts +++ b/packages/workflow-template-develop/src/roles/reviewer.ts @@ -32,7 +32,11 @@ const REVIEWER_SYSTEM = `You are a code reviewer. Review the git diff for correc - **Approve** only if there are zero issues - **Reject** with specific issues that must be fixed — every issue you find is blocking -Be thorough. A false approve costs more than a false reject.`; +Be thorough. A false approve costs more than a false reject. + +## Output rules + +Keep your final response **short**. Summarize findings in a few bullet points, then output the structured verdict. Do NOT paste the full diff or large code blocks in your response.`; export const reviewerRole: RoleDefinition = { description: "Runs git diff checks and sets approved when the change is ready.", diff --git a/packages/workflow-template-develop/src/roles/tester.ts b/packages/workflow-template-develop/src/roles/tester.ts index 296d091..2eb9292 100644 --- a/packages/workflow-template-develop/src/roles/tester.ts +++ b/packages/workflow-template-develop/src/roles/tester.ts @@ -14,7 +14,11 @@ export const testerMetaSchema = z.discriminatedUnion("status", [ export type TesterMeta = z.infer; -const TESTER_SYSTEM = `You are a tester. Run the project's test suite, build, and lint commands. Check what commands are available from the preparer's output in the thread. Report pass/fail with details of what failed.`; +const TESTER_SYSTEM = `You are a tester. Run the project's test suite, build, and lint commands. Check what commands are available from the preparer's output in the thread. Report pass/fail with details of what failed. + +## Output rules + +Keep your final response **short**. Report pass/fail with a brief summary of failures (if any). Do NOT paste full test output or build logs — just the key error lines.`; export const testerRole: RoleDefinition = { description: "Runs test, build, and lint commands and reports pass or fail with details.",