diff options
| author | soryu <soryu@soryu.co> | 2026-01-18 23:42:27 +0000 |
|---|---|---|
| committer | soryu <soryu@soryu.co> | 2026-01-19 00:14:29 +0000 |
| commit | b64eddc8c2f250cdcbacae18cce107bf4c86f9f4 (patch) | |
| tree | 1644184fca27306cf72f25f57cedd6c53ae69955 | |
| parent | b3eb58d50eea5b235a1c33d5c8787dc81064c46b (diff) | |
| download | soryu-b64eddc8c2f250cdcbacae18cce107bf4c86f9f4.tar.gz soryu-b64eddc8c2f250cdcbacae18cce107bf4c86f9f4.zip | |
Use formatting in question in output
| -rw-r--r-- | makima/frontend/src/components/mesh/TaskOutput.tsx | 4 | ||||
| -rw-r--r-- | makima/src/llm/contract_tools.rs | 8 | ||||
| -rw-r--r-- | makima/src/llm/mesh_tools.rs | 8 | ||||
| -rw-r--r-- | makima/src/llm/tools.rs | 8 |
4 files changed, 15 insertions, 13 deletions
diff --git a/makima/frontend/src/components/mesh/TaskOutput.tsx b/makima/frontend/src/components/mesh/TaskOutput.tsx index c98b174..f49c366 100644 --- a/makima/frontend/src/components/mesh/TaskOutput.tsx +++ b/makima/frontend/src/components/mesh/TaskOutput.tsx @@ -418,7 +418,9 @@ function SupervisorQuestionEntry({ <p className="text-amber-200/60 text-xs mb-2 uppercase">{context}</p> )} - <p className="text-amber-100 mb-3">{entry.content}</p> + <div className="text-amber-100 mb-3"> + <SimpleMarkdown content={entry.content} /> + </div> {isPending && ( <div className="space-y-2"> diff --git a/makima/src/llm/contract_tools.rs b/makima/src/llm/contract_tools.rs index 07de1fe..855a2fe 100644 --- a/makima/src/llm/contract_tools.rs +++ b/makima/src/llm/contract_tools.rs @@ -376,7 +376,7 @@ pub static CONTRACT_TOOLS: once_cell::sync::Lazy<Vec<Tool>> = once_cell::sync::L // ============================================================================= Tool { name: "ask_user".to_string(), - description: "Ask the user one or more questions. Use this when you need clarification, want to offer choices, or need user input before proceeding.".to_string(), + description: "Ask the user one or more questions. Use this when you need clarification, want to offer choices, or need user input before proceeding. Questions can be single-select (user picks one option) or multi-select (user can pick multiple options). The question text supports markdown formatting.".to_string(), parameters: json!({ "type": "object", "properties": { @@ -392,7 +392,7 @@ pub static CONTRACT_TOOLS: once_cell::sync::Lazy<Vec<Tool>> = once_cell::sync::L }, "question": { "type": "string", - "description": "The question to ask the user" + "description": "The question to ask the user. Supports markdown formatting (bold, code, lists, etc.)" }, "options": { "type": "array", @@ -401,11 +401,11 @@ pub static CONTRACT_TOOLS: once_cell::sync::Lazy<Vec<Tool>> = once_cell::sync::L }, "allowMultiple": { "type": "boolean", - "description": "If true, user can select multiple options" + "description": "If true, user can select multiple options (multi-select). If false or omitted, user selects exactly one option (single-select). Default: false" }, "allowCustom": { "type": "boolean", - "description": "If true, user can provide a custom answer" + "description": "If true, user can provide a custom text answer instead of selecting from options. Default: true" } }, "required": ["id", "question", "options"] diff --git a/makima/src/llm/mesh_tools.rs b/makima/src/llm/mesh_tools.rs index ec9dd01..8bddf71 100644 --- a/makima/src/llm/mesh_tools.rs +++ b/makima/src/llm/mesh_tools.rs @@ -379,7 +379,7 @@ pub static MESH_TOOLS: once_cell::sync::Lazy<Vec<Tool>> = once_cell::sync::Lazy: // ============================================================================= Tool { name: "ask_user".to_string(), - description: "Ask the user one or more questions. Use this when you need clarification, want to offer choices, or need user input before proceeding.".to_string(), + description: "Ask the user one or more questions. Use this when you need clarification, want to offer choices, or need user input before proceeding. Questions can be single-select (user picks one option) or multi-select (user can pick multiple options). The question text supports markdown formatting.".to_string(), parameters: json!({ "type": "object", "properties": { @@ -395,7 +395,7 @@ pub static MESH_TOOLS: once_cell::sync::Lazy<Vec<Tool>> = once_cell::sync::Lazy: }, "question": { "type": "string", - "description": "The question to ask the user" + "description": "The question to ask the user. Supports markdown formatting (bold, code, lists, etc.)" }, "options": { "type": "array", @@ -404,11 +404,11 @@ pub static MESH_TOOLS: once_cell::sync::Lazy<Vec<Tool>> = once_cell::sync::Lazy: }, "allowMultiple": { "type": "boolean", - "description": "If true, user can select multiple options" + "description": "If true, user can select multiple options (multi-select). If false or omitted, user selects exactly one option (single-select). Default: false" }, "allowCustom": { "type": "boolean", - "description": "If true, user can provide a custom answer" + "description": "If true, user can provide a custom text answer instead of selecting from options. Default: true" } }, "required": ["id", "question", "options"] diff --git a/makima/src/llm/tools.rs b/makima/src/llm/tools.rs index ae1dc5a..1e43c40 100644 --- a/makima/src/llm/tools.rs +++ b/makima/src/llm/tools.rs @@ -298,7 +298,7 @@ pub static AVAILABLE_TOOLS: once_cell::sync::Lazy<Vec<Tool>> = // Interactive tools Tool { name: "ask_user".to_string(), - description: "Ask the user one or more questions. Use this when you need clarification, want to offer choices, or need user input before proceeding. Each question can have multiple choice options and optionally allow custom answers. The conversation will pause until the user responds.".to_string(), + description: "Ask the user one or more questions. Use this when you need clarification, want to offer choices, or need user input before proceeding. Questions can be single-select (user picks one option) or multi-select (user can pick multiple options). The question text supports markdown formatting. The conversation will pause until the user responds.".to_string(), parameters: json!({ "type": "object", "properties": { @@ -314,7 +314,7 @@ pub static AVAILABLE_TOOLS: once_cell::sync::Lazy<Vec<Tool>> = }, "question": { "type": "string", - "description": "The question to ask the user" + "description": "The question to ask the user. Supports markdown formatting (bold, code, lists, etc.)" }, "options": { "type": "array", @@ -323,11 +323,11 @@ pub static AVAILABLE_TOOLS: once_cell::sync::Lazy<Vec<Tool>> = }, "allowMultiple": { "type": "boolean", - "description": "If true, user can select multiple options. Default false." + "description": "If true, user can select multiple options (multi-select). If false or omitted, user selects exactly one option (single-select). Default: false" }, "allowCustom": { "type": "boolean", - "description": "If true, user can provide a custom answer instead of selecting from options. Default true." + "description": "If true, user can provide a custom text answer instead of selecting from options. Default: true" } }, "required": ["id", "question", "options"] |
