GenCodeDoc について
GenCodeDocは、スナップショット作成、バージョン比較、Markdownドキュメント生成を行う開発者向けツールです。自動保存を設定でき、CLI、REST API、MCPから操作できます。
主な機能
- 01重複排除によるプロジェクトスナップショット
- 02タイマー・差分・ハイブリッド自動保存
- 03ディレクトリツリー付きMarkdown生成
- 04Unified・JSON・AST形式の差分比較
- 05Python・Node.js・Go・Webのプリセット
活用シーン
- 01プロジェクトの変更追跡と過去ファイルの復元
- 02指定したパスのMarkdownドキュメント生成
- 03バージョン比較と変更履歴の作成
- 04AIアシスタント経由のスナップショット管理
MCP 対応
スナップショット、ドキュメント、プロジェクト、設定、自動保存の操作をMCPツールとして公開します。READMEではstdioとSSEに対応し、Claude DesktopやGemini CLIなどのMCPクライアントと接続できると説明されています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🚀 GenCodeDoc
MCP を完全サポートした、スマートなドキュメント生成ツールとインテリジェントなバージョン管理システム
最新の開発ワークフローに対応した、インテリジェントなバージョン管理とドキュメント生成
⚡ クイックスタート
# 1. Install
cd /path/to/gencodedoc
poetry install
# 2. Initialize your project
poetry run gencodedoc init --preset python
# 3. Create your first snapshot
poetry run gencodedoc snapshot create -m "Initial version" -t v1.0
# 4. Generate documentation (Smart Split)
poetry run gencodedoc doc generate --limit 5000
# 5. Visualize Tree
poetry run gencodedoc tree
🎯 AI アシスタント(Claude/Gemini)向け:MCP 統合をご覧ください
✨ 機能 🎯 主な機能 📸 スマートスナップショット - SHA256 による重複排除で、約 70% の容量を節約しながらインテリジェントなスナップショットを作成 🔄 インテリジェントな自動保存 - 設定可能なしきい値を備えた 3 つのモード(タイマー/差分/ハイブリッド) 📝 美しいドキュメント - 構文ハイライト、ディレクトリツリー、スマートな分割を備えた Markdown ドキュメントを生成 🔍 高度な差分 - 統合形式、JSON、または AST ベースの差分でバージョンを比較 🗜️ 効率的なストレージ - zstd 圧縮(約 3 倍の削減)と最適化されたインデックスを備えた SQLite 🎨 プロジェクトプリセット - Python、Node.js、Go、Web プロジェクト向けに事前設定済み 🔌 MCP 統合(Model Context Protocol) 26 個の MCP ツール - CLI の全機能を MCP 経由で AI アシスタントに公開 3 つのトランスポート - stdio(Gemini CLI)+ SSE(Claude Desktop)+ REST API マルチプロジェクト - 複数のプロジェクトを同時に管理 コードインテリジェンス - ファイル履歴、検索、変更履歴の生成 ライブステータス - プロジェクトの統計情報とスナップショット管理をリアルタイムで表示 📦 インストール 前提条件 Python 3.10+ Poetry(依存関係マネージャー) Poetry のインストール Bash
Linux/macOS
curl -sSL https://install.python-poetry.org | python3 -
Windows(PowerShell)
(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py - GenCodeDoc のインストール Bash
リポジトリをクローンするか、プロジェクトのディレクトリに移動
cd /home/fkomp/Bureau/oracle/utilitaires/gencodedoc/gencodedoc
依存関係をインストール
poetry install
インストールを確認
poetry run gencodedoc --help 🎯 使い方 📋 CLI の使い方 プロジェクトを初期化 Bash
基本的な初期化
gencodedoc init
Python プリセットを使用(Oracle プロジェクトにおすすめ)
gencodedoc init --preset python
利用可能なプリセット:python、nodejs、go、web
スナップショットの管理 Bash
スナップショットを作成
gencodedoc snapshot create --message "Feature X completed" --tag v1.0
スナップショットを一覧表示
gencodedoc snapshot list --limit 10
スナップショットの詳細を表示
gencodedoc snapshot show v1.0
特定のバージョンのファイル内容を表示(新機能)
gencodedoc snapshot cat v1.0 src/main.py
スナップショット内のファイルを一覧表示(新機能)
gencodedoc snapshot files v1.0 --pattern "*.py"
バージョンを比較
gencodedoc snapshot diff v1.0 v2.0
スナップショットを復元(全体または一部)
gencodedoc snapshot restore v1.0 --force gencodedoc snapshot restore v1.0 --filter "src/*.py" # 一部のみを復元
スナップショットをエクスポート(新機能)
gencodedoc snapshot export v1.0 ./dist-v1 --archive # .tar.gz を作成
スナップショットを削除
gencodedoc snapshot delete old-version --force
孤立データをクリーンアップ(新機能)
gencodedoc snapshot cleanup ドキュメントの生成 Bash
ドキュメント全体を生成
gencodedoc doc generate
出力先を指定
gencodedoc doc generate --output docs/API.md
指定したパスのみを対象にする
gencodedoc doc generate --include src/api/ --include README.md
構造をプレビュー
gencodedoc doc preview --max-depth 3
プロジェクトの統計情報を表示
gencodedoc doc stats 設定 Bash
設定を表示
gencodedoc config show
設定を編集
gencodedoc config edit
特定の値を設定
gencodedoc config set autosave.enabled true gencodedoc config set autosave.mode hybrid
プリセットを適用
gencodedoc config preset python
除外ルールを管理
gencodedoc config ignore --add-dir dist gencodedoc config ignore --add-ext .tmp gencodedoc config ignore --list-all
カスタマイズ可能なプリセット
プリセットは現在、YAML ファイル(gencodedoc/config/presets/*.yaml)で定義されています。
ソースコードを直接編集して変更できます。
プロジェクトのステータス Bash
プロジェクトのステータスを表示
gencodedoc status 🔌 MCP 統合 GenCodeDoc は Model Context Protocol を通じて 22 個の強力なツールを提供しており、Claude Desktop、Gemini CLI、および MCP 互換クライアントで利用できます。
🎯 トランスポートモード トランスポート 用途 AI アシスタント ポート stdio CLI 統合 Gemini CLI、カスタムスクリプト stdin/stdout SSE Web/デスクトップアプリ Claude Desktop、Web UI 8000(HTTP) REST API 統合 任意の HTTP クライアント 8000(HTTP) 🚀 Gemini CLI のセットアップ(stdio)
- Poetry 仮想環境のパスを確認します。
Bash
cd /home/fkomp/Bureau/oracle/utilitaires/gencodedoc/gencodedoc poetry env info --path
パスをコピーし、末尾に /bin/python を追加します
- ~/.config/gemini-desktop-app/settings.json に追加します。
JSON
{ "mcpServers": { "gencodedoc": { "command": "/path/to/your/venv/bin/python", "args": ["-m", "gencodedoc.mcp.server_stdio"], "env": { "PROJECT_PATH": "/home/fkomp/Bureau/oracle/utilitaires/gencodedoc/gencodedoc" } } } } 3. Gemini CLI を再起動すれば、準備完了です!🎉
🚀 Claude Desktop のセットアップ(SSE)
- SSE サーバーを起動します。
Bash
ターミナル 1:サーバーを起動
poetry run python -m gencodedoc.mcp.server_sse
サーバーは http://127.0.0.1:8000 で稼働します
- Claude Desktop の設定に追加します。
場所:
macOS:/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\Claude\claude_desktop_config.json
Linux:/.config/Claude/claude_desktop_config.json
設定:
JSON
{ "mcpServers": { "gencodedoc": { "url": "http://127.0.0.1:8000/mcp/sse", "transport": "sse", "description": "GenCodeDoc - スマートなドキュメント作成とバージョン管理" } } } 3. Claude Desktop を再起動してください。サーバーは起動したままにしておく必要があります!
🚀 REST API Bash
REST サーバーを起動
poetry run python -m gencodedoc.mcp.server
利用可能なエンドポイント
GET http://127.0.0.1:8000/ # サーバー情報 GET http://127.0.0.1:8000/mcp/tools # ツール一覧 POST http://127.0.0.1:8000/mcp/execute # ツールを実行 🛠️ MCP ツール(26 個)
🧠 コードインテリジェンス(3 個のツール)
| ツール | 説明 | 主なパラメーター |
|---|---|---|
get_file_history | バージョン間のファイル変更を追跡します | file_path |
search_snapshots | すべてのスナップショット内のテキストを検索します | query、case_sensitive、file_filter |
generate_changelog | Keep-a-Changelog を生成します | from_ref、to_ref |
📸 スナップショット管理(11 個のツール)
| ツール | 説明 | 主なパラメーター |
|---|---|---|
create_snapshot | 新しいスナップショットを作成します | message、tag、include_paths |
list_snapshots | すべてのスナップショットを一覧表示します | limit、include_autosave |
get_snapshot_details | スナップショットの詳細情報を取得します | snapshot_ref |
restore_snapshot | スナップショットを復元します(全体または一部) | snapshot_ref、force、file_filters |
restore_files | 指定したファイルを復元します | snapshot_ref、file_filters |
delete_snapshot | スナップショットを削除します | snapshot_ref |
diff_versions | 2 つのバージョンを比較します | from_ref、to_ref、format、file_filters |
get_file_at_version | 単一ファイルの内容を取得します | snapshot_ref、file_path |
list_files_at_version | スナップショット内のファイルを一覧表示します | snapshot_ref、pattern |
export_snapshot | スナップショットをフォルダーまたはアーカイブにエクスポートします | snapshot_ref、output_path、archive |
cleanup_orphaned_contents | 未使用のデータをクリーンアップします | なし |
📝 ドキュメント(3 個のツール)
| ツール | 説明 | 主なパラメーター |
|---|---|---|
generate_documentation | Markdown ドキュメントを生成します | output_path、split_limit、ignore_tree_patterns |
preview_structure | ディレクトリツリーを表示します | max_depth、ignore_add、limit、page |
get_project_stats | プロジェクトの統計情報を取得します | なし |
🎯 プロジェクト管理(2 個のツール)
| ツール | 説明 | 主なパラメーター |
|---|---|---|
init_project | gencodedoc を初期化します | project_path、preset |
get_project_status | プロジェクトのステータスを取得します | project_path |
⚙️ 設定(4 個のツール)
| ツール | 説明 | 主なパラメーター |
|---|---|---|
get_config | 設定を表示します | project_path |
set_config_value | 設定値を変更します | key、value |
apply_preset | プリセット設定を適用します | preset(python/nodejs/go/web) |
manage_ignore_rules | 除外ルールを管理します | add_dir、add_file、add_ext、list_all |
🔄 自動保存(3 個のツール)
| ツール | 説明 | 主なパラメーター |
|---|---|---|
start_autosave | 自動バージョン管理を開始します | project_path、mode |
stop_autosave | 自動バージョン管理を停止します | project_path |
get_autosave_status | すべての自動保存のステータスを取得します | なし |
🤝 コントリビューション コントリビューションを歓迎します! 🎉
🐛 バグは GitHub Issues で報告してください 💡 機能の提案は Discussions でお寄せください 🔧 プルリクエストを送信してください
開発ワークフロー:
- リポジトリをフォークします
- 機能ブランチを作成します(
git checkout -b feature/amazing) - 変更を加えます
- テストを実行します(
make test) - PR を送信します
📄 ライセンス MIT ライセンス - LICENSE ファイルを参照してください
🐛 課題:GitHub Issues 💬 ディスカッション:GitHub Discussions 🌐 ウェブサイト:esprit-artificiel.com 📧 メール:[email protected]
💡 プロのヒント:AI を活用したバージョン管理には、GenCodeDoc を Gemini CLI または Claude Desktop と一緒にお使いください!
⭐ 役に立った場合は、このリポジトリにスターを付けてください!
🤖 「すべての自動保存を停止して、ステータスを表示して」 → 呼び出し:stop_autosave(...) + get_autosave_status() ⚙️ 設定 設定ファイル(.gencodedoc.yaml) YAML
project_name: "my-project"
無視するファイル/ディレクトリ
ignore: dirs: - node_modules - venv - .venv - pycache - .git - dist - build files: - "*.log" - package-lock.json - .DS_Store extensions: - .pyc - .pyo - .exe - .jpg - .png - .pdf patterns: [] # gitignore 形式のパターン
インテリジェントな自動保存
autosave: enabled: false # 有効にするには true に設定します mode: hybrid # timer | diff | hybrid(推奨)
タイマーモード:固定間隔
timer: interval: 300 # 秒(5 分)
差分モード:しきい値ベース
diff_threshold: threshold: 0.05 # ファイルの 5% が変更されたら保存します check_interval: 60 # 60 秒ごとに確認します ignore_whitespace: true ignore_comments: false
ハイブリッドモード:タイマーと差分を組み合わせます(推奨)
hybrid: min_interval: 180 # 保存間隔の最短値:3 分 max_interval: 600 # 保存間隔の最長値:10 分 threshold: 0.03 # ファイルの 3% が変更されたら保存します
保持ポリシー
retention: max_autosaves: 50 # 自動保存は最大 50 件保持します compress_after_days: 7 # 7 日後に圧縮します delete_after_days: 30 # 30 日後に削除します keep_manual: true # 手動スナップショットは常に保持します
ドキュメントの出力
output: default_name: "{project}doc{date}.md" include_tree: true include_code: true tree_full_code_select: false # ツリー全体、選択したコードのみ language_detection: true max_file_size: 1000000 # ファイルごとの最大サイズ:1 MB
差分の出力形式
diff_format: default: unified # unified | json | ast unified_context: 3 json_include_content: true ast_enabled: false # 試験的機能
ストレージ
storage_path: .gencodedoc compression_enabled: true compression_level: 3 # 1~22(3 = バランス良好) クイック設定コマンド Bash
自動保存を有効にする
gencodedoc config set autosave.enabled true gencodedoc config set autosave.mode hybrid
自動保存のしきい値を調整する
gencodedoc config set autosave.hybrid.min_interval 300 gencodedoc config set autosave.hybrid.max_interval 1800 gencodedoc config set autosave.hybrid.threshold 0.03
無視ルールを追加する
gencodedoc config ignore --add-dir dist gencodedoc config ignore --add-ext .tmp gencodedoc config ignore --add-file debug.log 🏗️ アーキテクチャ text
┌─────────────────────────────────────────────────────────────┐ │ GenCodeDoc システム │ └─────────────────────────────────────────────────────────────┘
┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ CLI(Typer) │ │ MCP stdio │ │ MCP SSE/REST │ │ │ │(Gemini CLI)│ │(Claude/Web)│ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │ │ │ └─────────────────┼──────────────────┘ │ ┌──────────▼──────────┐ │ コアマネージャー │ ├─────────────────────┤ │ • ConfigManager │ │ • VersionManager │ │ • DocGenerator │ │ • AutosaveManager │ └──────────┬──────────┘ │ ┌───────────────┼───────────────┐ │ │ │ ┌────▼─────┐ ┌─────▼──────┐ ┌────▼──────┐ │ スキャナー│ │ 差分比較 │ │ ストレージ│ │ │ │ │ │ │ │ • スキャン│ │ • 統合形式 │ │ • SQLite │ │ • フィルター│ │ • JSON │ │ • zstd │ │ • 検出 │ │ • AST │ │ • 重複排除│ └──────────┘ └────────────┘ └───────────┘ ┌─────────────────────────────────────────────────────────────┐ │ ストレージレイヤー │ ├─────────────────────────────────────────────────────────────┤ │ .gencodedoc/ │ │ ├── gencodedoc.db ← SQLite(メタデータ) │ │ │ ├── snapshots ← スナップショットレコード │ │ │ ├── snapshot_files ← ファイルエントリ │ │ │ ├── file_contents ← 重複排除済みコンテンツ(SHA256) │ │ │ └── autosave_state ← 自動保存ステータス │ │ └── config/ ← 設定ファイル │ └─────────────────────────────────────────────────────────────┘
主な機能: • 🔑 SHA256 による重複排除 → 約 70% の容量削減 • 🗜️ zstd 圧縮 → 約 3 倍にサイズを削減 • 📊 インデックス付き SQLite → 高速なクエリ • 🔄 Watchdog オブザーバー → リアルタイムのファイル監視 プロジェクト構成 text
gencodedoc/ ├── gencodedoc/ # ソースコード │ ├── cli/ # CLI コマンド(Typer) │ │ ├── main.py # エントリーポイント │ │ ├── snapshot_cmd.py │ │ ├── doc_cmd.py │ │ ├── config_cmd.py │ │ └── mcp_cmd.py │ ├── core/ # ビジネスロジック │ │ ├── config.py # 設定管理 │ │ ├── scanner.py # ファイルのスキャンとフィルタリング │ │ ├── versioning.py # スナップショット管理 │ │ ├── documentation.py │ │ ├── differ.py # バージョン比較 │ │ └── autosave.py # インテリジェントな自動保存 │ ├── mcp/ # MCP サーバー │ │ ├── server_stdio.py # stdio トランスポート │ │ ├── server_sse.py # SSE トランスポート │ │ ├── server.py # REST トランスポート │ │ └── tools.py # ツール定義 │ ├── models/ # データモデル(Pydantic) │ │ ├── config.py │ │ └── snapshot.py │ ├── storage/ # ストレージと圧縮 │ │ ├── database.py # SQLite マネージャー │ │ ├── snapshot_store.py │ │ └── compression.py # zstd 圧縮 │ └── utils/ # ユーティリティ │ ├── filters.py │ ├── formatters.py │ └── tree.py ├── config/ # 設定プリセット │ └── presets/ │ ├── python.yaml │ ├── nodejs.yaml │ ├── go.yaml │ └── web.yaml ├── tests/ # 単体テスト ├── pyproject.toml # Poetry の設定 ├── Makefile # 開発用コマンド └── README.md 🔬 高度な機能 🎯 インテリジェントな重複排除(約 70% の容量削減) GenCodeDoc は SHA256 ベースの重複排除を使用します。
✅ スナップショット間で同一のファイルは 1 回だけ保存されます ✅ 大幅な容量削減(実際のプロジェクトでは約 70%) ✅ zstd 圧縮により、さらに約 3 倍の削減 ✅ インデックスを備えた最適化済み SQLite
例:100 MB のプロジェクトを 10 個のスナップショットで保存する場合
重複排除なし:1 GB GenCodeDoc を使用:約 300 MB(重複排除と圧縮) 🔄 自動保存モード モード 仕組み 最適な用途 timer X 秒ごとに保存 継続的な開発 diff X% 変更されたら保存 重要なプロジェクト hybrid ⭐ 最小/最大間隔としきい値 一般的な用途(推奨) ハイブリッドモードの例:
YAML
hybrid: min_interval: 300 # 5 分より頻繁に保存しない max_interval: 1800 # 30 分後に強制保存 threshold: 0.03 # またはファイルの 3% が変更された場合 📊 差分形式 形式 説明 用途 unified Git スタイルの差分 人間による確認 json 構造化データ 自動化 ast セマンティック差分 コード分析(試験的) Bash
統一形式の差分(デフォルト)
gencodedoc snapshot diff v1.0 v2.0
スクリプト用 JSON
gencodedoc snapshot diff v1.0 v2.0 --format json > changes.json
AST(セマンティック)
gencodedoc snapshot diff v1.0 v2.0 --format ast 🐛 トラブルシューティング よくある問題 1️⃣ MCP エラー:notifications/initialized 症状:MCP の起動時にエラーが発生します。
text
MCP ERROR: Unknown method: notifications/initialized 原因:MCP プロトコルは、古いバージョンでは処理されない通知を送信します。
解決策:✅ 現行バージョンではすでに修正されています。サーバーは MCP 通知を無視するようになりました。
2️⃣ スナップショットが誤った場所に作成される 症状:すべてのスナップショットが対象プロジェクトではなく、gencodedoc 自身のディレクトリに保存されます。
原因:MCP tools/call パラメーターから project_path が正しく抽出されていません。
解決策:✅ すでに修正されています。サーバーは引数から project_path を正しく抽出するようになりました。
修正を確認する:
Bash
これは gencodedoc ではなく /path/to/project にスナップショットを作成します
/gencodedoc create_snapshot project_path=/path/to/project tag=test 3️⃣ Zod 検証エラー(id=null) 症状:
text
Error: Expected string or number, received null (path: ["id"]) 原因:"id": 0 ではなく "id": null を含む JSON-RPC レスポンスが返されます。
解決策:✅ すでに修正されています。すべてのエラーレスポンスで request_id または 0 を使用するようになりました。
4️⃣ ファイルが正しくスキャンされない 症状:スナップショットに表示されるファイル数が間違っているか、誤ったディレクトリのファイルが含まれています。
原因:snapshot_store.py が絶対パスではなく相対パスを使用していました。
解決策:✅ すでに修正されています。SnapshotStore は project_path を受け取り、絶対ファイルパスを使用するようになりました。
5️⃣ データベースが初期化されていない 症状:
text
Error: no such table: snapshots 原因:スナップショットを作成する前にプロジェクトが初期化されていません。
解決策:
Bash
必ず最初に初期化します(テーブルが作成されます)
gencodedoc init --preset python
または MCP 経由で実行します
/gencodedoc init_project project_path=/path/to/project preset=python 6️⃣ 自動保存が開始されない 症状:start_autosave ツールが動作しません。
原因:自動保存には MCP サーバーを起動したままにしておく必要があります(バックグラウンドプロセスです)。
解決策:
stdio モード:サーバーはリクエストごとに実行されるため、リクエストが終了すると自動保存も停止します SSE/REST モード:✅ サーバーが常時稼働するため、自動保存が動作します! 推奨:自動保存には SSE/REST を、単発コマンドには stdio を使用してください。
デバッグモード Bash
詳細なログを有効にします(実装されている場合)
export GENCODEDOC_DEBUG=1 poetry run gencodedoc snapshot create --message "test"
SQLite DB を直接確認します
sqlite3 /path/to/project/.gencodedoc/gencodedoc.db ".tables" sqlite3 /path/to/project/.gencodedoc/gencodedoc.db "SELECT * FROM snapshots;" 🧪 テスト Bash
すべてのテストを実行します
poetry run pytest
カバレッジ付きで実行します
poetry run pytest --cov=gencodedoc --cov-report=html
特定のテストを実行します
poetry run pytest tests/test_scanner.py -v poetry run pytest tests/test_versioning.py -v poetry run pytest tests/test_mcp.py -v
ウォッチモード(pytest-watch が必要です)
poetry run ptw 🛠️ 開発 開発環境のセットアップ Bash
開発用依存関係を含めてインストールします
poetry install
仮想環境を有効にします
poetry shell
pre-commit フックをインストールします(設定されている場合)
pre-commit install Makefile コマンド Bash
make help # すべてのコマンドを表示します make install # 依存関係をインストールします make test # テストを実行します make test-cov # カバレッジ付きでテストを実行します make lint # コード品質をチェックします make format # コードをフォーマットします(Black) make clean # 一時ファイルを削除します make docs # ドキュメントを生成します make serve-mcp-sse # SSE サーバーを起動します make serve-mcp-stdio # stdio サーバーを起動します make all # lint + test + build を実行します コードスタイル フォーマッター:Black(行の長さ 100) リンター:Ruff 型ヒント:Pydantic で強制 Docstring:Google スタイル 🎯 ユースケース 1️⃣ ドキュメントの継続的な更新 Bash
自動保存を有効にして初期化します
gencodedoc init --preset python gencodedoc config set autosave.enabled true gencodedoc config set autosave.mode hybrid
ドキュメントは常に最新の状態に保たれます
gencodedoc doc generate --output docs/API.md 2️⃣ 安全なリファクタリング Bash
重要な変更を行う前にスナップショットを作成します
gencodedoc snapshot create
--message "Before refactoring authentication system"
--tag before-refactor
... 変更を加えます ...
リファクタリング後のスナップショット
gencodedoc snapshot create
--message "After refactoring - tests passing"
--tag after-refactor
比較
gencodedoc snapshot diff before-refactor after-refactor
必要に応じてロールバック
gencodedoc snapshot restore before-refactor --force 3️⃣ API ドキュメントを選択して生成 Bash
特定のモジュールのみをドキュメント化
gencodedoc doc generate
--include src/api/
--include src/models/
--include README.md
--output docs/API_Reference.md
4️⃣ AI 支援ワークフロー(Gemini/Claude)
Bash
1. MCP を設定する(一度だけ)
AI アシスタントの設定に gencodedoc を追加します
2. 自然言語で指示する
「タグ v2.0 でスナップショットを作成して」 「v1.0 と v2.0 を比較して」 「プロジェクトの統計情報を表示して」 「ハイブリッドモードで自動保存を開始して」 「完全なドキュメントを生成して」
AI が適切な MCP ツールを自動的に呼び出します!🎉
🌟 ロードマップ Git 統合(コミット時にスナップショットを自動作成) クラウドバックアップ(S3、GCS) Web UI ダッシュボード AST ベースのセマンティック差分(完全な実装) 複数言語向けプリセット(Rust、Java、C++) スナップショットの暗号化 コラボレーション機能(スナップショットの共有) 📄 ライセンス MIT License - LICENSE ファイルを参照してください
🤝 コントリビューション コントリビューションを歓迎します!🎉
🐛 GitHub Issues でバグを報告してください 💡 Discussions で機能を提案してください 🔧 プルリクエストを送信してください 開発ワークフロー:
リポジトリをフォークします 機能ブランチを作成します(git checkout -b feature/amazing) 変更を加えます テストを実行します(make test) PR を送信します 📞 サポート 🐛 課題:GitHub Issues 💬 ディスカッション:GitHub Discussions 🌐 ウェブサイト:esprit-artificiel.com 📧 メール:[email protected] 🙏 謝辞 以下の素晴らしいツールを使用して構築しました:
FastAPI - MCP サーバーのフレームワーク Pydantic - データ検証 Typer - CLI フレームワーク Rich - ターミナルのフォーマット zstandard - 圧縮 Watchdog - ファイル監視 SQLite - 組み込みデータベース
💡 プロのヒント:AI を活用したバージョン管理には、Gemini CLI または Claude Desktop で GenCodeDoc を使用してください!
⭐ 便利だと思ったら、このリポジトリにスターを付けてください!
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。