AIチャット HITL(Human-in-the-Loop) - VSCode 拡張

Tool

概要

AI Chat HITL MCP Toolは、AI対話における「人の介入(Human-in-the-Loop)」を簡単に実現するVSCode拡張です。AIの応答が終わる際に専用ツール(AI_chat_HITL)を呼び出して、ユーザーに「続行するか」を問い、必要に応じてユーザーが新たな指示を入力して会話を継続したり終了したりできます。MCP Serverを拡張内に統合し、別途サーバーを立てる必要がない点や、ワークスペース認識、ポート設定、ルールファイル自動生成、リッチな対話UIや対話履歴管理などが特徴です。(300字程度)

GitHub

リポジトリの統計情報

  • スター数: 5
  • フォーク数: 1
  • ウォッチャー数: 5
  • コミット数: 5
  • ファイル数: 4
  • メインの言語: TypeScript

主な特徴

  • AI応答の末尾でユーザーに「続行するか」を確認するHITLフローを提供
  • MCP Serverを組み込みで配布し、手動セットアップ不要
  • リッチテキスト対話(画像貼り付け、ファイル/コードのドラッグ&ドロップ、アップロード)対応
  • ワークスペース/ウィンドウ認識と対話履歴、サイドバーによる操作パネル

技術的なポイント

本プロジェクトはTypeScriptで記述されたVSCode拡張で、拡張ホストと組み込みのMCP Server間の連携が核です。AIの応答プロセスの最後に「AI_chat_HITL」ツールを呼び出すことでユーザー確認フローを差し挟み、ユーザーの選択(続行/終了)や追加指示を受けて会話を制御します。MCP Serverは拡張に組み込まれており、エンドユーザーはポート番号など最低限の設定のみで動作させられるため導入コストが低い点が利点です。

UIはWebviewベースのリッチダイアログを用いており、画像貼付けやファイルのドラッグ&ドロップ、コードスニペットの表示・アップロードが可能です。これにより開発中のコンテキスト(ファイル内容やスクリーンショット)をそのまま対話に与えられます。ワークスペース感知機能は複数ウィンドウ環境で正しいウィンドウにダイアログを表示するために、VSCodeのworkspace APIとウィンドウ識別子を活用します。

設定面ではポートカスタマイズ、MCPの自動設定書き込み、一鍵でのグローバルルール生成(.AichatHITLrules)をサポート。対話履歴はサイドバーパネルに記録され、各対話のタイムスタンプ、状態、ユーザー入力を一覧できるためレビューやデバッグが容易です。セキュリティ面ではローカルのMCPを使うことでネットワーク露出を限定できる反面、ファイルアップロードや外部プロセス呼び出しに伴う権限・パス安全性の確保が必要です。拡張の実行フローは、拡張アクティベーション → MCP起動(埋め込み) → Webviewによる対話 → ユーザー応答の収集 → 必要ならAIへ再送、という流れで実装される想定です。(約700字)

プロジェクトの構成

主要なファイルとディレクトリ:

  • .AichatHITLrules: file
  • .gitignore: file
  • README.md: file
  • vscode-extension: dir

まとめ

VSCode上でHITLワークフローを手早く導入できる実用的な拡張です。(50字程度)

リポジトリ情報:

READMEの抜粋:

AI Chat HITL MCP Tool

一个用于 AI 对话人工介入 (Human-in-the-Loop) 控制的 VSCode 插件,集成了 MCP Server。

功能特性

  • AI_chat_HITL 工具: AI 在回答结束时调用此工具,询问用户是否继续对话
  • 人工中断恢复: 用户可以选择继续对话并输入新指令,或结束对话
  • 工作区感知: 对话框会在正确的 VSCode 窗口中弹出
  • MCP Server 集成: 无需单独安装和启动 MCP Server
  • 端口配置: 支持自定义 MCP Server 端口
  • 全局规则生成: 一键生成 .AichatHITLrules 规则文件
  • 富文本对话框: 支持粘贴图片、拖拽文件/代码、上传文件等功能
  • 多窗口支持: 根据工作区路径自动匹配正确的窗口
  • 侧边栏面板: 活动栏显示状态、操作按钮和对话历史
  • 对话历史记录: 显示每次对话的时间、状态和用户输入
  • MCP 自动配置: 一键自动写入 MCP 配置文件 …