{
  "markdown": "# 🚀 GenCodeDoc\n\n<div align=\"center\">\n\n**Smart documentation generator and intelligent versioning system with full MCP support**\n\n[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)\n[![Poetry](https://img.shields.io/badge/dependency-poetry-blueviolet)](https://python-poetry.org/)\n[![MCP Compatible](https://img.shields.io/badge/MCP-stdio%20%7C%20SSE%20%7C%20REST-green)](https://modelcontextprotocol.io/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![AI Ready](https://img.shields.io/badge/AI-Claude%20%7C%20Gemini-orange)](https://esprit-artificiel.com)\n\n*Intelligent versioning and documentation for modern development workflows*\n\n[Quick Start](#-quick-start) • [Features](#-features) • [MCP Tools](#-mcp-tools-26-tools) • [Documentation](#-documentation)\n\n</div>\n\n---\n\n## ⚡ Quick Start\n\n```bash\n# 1. Install\ncd /path/to/gencodedoc\npoetry install\n\n# 2. Initialize your project\npoetry run gencodedoc init --preset python\n\n# 3. Create your first snapshot\npoetry run gencodedoc snapshot create -m \"Initial version\" -t v1.0\n\n# 4. Generate documentation (Smart Split)\npoetry run gencodedoc doc generate --limit 5000\n\n# 5. Visualize Tree\npoetry run gencodedoc tree\n```\n🎯 For AI Assistants (Claude/Gemini): See MCP Integration\n\n✨ Features\n🎯 Core Features\n📸 Smart Snapshots - Create intelligent snapshots with ~70% space savings via SHA256 deduplication\n🔄 Intelligent Autosave - 3 modes (timer/diff/hybrid) with configurable thresholds\n📝 Beautiful Documentation - Generate Markdown docs with syntax highlighting, directory trees, and **smart splitting**\n🔍 Advanced Diff - Compare versions with unified, JSON, or AST-based diffs\n🗜️ Efficient Storage - zstd compression (~3x reduction) + SQLite with optimized indexes\n🎨 Project Presets - Pre-configured for Python, Node.js, Go, and Web projects\n🔌 MCP Integration (Model Context Protocol)\n**26 MCP Tools** - Full CLI functionality exposed via MCP for AI Assistants\n3 Transports - stdio (Gemini CLI) + SSE (Claude Desktop) + REST API\nMulti-Project - Manage multiple projects simultaneously\nCode Intelligence - File history, search, and changelog generation\nLive Status - Real-time project statistics and snapshot management\n📦 Installation\nPrerequisites\nPython 3.10+\nPoetry (dependency manager)\nInstall Poetry\nBash\n\n# Linux/macOS\ncurl -sSL https://install.python-poetry.org | python3 -\n\n# Windows (PowerShell)\n(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -\nInstall GenCodeDoc\nBash\n\n# Clone or navigate to the project\ncd /home/fkomp/Bureau/oracle/utilitaires/gencodedoc/gencodedoc\n\n# Install dependencies\npoetry install\n\n# Verify installation\npoetry run gencodedoc --help\n🎯 Usage\n📋 CLI Usage\nInitialize a Project\nBash\n\n# Basic initialization\ngencodedoc init\n\n# With Python preset (recommended for Oracle projects)\ngencodedoc init --preset python\n\n# Available presets: python, nodejs, go, web\nSnapshot Management\nBash\n\n# Create snapshot\ngencodedoc snapshot create --message \"Feature X completed\" --tag v1.0\n\n# List snapshots\ngencodedoc snapshot list --limit 10\n\n# Show snapshot details\ngencodedoc snapshot show v1.0\n\n# View file content at specific version (NEW)\ngencodedoc snapshot cat v1.0 src/main.py\n\n# List files in a snapshot (NEW)\ngencodedoc snapshot files v1.0 --pattern \"*.py\"\n\n# Compare versions\ngencodedoc snapshot diff v1.0 v2.0\n\n# Restore snapshot (full or partial)\ngencodedoc snapshot restore v1.0 --force\ngencodedoc snapshot restore v1.0 --filter \"src/*.py\"  # Partial restore\n\n# Export snapshot (NEW)\ngencodedoc snapshot export v1.0 ./dist-v1 --archive  # Creates .tar.gz\n\n# Delete snapshot\ngencodedoc snapshot delete old-version --force\n\n# Cleanup orphaned data (NEW)\ngencodedoc snapshot cleanup\nDocumentation Generation\nBash\n\n# Full documentation\ngencodedoc doc generate\n\n# Custom output\ngencodedoc doc generate --output docs/API.md\n\n# Specific paths only\ngencodedoc doc generate --include src/api/ --include README.md\n\n# Structure preview\ngencodedoc doc preview --max-depth 3\n\n# Project statistics\ngencodedoc doc stats\nConfiguration\nBash\n\n# View configuration\ngencodedoc config show\n\n# Edit configuration\ngencodedoc config edit\n\n# Set specific values\ngencodedoc config set autosave.enabled true\ngencodedoc config set autosave.mode hybrid\n\n# Apply preset\ngencodedoc config preset python\n\n# Manage ignore rules\ngencodedoc config ignore --add-dir dist\ngencodedoc config ignore --add-ext .tmp\ngencodedoc config ignore --list-all\n\n# Customizable Presets\n# Presets are now defined in YAML files (gencodedoc/config/presets/*.yaml) \n# and can be modified directly in the source code.\n\nProject Status\nBash\n\n# Show project status\ngencodedoc status\n🔌 MCP Integration\nGenCodeDoc exposes 22 powerful tools via the Model Context Protocol, compatible with Claude Desktop, Gemini CLI, and any MCP-compatible client.\n\n🎯 Transport Modes\nTransport\tUse Case\tAI Assistants\tPort\nstdio\tCLI integration\tGemini CLI, custom scripts\tstdin/stdout\nSSE\tWeb/Desktop apps\tClaude Desktop, web UIs\t8000 (HTTP)\nREST\tAPI integration\tAny HTTP client\t8000 (HTTP)\n🚀 Setup for Gemini CLI (stdio)\n1. Find your Poetry venv path:\n\nBash\n\ncd /home/fkomp/Bureau/oracle/utilitaires/gencodedoc/gencodedoc\npoetry env info --path\n# Copy the path and append /bin/python\n2. Add to ~/.config/gemini-desktop-app/settings.json:\n\nJSON\n\n{\n  \"mcpServers\": {\n    \"gencodedoc\": {\n      \"command\": \"/path/to/your/venv/bin/python\",\n      \"args\": [\"-m\", \"gencodedoc.mcp.server_stdio\"],\n      \"env\": {\n        \"PROJECT_PATH\": \"/home/fkomp/Bureau/oracle/utilitaires/gencodedoc/gencodedoc\"\n      }\n    }\n  }\n}\n3. Restart Gemini CLI and you`re ready! 🎉\n\n🚀 Setup for Claude Desktop (SSE)\n1. Start the SSE server:\n\nBash\n\n# Terminal 1: Start server\npoetry run python -m gencodedoc.mcp.server_sse\n\n# Server runs on http://127.0.0.1:8000\n2. Add to Claude Desktop config:\n\nLocation:\n\nmacOS: ~/Library/Application Support/Claude/claude_desktop_config.json\nWindows: %APPDATA%\\Claude\\claude_desktop_config.json\nLinux: ~/.config/Claude/claude_desktop_config.json\nConfig:\n\nJSON\n\n{\n  \"mcpServers\": {\n    \"gencodedoc\": {\n      \"url\": \"http://127.0.0.1:8000/mcp/sse\",\n      \"transport\": \"sse\",\n      \"description\": \"GenCodeDoc - Smart documentation and versioning\"\n    }\n  }\n}\n3. Restart Claude Desktop and the server must remain running!\n\n🚀 REST API\nBash\n\n# Start REST server\npoetry run python -m gencodedoc.mcp.server\n\n# Available endpoints\nGET  http://127.0.0.1:8000/           # Server info\nGET  http://127.0.0.1:8000/mcp/tools  # List tools\nPOST http://127.0.0.1:8000/mcp/execute # Execute tool\n🛠️ MCP Tools (26 Tools)\n\n 🧠 Code Intelligence (3 tools)\n | Tool | Description | Key Parameters |\n |------|-------------|----------------|\n | `get_file_history` | Track file changes across versions | `file_path` |\n | `search_snapshots` | Search text in all snapshots | `query`, `case_sensitive`, `file_filter` |\n | `generate_changelog` | Generate Keep-a-Changelog | `from_ref`, `to_ref` |\n\n 📸 Snapshot Management (11 tools)\n | Tool | Description | Key Parameters |\n |------|-------------|----------------|\n | `create_snapshot` | Create a new snapshot | `message`, `tag`, `include_paths` |\n | `list_snapshots` | List all snapshots | `limit`, `include_autosave` |\n | `get_snapshot_details` | Get full snapshot info | `snapshot_ref` |\n | `restore_snapshot` | Restore a snapshot (full or partial) | `snapshot_ref`, `force`, `file_filters` |\n | `restore_files` | Restore specific files | `snapshot_ref`, `file_filters` |\n | `delete_snapshot` | Delete a snapshot | `snapshot_ref` |\n | `diff_versions` | Compare two versions | `from_ref`, `to_ref`, `format`, `file_filters` |\n | `get_file_at_version` | Get content of a single file | `snapshot_ref`, `file_path` |\n | `list_files_at_version` | List files in a snapshot | `snapshot_ref`, `pattern` |\n | `export_snapshot` | Export snapshot to folder/archive | `snapshot_ref`, `output_path`, `archive` |\n | `cleanup_orphaned_contents` | Cleanup unused data | none |\n\n 📝 Documentation (3 tools)\n | Tool | Description | Key Parameters |\n |------|-------------|----------------|\n | `generate_documentation` | Generate Markdown docs | `output_path`, `split_limit`, `ignore_tree_patterns` |\n | `preview_structure` | Show directory tree | `max_depth`, `ignore_add`, `limit`, `page` |\n | `get_project_stats` | Get project statistics | none |\n\n 🎯 Project Management (2 tools)\n | Tool | Description | Key Parameters |\n |------|-------------|----------------|\n | `init_project` | Initialize gencodedoc | `project_path`, `preset` |\n | `get_project_status` | Get project status | `project_path` |\n\n ⚙️ Configuration (4 tools)\n | Tool | Description | Key Parameters |\n |------|-------------|----------------|\n | `get_config` | View configuration | `project_path` |\n | `set_config_value` | Modify config value | `key`, `value` |\n | `apply_preset` | Apply preset config | `preset` (python/nodejs/go/web) |\n | `manage_ignore_rules` | Manage ignore rules | `add_dir`, `add_file`, `add_ext`, `list_all` |\n\n 🔄 Autosave (3 tools)\n | Tool | Description | Key Parameters |\n |------|-------------|----------------|\n | `start_autosave` | Start automatic versioning | `project_path`, `mode` |\n | `stop_autosave` | Stop automatic versioning | `project_path` |\n | `get_autosave_status` | Get status of all autosaves | none |\n\n ---\n\n 🤝 Contributing\n Contributions welcome! 🎉\n\n 🐛 Report bugs via GitHub Issues\n 💡 Suggest features via Discussions\n 🔧 Submit Pull Requests\n\n Development workflow:\n 1. Fork the repo\n 2. Create a feature branch (`git checkout -b feature/amazing`)\n 3. Make your changes\n 4. Run tests (`make test`)\n 5. Submit PR\n\n 📄 License\n MIT License - See LICENSE file\n\n 🐛 Issues: GitHub Issues\n 💬 Discussions: GitHub Discussions\n 🌐 Website: esprit-artificiel.com\n 📧 Email: support@esprit-artificiel.com\n\n <div align=\"center\">\n Made with ❤️ for developers who love smart versioning and beautiful docs\n\n 💡 Pro Tip: Use GenCodeDoc with Gemini CLI or Claude Desktop for AI-powered version control!\n\n ⭐ Star this repo if you find it useful!\n </div>🤖 \"Start autosave in hybrid mode for this project\"\n→ Calls: start_autosave(project_path=\"...\", mode=\"hybrid\")\n\n🤖 \"Stop all autosaves and show me their status\"\n→ Calls: stop_autosave(...) + get_autosave_status()\n⚙️ Configuration\nConfiguration File (.gencodedoc.yaml)\nYAML\n\nproject_name: \"my-project\"\n\n# Files/directories to ignore\nignore:\n  dirs:\n    - node_modules\n    - venv\n    - .venv\n    - __pycache__\n    - .git\n    - dist\n    - build\n  files:\n    - \"*.log\"\n    - package-lock.json\n    - .DS_Store\n  extensions:\n    - .pyc\n    - .pyo\n    - .exe\n    - .jpg\n    - .png\n    - .pdf\n  patterns: []  # gitignore-style patterns\n\n# Intelligent autosave\nautosave:\n  enabled: false  # Set to true to enable\n  mode: hybrid    # timer | diff | hybrid (recommended)\n  \n  # Timer mode: fixed interval\n  timer:\n    interval: 300  # seconds (5 minutes)\n  \n  # Diff mode: threshold-based\n  diff_threshold:\n    threshold: 0.05          # Save if 5% of files changed\n    check_interval: 60       # Check every 60 seconds\n    ignore_whitespace: true\n    ignore_comments: false\n  \n  # Hybrid mode: combines timer + diff (RECOMMENDED)\n  hybrid:\n    min_interval: 180   # Minimum 3 minutes between saves\n    max_interval: 600   # Maximum 10 minutes between saves\n    threshold: 0.03     # Save if 3% of files changed\n  \n  # Retention policy\n  retention:\n    max_autosaves: 50         # Keep max 50 autosaves\n    compress_after_days: 7    # Compress after 7 days\n    delete_after_days: 30     # Delete after 30 days\n    keep_manual: true         # Always keep manual snapshots\n\n# Documentation output\noutput:\n  default_name: \"{project}_doc_{date}.md\"\n  include_tree: true\n  include_code: true\n  tree_full_code_select: false  # Full tree, selected code only\n  language_detection: true\n  max_file_size: 1000000  # 1 MB max per file\n\n# Diff output format\ndiff_format:\n  default: unified  # unified | json | ast\n  unified_context: 3\n  json_include_content: true\n  ast_enabled: false  # Experimental\n\n# Storage\nstorage_path: .gencodedoc\ncompression_enabled: true\ncompression_level: 3  # 1-22 (3 = good balance)\nQuick Config Commands\nBash\n\n# Enable autosave\ngencodedoc config set autosave.enabled true\ngencodedoc config set autosave.mode hybrid\n\n# Adjust autosave thresholds\ngencodedoc config set autosave.hybrid.min_interval 300\ngencodedoc config set autosave.hybrid.max_interval 1800\ngencodedoc config set autosave.hybrid.threshold 0.03\n\n# Add ignore rules\ngencodedoc config ignore --add-dir dist\ngencodedoc config ignore --add-ext .tmp\ngencodedoc config ignore --add-file debug.log\n🏗️ Architecture\ntext\n\n┌─────────────────────────────────────────────────────────────┐\n│                    GenCodeDoc System                        │\n└─────────────────────────────────────────────────────────────┘\n\n┌──────────────┐  ┌──────────────┐  ┌──────────────┐\n│  CLI (Typer) │  │ MCP stdio    │  │ MCP SSE/REST │\n│              │  │ (Gemini CLI) │  │ (Claude/Web) │\n└──────┬───────┘  └──────┬───────┘  └──────┬───────┘\n       │                 │                  │\n       └─────────────────┼──────────────────┘\n                         │\n              ┌──────────▼──────────┐\n              │   Core Managers     │\n              ├─────────────────────┤\n              │ • ConfigManager     │\n              │ • VersionManager    │\n              │ • DocGenerator      │\n              │ • AutosaveManager   │\n              └──────────┬──────────┘\n                         │\n         ┌───────────────┼───────────────┐\n         │               │               │\n    ┌────▼─────┐  ┌─────▼──────┐  ┌────▼──────┐\n    │ Scanner  │  │ Differ     │  │ Storage   │\n    │          │  │            │  │           │\n    │ • Scan   │  │ • Unified  │  │ • SQLite  │\n    │ • Filter │  │ • JSON     │  │ • zstd    │\n    │ • Detect │  │ • AST      │  │ • Dedup   │\n    └──────────┘  └────────────┘  └───────────┘\n\n┌─────────────────────────────────────────────────────────────┐\n│                   Storage Layer                             │\n├─────────────────────────────────────────────────────────────┤\n│  .gencodedoc/                                               │\n│  ├── gencodedoc.db        ← SQLite (metadata)               │\n│  │   ├── snapshots        ← Snapshot records                │\n│  │   ├── snapshot_files   ← File entries                    │\n│  │   ├── file_contents    ← Deduplicated content (SHA256)   │\n│  │   └── autosave_state   ← Autosave status                 │\n│  └── config/              ← Configuration files             │\n└─────────────────────────────────────────────────────────────┘\n\nKey Features:\n• 🔑 SHA256 deduplication → ~70% space savings\n• 🗜️ zstd compression → ~3x size reduction\n• 📊 Indexed SQLite → Fast queries\n• 🔄 Watchdog observer → Real-time file monitoring\nProject Structure\ntext\n\ngencodedoc/\n├── gencodedoc/              # Source code\n│   ├── cli/                # CLI commands (Typer)\n│   │   ├── main.py        # Entry point\n│   │   ├── snapshot_cmd.py\n│   │   ├── doc_cmd.py\n│   │   ├── config_cmd.py\n│   │   └── mcp_cmd.py\n│   ├── core/               # Business logic\n│   │   ├── config.py      # Configuration management\n│   │   ├── scanner.py     # File scanning & filtering\n│   │   ├── versioning.py  # Snapshot management\n│   │   ├── documentation.py\n│   │   ├── differ.py      # Version comparison\n│   │   └── autosave.py    # Intelligent autosave\n│   ├── mcp/                # MCP servers\n│   │   ├── server_stdio.py  # stdio transport\n│   │   ├── server_sse.py    # SSE transport\n│   │   ├── server.py        # REST transport\n│   │   └── tools.py         # Tool definitions\n│   ├── models/             # Data models (Pydantic)\n│   │   ├── config.py\n│   │   └── snapshot.py\n│   ├── storage/            # Storage & compression\n│   │   ├── database.py    # SQLite manager\n│   │   ├── snapshot_store.py\n│   │   └── compression.py # zstd compression\n│   └── utils/              # Utilities\n│       ├── filters.py\n│       ├── formatters.py\n│       └── tree.py\n├── config/                 # Configuration presets\n│   └── presets/\n│       ├── python.yaml\n│       ├── nodejs.yaml\n│       ├── go.yaml\n│       └── web.yaml\n├── tests/                  # Unit tests\n├── pyproject.toml         # Poetry config\n├── Makefile               # Dev commands\n└── README.md\n🔬 Advanced Features\n🎯 Intelligent Deduplication (~70% savings)\nGenCodeDoc uses SHA256-based deduplication:\n\n✅ Identical files across snapshots are stored once\n✅ Massive space savings (~70% on real projects)\n✅ zstd compression for ~3x additional reduction\n✅ Optimized SQLite with indexes\n\nExample: 10 snapshots of a 100 MB project\n\nWithout deduplication: 1 GB\nWith GenCodeDoc: ~300 MB (dedup + compression)\n🔄 Autosave Modes\nMode\tHow it works\tBest for\ntimer\tSave every X seconds\tContinuous development\ndiff\tSave when X% changed\tCritical projects\nhybrid ⭐\tMin/max interval + threshold\tGeneral use (recommended)\nHybrid mode example:\n\nYAML\n\nhybrid:\n  min_interval: 300   # Don`t save more often than 5 min\n  max_interval: 1800  # Force save after 30 min\n  threshold: 0.03     # OR if 3% of files changed\n📊 Diff Formats\nFormat\tDescription\tUse Case\nunified\tGit-style diff\tHuman reading\njson\tStructured data\tAutomation\nast\tSemantic diff\tCode analysis (experimental)\nBash\n\n# Unified diff (default)\ngencodedoc snapshot diff v1.0 v2.0\n\n# JSON for scripts\ngencodedoc snapshot diff v1.0 v2.0 --format json > changes.json\n\n# AST (semantic)\ngencodedoc snapshot diff v1.0 v2.0 --format ast\n🐛 Troubleshooting\nCommon Issues\n1️⃣ MCP Error: notifications/initialized\nSymptom: Error on MCP startup:\n\ntext\n\nMCP ERROR: Unknown method: notifications/initialized\nCause: MCP protocol sends notifications that older versions didn`t handle.\n\nSolution: ✅ Already fixed in current version. The server now silently ignores MCP notifications.\n\n2️⃣ Snapshots created in wrong location\nSymptom: All snapshots go to gencodedoc`s own directory instead of target project.\n\nCause: project_path not properly extracted from MCP tools/call parameters.\n\nSolution: ✅ Already fixed. The server now correctly extracts project_path from arguments.\n\nVerify fix:\n\nBash\n\n# This should create snapshot in /path/to/project, not gencodedoc\n/gencodedoc create_snapshot project_path=/path/to/project tag=test\n3️⃣ Zod validation errors (id=null)\nSymptom:\n\ntext\n\nError: Expected string or number, received null (path: [\"id\"])\nCause: JSON-RPC responses with \"id\": null instead of \"id\": 0.\n\nSolution: ✅ Already fixed. All error responses now use request_id or 0.\n\n4️⃣ Files not properly scanned\nSymptom: Snapshot shows wrong number of files or files from wrong directory.\n\nCause: snapshot_store.py used relative paths instead of absolute.\n\nSolution: ✅ Already fixed. SnapshotStore now receives and uses project_path for absolute file paths.\n\n5️⃣ DB not initialized\nSymptom:\n\ntext\n\nError: no such table: snapshots\nCause: Project not initialized before creating snapshot.\n\nSolution:\n\nBash\n\n# Always init first (creates tables)\ngencodedoc init --preset python\n\n# Or via MCP\n/gencodedoc init_project project_path=/path/to/project preset=python\n6️⃣ Autosave not starting\nSymptom: start_autosave tool doesn`t work.\n\nCause: Autosave requires the MCP server to remain running (it`s a background process).\n\nSolution:\n\nstdio mode: Server runs per-request → autosave stops when request ends\nSSE/REST mode: ✅ Server persistent → autosave works!\nRecommended: Use SSE/REST for autosave, stdio for one-off commands.\n\nDebug Mode\nBash\n\n# Enable verbose logging (if implemented)\nexport GENCODEDOC_DEBUG=1\npoetry run gencodedoc snapshot create --message \"test\"\n\n# Check SQLite DB directly\nsqlite3 /path/to/project/.gencodedoc/gencodedoc.db \".tables\"\nsqlite3 /path/to/project/.gencodedoc/gencodedoc.db \"SELECT * FROM snapshots;\"\n🧪 Testing\nBash\n\n# Run all tests\npoetry run pytest\n\n# With coverage\npoetry run pytest --cov=gencodedoc --cov-report=html\n\n# Specific tests\npoetry run pytest tests/test_scanner.py -v\npoetry run pytest tests/test_versioning.py -v\npoetry run pytest tests/test_mcp.py -v\n\n# Watch mode (requires pytest-watch)\npoetry run ptw\n🛠️ Development\nSetup Development Environment\nBash\n\n# Install with dev dependencies\npoetry install\n\n# Activate virtual environment\npoetry shell\n\n# Install pre-commit hooks (if configured)\npre-commit install\nMakefile Commands\nBash\n\nmake help            # Show all commands\nmake install         # Install dependencies\nmake test            # Run tests\nmake test-cov        # Tests with coverage\nmake lint            # Check code quality\nmake format          # Format code (Black)\nmake clean           # Remove temporary files\nmake docs            # Generate documentation\nmake serve-mcp-sse   # Start SSE server\nmake serve-mcp-stdio # Start stdio server\nmake all             # Lint + test + build\nCode Style\nFormatter: Black (line length 100)\nLinter: Ruff\nType hints: Enforced with Pydantic\nDocstrings: Google style\n🎯 Use Cases\n1️⃣ Continuous Documentation\nBash\n\n# Initialize with autosave\ngencodedoc init --preset python\ngencodedoc config set autosave.enabled true\ngencodedoc config set autosave.mode hybrid\n\n# Documentation is always up-to-date\ngencodedoc doc generate --output docs/API.md\n2️⃣ Safe Refactoring\nBash\n\n# Snapshot before critical changes\ngencodedoc snapshot create \\\n  --message \"Before refactoring authentication system\" \\\n  --tag before-refactor\n\n# ... make changes ...\n\n# Snapshot after\ngencodedoc snapshot create \\\n  --message \"After refactoring - tests passing\" \\\n  --tag after-refactor\n\n# Compare\ngencodedoc snapshot diff before-refactor after-refactor\n\n# Rollback if needed\ngencodedoc snapshot restore before-refactor --force\n3️⃣ Selective API Documentation\nBash\n\n# Document only specific modules\ngencodedoc doc generate \\\n  --include src/api/ \\\n  --include src/models/ \\\n  --include README.md \\\n  --output docs/API_Reference.md\n4️⃣ AI-Assisted Workflow (Gemini/Claude)\nBash\n\n# 1. Configure MCP (once)\n# Add gencodedoc to your AI assistant config\n\n# 2. Use natural language\n\"Create a snapshot with tag v2.0\"\n\"Compare v1.0 and v2.0\"\n\"Show me project statistics\"\n\"Start autosave in hybrid mode\"\n\"Generate complete documentation\"\n\n# AI automatically calls the right MCP tools! 🎉\n🌟 Roadmap\n Git integration (auto-snapshot on commit)\n Cloud backup (S3, GCS)\n Web UI dashboard\n AST-based semantic diff (full implementation)\n Multi-language presets (Rust, Java, C++)\n Snapshot encryption\n Collaborative features (shared snapshots)\n📄 License\nMIT License - See LICENSE file\n\n🤝 Contributing\nContributions welcome! 🎉\n\n🐛 Report bugs via GitHub Issues\n💡 Suggest features via Discussions\n🔧 Submit Pull Requests\nDevelopment workflow:\n\nFork the repo\nCreate a feature branch (git checkout -b feature/amazing)\nMake your changes\nRun tests (make test)\nSubmit PR\n📞 Support\n🐛 Issues: GitHub Issues\n💬 Discussions: GitHub Discussions\n🌐 Website: esprit-artificiel.com\n📧 Email: support@esprit-artificiel.com\n🙏 Acknowledgments\nBuilt with these amazing tools:\n\nFastAPI - MCP server framework\nPydantic - Data validation\nTyper - CLI framework\nRich - Terminal formatting\nzstandard - Compression\nWatchdog - File monitoring\nSQLite - Embedded database\n<div align=\"center\">\nMade with ❤️ for developers who love smart versioning and beautiful docs\n\n💡 Pro Tip: Use GenCodeDoc with Gemini CLI or Claude Desktop for AI-powered version control!\n\n⭐ Star this repo if you find it useful!\n\n</div> ```\n🎯 CHANGEMENTS PAR RAPPORT À L`ANCIEN\n✅ Ajouts majeurs\nBadges en haut (Python, Poetry, MCP, License, AI Ready)\nQuick Start ultra-visible avec 5 étapes\n17 outils MCP documentés avec tableau\nArchitecture ASCII complète\nTroubleshooting des 6 bugs qu`on a corrigés\nExemples d`usage AI concrets\nAutosave mieux expliqué (3 modes + tableau)\n3 transports clarifiés (stdio/SSE/REST)\nUse cases pratiques (4 scénarios réels)\nRoadmap pour le futur\n🎨 Améliorations visuelles\nEmojis cohérents partout\nTableaux pour comparaisons\nBlocs de code bien formatés\nSections claires avec séparateurs\nCall-to-action en footer\n📊 Mieux organisé\nQuick Start en premier (essentiel)\nFeatures avant installation\nMCP tools en section dédiée\nTroubleshooting complet\nDevelopment séparé\n",
  "bytes": 24203,
  "sha": "516182921d38a00aeba38f6467018593cb24c2928293b792a21eff3c9b659fa7",
  "repo_slug": "fkom13/gencodedoc",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_fkom13_gencodedoc_6b55f149/readme"
}