なぜ Timi はチャットボットではないのか
Coach でもっとも輪郭を作るプロダクト判断 — カードのみ、テキスト入力欄は決して置かない。
Coach でもっとも過激な判断
おそらく Timint Coach でもっとも過激な判断です。
Timi には書き込めません。
Home ウィジェット、/coach インボックス、戦略の詳細ページ。どこにもテキスト入力欄はありません。「Timi に質問」も、「質問を入力」もありません。あるのはカードだけです。
なぜでしょうか?
1. Timi はあなたより先に話さなければなりません
Timi のマーケティング上の約束はこうです。今日見るべきことを Timi が先回りでお伝えします。
Timi が質問を待ってしまうと、ユーザーが代わりに仕事をしていることになります。優先順位もユーザーがつけ、言い回しもユーザーが考えてしまいます。Timi の価値が最大になるのは、ユーザーがまだ尋ねようと思ってもいない瞬間です。
2. カードは検証可能、チャットはそうではありません
どの Coach カードも次の特徴を持ちます。
- 決定論的(検出器 + 純粋な advisor から生成、V1 では LLM なし)
- バージョン管理されている(snapshot テスト可能)
- 監査可能(カード ID が起点を追跡)
- コンプライアンス対応(disclaimer はレンダラーの
postProcessによって自動付与)
オープンチャットは逆です。非決定論的で snapshot にしづらく、ハルシネーションの温床になります。
3. チャットとカードの混在は試して取り除きました
実際のプロダクト史です。実験版で両方を混ぜました。結果は次のとおりです。
- カードが妥当なときに、ユーザーはほとんどチャットを使いませんでした。
- 使われたときは、すでにカードが答えている内容を質問するためでした。
- スコープ外を問われると LLM がハルシネーションを起こし、法的リスク(CIF、IOBSP、AMF)になりました。
[!note] コードもこの判断を反映しています。
app/coach/index.tsxのコメントが思い出させてくれます。Strict format: cards only. NO chat input, NO 'ask Timi' panel.
ではどこで質問できますか?
リアクティブなチャットは存在します。AssistantSheet という独立した機能です。
- Home から横スワイプで(または専用ボタンで)開きます。
- ソース:
app/assistant/AssistantSheet.tsx。 - Timi と同じ LLM トランスポート(
/api/assistant/query)を使います。 - ただし視覚的にも概念的にも分離されており、Assistant を開いた時点で「質問している」ことが明確です。
視覚的な整理
| 画面 | 種別 | 入力可? |
|---|---|---|
| CoachWidgetHome | プロアクティブ・カード | いいえ — 受け取るだけ。 |
| /coach(インボックス) | カード一覧 | いいえ — 受け取るだけ。 |
| /coach/strategy/[id] | 戦略の詳細 | いいえ — 読むだけ。 |
| AssistantSheet | リアクティブ・チャット | はい — 入力します。 |
[!info] 詳しくは プライバシーと GDPR をご覧ください。カードとチャットの分離は、端末から出る/出ないデータにも影響します。