Skip to content

v0.6.1 — fix apps 404

Choose a tag to compare

@sandraschi sandraschi released this 04 Sep 21:03
· 71 commits to master since this release

[0.6.1] — 2026-09-04

Fixed

  • apps virtualization-mcp 404: _find_starts_for_id now tries *-mcp stripped id for mcd/starts/*-start.bat + repo/start.ps1|bat (fixes ~108 fleet ids: virtualization-mcp→virtualization, kyutai-mcp→kyutai …) and alias mcp-central-docs/starts/virtualization-mcp-start.bat
  • apps headless Tauri handling: brought_to_foreground with alive:false (e.g. virtualization-mcp :10700 no Vite web UI) now shows toast Tauri window brought to front — no web UI instead of window.open to dead port → 404; else/catch headless branches show No web UI — headless MCP/Tauri app. Use its winapp via Starts or: uv run <id> instead of blind open

[0.6.0] — 2026-09-04

Added

  • github_ops 58→61: stars_summary, stars_per_repo, stars_history (bucket trajectory via starred_at header, 591 received vs 183 given fix)
  • Web /stars page: KPIs, distribution, per-repo lookup, leaderboard + amber/sky SVG trajectory
  • Web /ci now shows success and failed stats: 5 tiles (Success/Failed/Cancelled/In progress/Total) + success rate, Failed only filter, help text for fixing broken CI (emails stop when green)
  • Web /apps health-first: card/list toggle, sort (port/name/recent), category filter, Tauri badge, GH link, enriched pyproject descriptions
  • Web /chat single-column, dropdown examples; /discovery with 5 presets; /breakfast beforeunload + depot; /help expanded
  • Dashboard densified: 6 KPIs, stars glance, quick actions; layout fixes (w-56 sidebar, min-h-screen, scrollbar)
  • Fleet collision warnings: Tauri native/src/backend.rs health reuse + Invoke-FleetWebappStart.ps1 / FleetStartMode.ps1 R7 warnings

Fixed

  • native/src/backend.rs BACKEND_PORT 10702→10713, is_port_in_use / is_backend_healthy, Tauri reuses healthy dev backend with dialog
  • web/src/index.css dark theme bg + scrollbar visibility, removed light-mode invert
  • start.ps1 instacrash when git-github-mcp.exe holds 10713 — now warns + taskkill guidance

[Unreleased] — 2026-07-29

Fixed

  • @tauri-apps/api added to web/package.json dependencies (Tauri event listener was silently failing)
  • transport.py run_http_async() replaced with uvicorn.Server + CORS middleware (was dropping CORS in CLI --http mode)
  • use-zoom.ts dev-browser fallback now uses CSS zoom instead of silent no-op
  • Settings page stale hardcoded values replaced with dynamic API data (version, op counts)
  • utils/response.py error_response() now auto-logs with logger.exception()
  • .bak files untracked from git index
  • .gitignore covers reports/, .bak-

Added

  • .github/workflows/ci.yml ruff/pytest CI workflow
  • .github/copilot-instructions.md session context injection for GitHub Copilot

Changelog

All notable changes to this project will be documented in this file.

[Unreleased]

Added

  • depth parameter on git_core — Shallow clone support via --depth N. Pass depth=1
    for large repos (linux kernel, vscode etc.) to fetch only the current tree, completing in
    seconds rather than timing out.
  • Context-aware clone timeout error — When clone times out, returns a specific message
    explaining the cause and suggesting depth=1 with a ready-to-run PowerShell fallback.

Fixed

  • Clone/push/pull/fetch killed by 25s MCP wrapper — server.py had a blanket
    asyncio.wait_for(timeout=25) around all git operations. Network ops now get 180s;
    local ops retain 25s. The inner _run_git_async subprocess timeout for clone (120s)
    now actually gets a chance to fire.

Files Changed

  • src/git_github_mcp/server.py
  • src/git_github_mcp/tools/git_ops.py

git_ops (43 ops → 1 huge tool) replaced with 4 focused tools:

  • git_core (11 ops): status, log, diff, show, init, clone, add, commit, push, pull, fetch
  • git_branch (14 ops): branch lifecycle, merge, rebase, stash, tag
  • git_admin (16 ops): remote, reset, revert, cherry-pick, clean, submodule, bisect, worktree
  • git_blame (1 op): file blame with optional commit ref
  • Dual transport: Server runs stdio AND HTTP bridge (port 10713) simultaneously
  • REST API: /health, /api/git, /api/github, /api/tools, /api/status
  • Conversational error returns: All tool handlers use success_response/error_response with recovery_options and suggested_fixes
  • MCP HTTP mount: mcp.http_app() mounted at /mcp for streamable HTTP clients

Fixed

  • Git subprocess hang on Windows: _run_git now uses shell=True + cmd.exe wrapper to bypass potential Windows Job Object limits imposed by Electron/Node.js MCP hosts
  • Server-side timeout: _run_git_tool wraps asyncio.to_thread with asyncio.wait_for(timeout=25) to catch hangs before the MCP client timeout fires
  • Hardcoded git path: _GIT_EXE hardcoded to C:\Program Files\Git\bin\git.exe — avoids PATH resolution issues in MCP child processes
  • Entry point: __init__.py exports main from server.py; __main__.py delegates to server.main()

Changed

  • Environment cleanup: _git_env() stripped GIT_CONFIG_NOSYSTEM and hardcoded config paths — uses same _no_prompt_env() as github_ops
  • -C flag: Git working directory set via git -C <path> instead of subprocess.run(cwd=...) to avoid lpCurrentDirectory issues
  • Removed CREATE_NO_WINDOW: Swapped for shell=True in _run_git to escape job object constraints
  • Ruff clean: 0 lint errors across all source files

[0.4.0] - 2026-04-06

Added

  • Automatic gh Discovery: Hardened Windows path discovery for gh.exe in C:\Program Files\GitHub CLI and scoop shims.
  • Environment Resilience: Server now functions correctly even if the system PATH is missing key CLI tools (gh, just, winget).

Changed

  • FastMCP 3.2.0: Upgraded core framework to latest SOTA for improved tool registry performance and tool-calling reliability.
  • Dependency Refresh: Updated project metadata and core dependencies.

[0.3.0] - 2025-03-19

  • Initial FastMCP 3.1 implementation.
  • Support for 100+ Git and GitHub operations.