Add internal interactive questioning tool 'usr_ask'
まだ誰も着手していません。
- 主要言語
- Shell
- スター
- 11.2k
- フォーク
- 1.9k
- 平均マージ
- 14時間 16分
- マージ済み PR(30日)
- 6
説明
Describe the feature or problem you'd like to solve
In older versions like v1.0.6, ask_user worked nicely to display interactive multiple-choice menus in the terminal.
However, in current releases (tested on v1.0.80), the agent no longer triggers interactive question prompts, even when explicitly asked to offer choices or clarify next steps. Instead, it just outputs plain text lists and ends the turn.
Proposed solution
Restore and polish the built-in ask_user (or usr_ask) tool so the CLI can reliably render interactive selection prompts:
- Simple arrow-key navigation (
↑/↓+Enter) for choices. - Single and multi-select support.
- Built-in "Other / custom text" option so users can write in answers.
- Ensure the model reliably triggers it when ambiguity arises instead of falling back to raw text.
- Proper handling in autonomous/YOLO/allow-all modes so interactive prompts don't unexpectedly block unattended or automated workflows (as addressed in #2109).
Example prompts or workflows
- Choosing frameworks or tools (e.g. asking which test runner to install with selectable items).
- Confirming dangerous operations before execution.
- Clarifying requirements during complex tasks without ending the session early.
Additional context
Looking at the v1.0.6 release (app.js), ask_user was defined with { question, choices, allow_freeform } and rendered via registerPrompt. On v1.0.80 this seems broken or dormant.
#2109 is especially relevant here, as it lays out solid proposals to handle ask_user gracefully across ACP and automated modes without breaking YOLO / unattended execution.
Related issues: #2109, #3323, #4050, #4260, #4450, #3722, #2067, #2929, #1898.
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
まず、v1.0.6 の app.js における ask_user の実装と registerPrompt の使用方法を現在の CLI と比較し、その後 #2109 の提案を読みます。usr_ask または ask_user がどこで登録され、トリガーされることになるのかを追跡します。完了の条件は、インタラクティブな単一選択および複数選択のプロンプト、自由形式の回答、そして autonomous、YOLO、ACP、unattended モードでの安全な動作です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- shell
- 領域
- cli
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 活発
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 32/100