web-kit は何をしますか?
AIエージェントスキル(検索 + ページ読み取り + ダウンロード)。セルフホスト型の単一コンテナバックエンド(SearxNG + Chrome/CDP、4層の自己修復機能搭載)
このスキルにより、AIエージェントは以下の機能を利用できます:
- ウェブ検索(SearxNG経由、複数エンジンを統合)
- ウェブページの内容読み取り(Chrome/CDPを使用し、JavaScriptレンダリング対応)
- ファイルのダウンロード
バックエンドは単一のDockerコンテナで動作し、以下のコンポーネントを内蔵しています:
- SearxNG: プライバシー重視のメタ検索エンジン
- Chrome/Chromium: ヘッドレスブラウザ(DevTools Protocol経由で制御)
- 4層の自己修復: ヘルスチェック、プロセス監視、リソース制限、自動復旧
前提条件
- Docker および Docker Compose がインストールされていること
- ネットワーク接続が利用可能であること
クイックスタート
git clone https://github.com/huangyrcn/web-kit.git
cd web-kit
docker-compose up -d
起動後、APIエンドポイントが http://localhost:8080 で利用可能になります。
使用方法
検索
GET /search?q=<検索クエリ>
ページ読み取り
GET /read?url=<対象URL>
ダウンロード
GET /download?url=<ダウンロードURL>
設定
環境変数で設定を変更できます:
| 変数名 | 説明 | デフォルト値 |
|---|---|---|
SEARXNG_PORT | SearxNG のポート | 8888 |
CHROME_PORT | Chrome CDP のポート | 9222 |
API_PORT | API サーバーのポート | 8080 |
自己修復メカニズム
以下の4層でシステムの信頼性を確保します:
- ヘルスチェック: 定期的にコンテナの状態を監視
- プロセス監視: プロセスが異常終了した場合、自動的に再起動
- リソース制限: CPU/メモリの使用量を制限し、過負荷を防止
- 自動復旧: 深刻な障害が発生した場合、コンテナ全体を再起動
トラブルシューティング
- コンテナが起動しない場合:
docker-compose logsでログを確認してください - 検索結果が返ってこない場合: SearxNG の設定を確認してください
- ページ読み取りに失敗する場合: URL が正しいか、または Chrome が正しく動作しているか確認してください
ライセンス
MIT