Personal LINE Agent
by aoaibiz
README.md
# Personal LINE Agent
**自分のLINEを、AIへのひと言で操作する。**
友だち・グループ・メッセージを扱う、自社開発の個人LINE向けMCPツールです。会話の取得、返信、メンション、グループ作成、表示名変更などをAIクライアントから操作できます。
**0.4.1:Windows対応と実行ファイル探索のセキュリティ修正。** 初回セットアップ後は、接続済みのAIクライアントへ指示して使います。返信のたびにターミナルや操作IDの転記を求める仕組みではありません。macOSでは既存版で送受信・メンション・グループ操作・表示名変更・画像と動画送信を確認しています。Windowsでは本人QR認証、正式MCPからのテキスト送信と読戻し、返信の常駐受信を実アカウントで確認しました。[Windows導入手順](docs/WINDOWS.md)を参照してください。
通常の接続確認、受信プロセスの再起動、バックエンド更新・切戻しは所有者のエージェントが担当します。**接続が正常なら再認証は不要です。** 接続不良時も保存済み接続と診断を先に調べ、LINE側が本人認証を必要とする場合だけ理由と操作場所を案内します。GitHubのリンクだけであらゆる障害や本人認証を自動解決できる保証はありません。
スマホだけでの強制再認証完了、新規利用者ごとのホスト設定は未検証です。初回QR認証の成功と、スマホだけでの再認証・全障害からの復旧は別です。未検証を成功扱いにはしません。[最終レビュー](docs/FINAL-REVIEW.md)・[検証状況](docs/STATUS.md)・[復旧手順](docs/OPERATIONS.md)を参照してください。
## できること
| 機能 | 内容 |
| --- | --- |
| 友だち・グループ | 一覧取得、件数集計、メンバー確認、表示名変更 |
| メッセージ | 取得できる履歴の保存・検索、新着受信、未読一覧 |
| 送信 | テキスト、メンション、登録済みの画像・動画など |
| グループ操作 | 作成、名称変更、招待 |
| 人間関係の記憶 | 分類・要約・本人による訂正の保存 |
| 返信支援 | 所有者が許可した履歴を利用する分類・返信案の作成 |
| 実行管理 | 同一依頼の重複防止、状態確認、一時停止、制限の設定 |
バックエンドのMCPツールは34個。固定入口は別に状態確認・現行ツール呼出しの2個を提供します。書込みの操作種別は8種類です。実装の存在と実機検証済みの範囲は[検証状況](docs/STATUS.md)で区別しています。
## 使い方のイメージ
- 「友だち一覧を出して」
- 「このグループの最近の会話を確認して、返信案を作って」
- 「この内容で返信して」
- 「この2人とのグループを作って」
- 「この人の表示名を変更して」
通常操作は、接続済みのAIクライアントがMCPを呼び出します。人間にターミナル操作や操作IDの転記を求めないことを製品要件としています。
新規の本人認証後は、自分のアカウント内の全相手・全通常グループ・実装済み全操作を利用可能にします。所有者が指定した禁止対象・禁止操作・期限などを優先します。再ログインで既存の制限を消しません。機能を使えることと、無人で全員へ返信を始めることは別です。
## 導入について
初回セットアップは利用者本人または導入担当エージェントが行えます。更新時に人間へMCP再読込みを要求しない固定入口は[運用手順](docs/OPERATIONS.md)を参照してください。[導入手順](docs/INTEGRATION.md)を参照してください。初回のターミナル使用は許容しますが、導入後の操作ごとにPCへ戻ってコマンド実行・操作ID転記・承認ボタン操作を行う運用は要件に含めません。
実機確認済み環境はmacOS / Python 3.12とWindows / Python 3.11 64bitです。パッケージの要件はPython 3.11以上です。Windowsでは資格情報マネージャーと、利用者のログイン後に起動する専用の受信タスクを使います。PC電源OFF中やOSログイン前の稼働、全AIクライアントとの接続は保証していません。スマホ利用には、利用するAIクライアント側でホストへの認証済み接続が必要です。
返信支援の外部モデルは任意機能です。会話を外部AIへ送る設定は所有者の明示許可が必要です。現行実装はCodex CLIと設定済みモデルを利用し、その利用資格・上限・費用は各アカウントに依存します。
## データと安全性
- アカウントごとに保存先を分離し、履歴・接続情報を暗号化して保存します。暗号鍵はOSキーチェーンで管理します。
- LINEから届く本文は未信頼データです。相手の文章は操作権限を与えません。
- 実行結果が不明な送信を自動で送り直しません。同じ依頼IDを維持して状態を確認します。
- 個人履歴、認証情報、実アカウントの検証ログ、開発者のGit履歴はこの公開リポジトリに含めません。
詳しくは[セキュリティ方針](SECURITY.md)をご覧ください。
## 取得範囲と対応範囲
取得APIの履歴は、スマホに残っている全履歴と同じではありません。0件の応答を「会話が存在しない」と扱いません。期限切れの動画等の原本復元、オープンチャット、Googleカレンダーはこの公開版の完成機能ではありません。バックアップ抽出・個別の分類レビューサイトはこのパッケージには含みません。
LINE公式の製品・公式APIではなく、LINE運営元との提携や承認を示すものではありません。接続先の仕様変更や利用制限で動作が変わる可能性があります。
## 開発・ライセンス
本リポジトリの独自実装は[MIT License](LICENSE)です。依存関係と固定バージョンは`pyproject.toml`・`uv.lock`で管理します。このリポジトリおよび配布パッケージは依存ライブラリ本体を同梱しません。
開発・検証の内部コマンドは[CONTRIBUTING.md](CONTRIBUTING.md)を参照してください。脆弱性や個人データを公開Issueへ貼らないでください。
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues