# Changelog

## 0.2.0 (2026-07-12)

### pygittools

- Add `pgt`, a terminal user interface for browsing repos, staging changes, and committing.
- Persist commit message drafts across sessions.
- Add tab navigation on the main page, input context handling to avoid key conflicts, and a basic log page.
- Add `pgt tags sync` to synchronize annotated task tags.
- Add a task MCP server (`pygittools-mcp`) for agent integration.
- Show task IDs on the task board.

### pygitweb

- Implement Git smart HTTP for clone and push over HTTP.
- Add per-project read/write permissions, enabling private repositories.
- Harden board creation and comment modification routes.
- Restrict the `/_internal/notify` hook route to localhost connections only.
- Add a shutdown option on the settings page.
- Add tag and commit search in the task UI.
- Fix merge request opener when not explicitly configured in project settings.

### Tests and docs

- Fix hook listing and OAuth callback tests; mock Git signatures in tests for fresh Git installs.
- Add smart HTTP clone/push test coverage including WebSocket upgrade.

## 0.1.0

Initial PyPI release of pygitweb and pygittools.