共有リンク
チャットのヘッダーの共有は、ほかの人がペルソナと話せるリンクを作ります。例えば次のような使い方です。
- 友人が、AI があなたの文体でどれだけうまく書けるかを評価する。
- 友人が、自分自身のコピーと話す。
リンクの形式は https://<あなたのホスト>/s/<名前> です。訪問者に見えるのはチャットだけです。サイドバー、設定、メモ、メディアの説明、プロンプト、トークン使用量、ほかのチャットは見えません。
オプション
| オプション | 既定 | |
|---|---|---|
| 開けるのは誰か | このコンピュータ | エディター内の Wi‑Fi と インターネット のスイッチ(下) |
| リンク | ランダム | alex のような名前を選ぶ |
| 表示名 | ペルソナの名前 | エクスポート内の本名は表示されない |
| PIN | なし | 4~64 文字。Argon2id のハッシュで保存。✨ で 6 桁を生成 |
| 会話 | 非公開 | 非公開:訪問者ごとに 1 つの会話。共有ルーム:全員が 1 つの会話 |
| 訪問者がエクスポートを読めるか | なし | なし、直近 N 件のメッセージ、またはすべて |
| 上限 | 訪問者 50 人、それぞれ 200 件の回答 | 回答 1 件ごとに、あなたのキーのトークンを消費します。0 = 無制限 |
| 訪問者が先に書かせられるか | オフ | 💬 ボタンを表示:訪問者が何も書かなくても、ペルソナがメッセージを送る |
| 訪問者が回答を書き直せるか | オフ | ↻ ボタンを表示:ペルソナの最後の回答を書き直す。どちらも上限の 1 件分を使い、オフの間はサーバーが拒否します |
| 期限 / 有効 | なし / オン | リンクを削除せずに一時停止または期限切れにする |
| Telegram グループ | オフ | Telegram から返信 |
共有ダイアログでは、訪問者の会話をそれぞれ読むことができ、終了で会話を取り消せます。各訪問者には、最後に書き込んだアドレスが表示されます。会話を終了するときにブロックも行うを選ぶと、ブロック解除するまで、そのアドレスをリンクから締め出せます(スタートページ、新しい会話、開いている会話のすべて)。共有ネットワークでは、1 つのアドレスが複数の人を表すこともあります。アドレスはリンクと一緒に、あなたのコンピュータにだけ保存されます。
ペルソナが話す相手
訪問者はあなたではありません。Mia があなたのリンクを開くと、ペルソナは、Mia が書いていること、リンクがあなたから来たこと、そして履歴とあなたのメモはあなたと彼らについてであって、Mia についてではないことを知っています。ペルソナは彼女を新しい人として迎えます。名前がなければ、彼女は単なるゲストです。
| ペルソナに見えるもの | |
|---|---|
| 非公開リンク | 訪問者との 1 つの会話。訪問者が名乗った名前(または「ゲスト」)で |
| 共有ルーム | グループチャット。各メッセージには送信者の名前が付き、いつでも参加できる |
| あなたのエクスポート履歴 | あなたのメッセージはあなたの名前で、そのあとに訪問者のメッセージ。決して混ざらない |
システムプロンプトは会話ごとに固定されるので、プロバイダーはそれをキャッシュします。訪問者の名前は会話の開始時に決まり、ルームでは名前がメッセージと一緒に流れます。ペルソナやあなたと同じ名前を名乗る訪問者は、例えば「Alex(ゲスト)」になり、ルーム内の 2 人目の「Ann」は「Ann 2」になります。
招待
| リンク | 開くもの |
|---|---|
/s/alex | スタートページ |
/s/alex#pin=2468 | すぐにチャット。PIN は # の後ろにあるので、サーバーやログには届きません |
/s/alex#name=Greg&pin=2468 | 同じですが、訪問者の名前が入力済み(?name=Greg も使えます) |
リンクの QR ボタンは、動作しているアドレスごとに、スマートフォンで読み取るコードを開きます。保存した直後には、PIN 付きの招待をコピーで、PIN 付きのリンクをコピーできます。
別のデバイスでリンクを開く
サーバーでは、リンクは単にサーバーのアドレスを使います。デスクトップアプリ(と 127.0.0.1 上の rooftop)はあなたのコンピュータでしか動かないので、共有ダイアログとリンクエディターには 2 つのスイッチがあります。それぞれ有効、接続中、動作していませんのいずれかを表示し、エディターはリンクが持つことになるアドレスをすぐに示します。
┌──────────── あなたのコンピュータ ─────┐
Wi‑Fi の電話 ─────▶│ :8737 訪問者のページのみ │
│ │
誰でも ──▶ 名前.iroof.top ══ 1 本の送信 WebSocket ══▶ アプリ │
│ │
│ 127.0.0.1 所有者の画面、設定、API │
└───────────────────────────────────────┘| Wi‑Fi とローカルネットワーク | インターネット | |
|---|---|---|
| アドレス | http://<あなたの IP>:8737/s/<名前> | https://<名前>.iroof.top/s/<名前> |
| 誰が | 同じネットワークのデバイス | アプリが動いている限り誰でも |
| 仕組み | 訪問者のページだけを提供する 2 つ目のリスナー | リレーへの 1 本の送信 WebSocket。インターネット上で待ち受けるものはない |
| あなたのデータ | あなたのコンピュータに残る | あなたのコンピュータに残るが、訪問者のメッセージはリレーを通る |
- Wi‑Fi のポートは再起動しても変わらないので、印刷された QR コードは引き続き使えます。macOS では、ファイアウォールが尋ねたら受信接続を許可してください。
- インターネットの名前はあなたが選んで変更できます(アドレスの横の変更)。リレーが転送するのは
/s/…、/api/s/…、ページのアセットだけで、両方向の Cookie を破棄し、アプリが閉じているときは「オフライン」ページを表示します。 - iroof.top ではなく独自のリレーを使いたい場合は、リレーハブを参照してください。
- オフラインモードはインターネットのスイッチをオフにしてロックします。Wi‑Fi は動き続けます。リレーに見えるもの:オフラインとプライバシー。
保護
| 保護 | 上限 |
|---|---|
| 1 つの IP からの誤った PIN | 5 回で 1 分ロック、その後 2、4… と最大 1 時間 |
| 1 つのリンクでの誤った PIN(全 IP) | 15 分に 20 回で 5 分ロック、最大 24 時間まで倍増 |
| 訪問者ごとのメッセージ | 1 分に 30 件、1 分に 10 件の回答 |
| 新しい会話 | IP あたり 1 時間に 20 件 |
カウンターはメモリにあります。6 桁の PIN を現実的な時間で推測することはできません。リバースプロキシの背後では、ROOFTOP_TRUST_PROXY=true を設定して、カウンターが実際のクライアント IP を見られるようにしてください。
訪問者のセッションは、/s/<名前>/<トークン> の中の、26 文字のランダムなトークンを使います。このトークンはブラウザが覚え、Referrer-Policy: no-referrer によって漏えいから守られます。訪問者は、見ることを許されたメディアだけを読み込めます。