offlineaid-pack-builder は何をしますか?
OfflineAid用のオフライン知識パックビルダー — Gemma 4エージェントループ、SQLite FTS5、ランタイム依存関係ゼロ。
概要
このスキルは、OfflineAidで使用するオフライン知識パック(.oaidxファイル)を構築します。ドキュメント(Markdown、テキストファイルなど)を処理し、SQLite FTS5ベースの全文検索インデックスに変換します。ベクトル埋め込みは不要で、完全にオフラインで動作し、ランタイム依存関係は一切ありません。
動作プラットフォーム
- Claude Code (推奨)
- その他、Gemma 4エージェントループと互換性のあるツール
インストール
# リポジトリをクローン
$ git clone https://github.com/helenkwok/offlineaid-pack-builder.git
$ cd offlineaid-pack-builder
# 依存関係をインストール(ビルド時のみ)
$ pip install -r requirements.txt
使用方法
基本的な使い方
$ python build_pack.py --input ./docs --output my_knowledge_pack
オプション
| オプション | 説明 | デフォルト値 |
|---|---|---|
--input | 入力ドキュメントのディレクトリ | ./docs |
--output | 出力パック名 | knowledge_pack |
--fts | FTS5を使用するかどうか | True |
--verbose | 詳細なログ出力 | False |
例
# ドキュメントを処理してパックをビルド
$ python build_pack.py --input ./my_docs --output my_pack
# 詳細モードで実行
$ python build_pack.py --input ./docs --output pack --verbose
出力ファイル構造
ビルドされたパックは以下の構造を持ちます:
output_pack/
├── index.db # SQLite FTS5データベース
├── metadata.json # パックのメタデータ
└── documents/ # 元のドキュメント(参照用)
├── doc1.md
└── doc2.txt
技術詳細
- SQLite FTS5: 高速な全文検索を提供。ランキング機能をサポート。
- Gemma 4 エージェントループ: オフライン推論とエージェントループの統合。
- ゼロランタイム依存: ビルド後は追加のPythonパッケージは不要。
- ベクトル埋め込み不要: 純粋なキーワードベースの検索で軽量。
開発
テスト
$ pytest tests/
貢献
プルリクエストは大歓迎です。大きな変更の場合は、まずissueを開いて変更内容を議論してください。
ライセンス
MIT