II.
Page JSON
Structured · livepage:docs-harness-features-backlog-gaps-tools-capabilities-gap-tools-038
GAP-TOOLS-038: Ask Tool Interaction Model Alignment json
Inspect the normalized record payload exactly as the atlas UI reads it.
{
"id": "page:docs-harness-features-backlog-gaps-tools-capabilities-gap-tools-038",
"_kind": "Page",
"_file": "wiki/docs/harness-features-backlog/gaps/tools-capabilities/gap-tools-038.md",
"_cluster": "wiki",
"attributes": {
"nodeKind": "Page",
"sourcePath": "docs/harness-features-backlog/gaps/tools-capabilities/GAP-TOOLS-038.md",
"sourceKind": "repo-docs",
"title": "GAP-TOOLS-038: Ask Tool Interaction Model Alignment",
"displayName": "GAP-TOOLS-038: Ask Tool Interaction Model Alignment",
"slug": "docs/harness-features-backlog/gaps/tools-capabilities/gap-tools-038",
"articlePath": "wiki/docs/harness-features-backlog/gaps/tools-capabilities/GAP-TOOLS-038.md",
"article": "\n# GAP-TOOLS-038: Ask Tool Interaction Model Alignment\n\n| Field | Value |\n|-------|-------|\n| Category | tools-capabilities |\n| Priority | Low |\n| Effort | S |\n| Status | Missing |\n\n## Description\nCC's AskUserQuestionTool and babysitter's `ask` agentic tool use fundamentally\ndifferent interaction models. Alignment needed for cross-harness compatibility.\n\n## Current State\n**CC's AskUserQuestionTool**: Single question, free-text response. The model asks\none question at a time, user types a response. Simple prompt-and-answer.\n\n**Babysitter's `ask` tool**: Structured multi-question format with:\n- `questions[]` array (multiple questions per call)\n- `options[]` per question (predefined choices)\n- `multi` flag (allow multiple selections)\n- `recommended` index (suggested default)\n\nBabysitter's model is richer (supports approval workflows, structured choices) but\ncannot replicate CC's simple free-text flow without ignoring its structured fields.\nWhen babysitter orchestrates CC as a harness, the CC side presents AskUserQuestionTool\nwhile babysitter's internal model uses the structured format.\n\n## Target State\nSupport both interaction modes in the `ask` tool:\n\n- **`mode`**: `'simple'` (CC-compatible single question, free-text) or `'structured'`\n (current babysitter model with options/multi-select). Default: `'structured'`.\n- When `mode: 'simple'`: accept a single `question` string param, return free-text\n `answer` string. Maps directly to CC's AskUserQuestionTool.\n- When `mode: 'structured'`: current behavior preserved.\n\nThis enables processes to use the appropriate interaction style depending on whether\nthey need a simple confirmation or a complex multi-option workflow.\n\n## Dependencies\n- None.\n\n## Key Files\n| Component | Path |\n|-----------|------|\n| Agentic tools | `packages/sdk/src/harness/agenticTools.ts` |\n| CC AskUserQuestionTool | (inline in CC's tool definitions) |\n| Interaction module | `packages/sdk/src/interaction/` |\n\n## Recommendation\nM0 (Quick Wins). Low priority. The current structured model works well for babysitter's\norchestration patterns. Alignment matters mainly for cross-harness tool compatibility.\n",
"documents": []
},
"outgoingEdges": [],
"incomingEdges": [
{
"from": "page:docs-harness-features-backlog",
"to": "page:docs-harness-features-backlog-gaps-tools-capabilities-gap-tools-038",
"kind": "contains_page"
}
]
}