export function buildDiscussionKickoffMessage(discussGuide: string): string { return [ "[Discussion Started]", "", "This channel was created for a temporary agent discussion.", "", "Goal:", discussGuide, "", "Instructions:", "1. Discuss only the topic above.", "2. Work toward a concrete conclusion.", "3. When the initiator decides the goal has been achieved, the initiator must:", " - write a summary document to a file", " - call the tool: discuss-callback(summaryPath)", " - provide the summary document path", "", "Completion rule:", "Only the discussion initiator may finish this discussion.", "", "After callback:", "- this channel will be closed", "- further discussion messages will be ignored", "- this channel will remain only for archive/reference", "- the original work channel will be notified with the summary file path", ].join("\n"); } export function buildDiscussionIdleReminderMessage(): string { return [ "[Discussion Idle]", "", "No agent responded in the latest discussion round.", "If the discussion goal has been achieved, the initiator should now:", "1. write the discussion summary to a file in the workspace", "2. call discuss-callback with the summary file path", "", "If more discussion is still needed, continue the discussion in this channel.", ].join("\n"); } export function buildDiscussionClosedMessage(): string { return [ "[Channel Closed]", "", "This discussion channel has been closed.", "It is now kept for archive/reference only.", "Further discussion in this channel is ignored.", ].join("\n"); } export function buildDiscussionOriginCallbackMessage(summaryPath: string, discussionChannelId: string): string { return [ "[Discussion Result Ready]", "", "A temporary discussion has completed.", "", "Summary file:", summaryPath, "", "Source discussion channel:", `<#${discussionChannelId}>`, "", "Status:", "completed", "", "Continue the original task using the summary file above.", ].join("\n"); }