gitpr-cli 0.0.33__tar.gz → 0.0.34__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. {gitpr_cli-0.0.33/gitpr_cli.egg-info → gitpr_cli-0.0.34}/PKG-INFO +20 -1
  2. gitpr_cli-0.0.33/PKG-INFO → gitpr_cli-0.0.34/README.md +438 -438
  3. gitpr_cli-0.0.33/README.md → gitpr_cli-0.0.34/gitpr_cli.egg-info/PKG-INFO +457 -419
  4. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/gitpr_cli.egg-info/SOURCES.txt +1 -0
  5. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/config.py +48 -22
  6. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/core.py +190 -25
  7. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/main.py +160 -40
  8. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/mcp_server.py +109 -2
  9. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/ui/pr_publish_app.py +4 -4
  10. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/updater.py +2 -2
  11. gitpr_cli-0.0.34/tests/test_core.py +254 -0
  12. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_mcp_server.py +63 -0
  13. gitpr_cli-0.0.34/tests/test_plugins.py +297 -0
  14. gitpr_cli-0.0.33/tests/test_core.py +0 -29
  15. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/LICENSE +0 -0
  16. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/gitpr_cli.egg-info/dependency_links.txt +0 -0
  17. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/gitpr_cli.egg-info/entry_points.txt +0 -0
  18. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/gitpr_cli.egg-info/requires.txt +0 -0
  19. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/gitpr_cli.egg-info/top_level.txt +0 -0
  20. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/pyproject.toml +0 -0
  21. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/setup.cfg +0 -0
  22. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/__init__.py +0 -0
  23. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/ai_providers.py +0 -0
  24. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/blame_engine.py +0 -0
  25. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/cache.py +0 -0
  26. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/chat_memory.py +0 -0
  27. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/github_api.py +0 -0
  28. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/i18n.py +0 -0
  29. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/issue_engine.py +0 -0
  30. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/linter_engine.py +0 -0
  31. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/metrics.py +0 -0
  32. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/security.py +0 -0
  33. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/spinner.py +0 -0
  34. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/tui_issue.py +0 -0
  35. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/ui/__init__.py +0 -0
  36. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/ui/chat_app.py +0 -0
  37. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/ui/help_screen.py +0 -0
  38. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/ui/issue_app.py +0 -0
  39. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/ui/metrics_app.py +0 -0
  40. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/src/ui/pr_publish_help.py +0 -0
  41. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_blame_metrics.py +0 -0
  42. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_chat_backend.py +0 -0
  43. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_install_wizard.py +0 -0
  44. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_linter_metrics.py +0 -0
  45. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_mcp_prompts.py +0 -0
  46. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_metrics.py +0 -0
  47. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_pre_save.py +0 -0
  48. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_skill_command.py +0 -0
  49. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_smart_excludes.py +0 -0
  50. {gitpr_cli-0.0.33 → gitpr_cli-0.0.34}/tests/test_thinking_words.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: gitpr-cli
3
- Version: 0.0.33
3
+ Version: 0.0.34
4
4
  Summary: AI-powered PR automation, commit messages, and code review (Gemini, DeepSeek, and Ollama)
5
5
  Author-email: Natan Fiuza <contato@natanfiuza.dev.br>
6
6
  Requires-Python: >=3.10
@@ -162,7 +162,10 @@ You can pass the following *flags* for specific actions:
162
162
  * `--lang <code>`: Forces the interface language for this execution (e.g.: `en_us`, `pt_br`). Overrides `GITPR_LANG` in `.env` without persisting the change.
163
163
  * `-ch` or `--chat`: Opens the **Interactive Pair Programming Chat** — a TUI terminal where the AI sees your current diff and maintains a contextual conversation. Features memory per branch, slash commands (`/explain`, `/tests`, `/optimize`, `/clear`), auto-patching (F5), diff refresh (F2), and session export (F6).
164
164
  * `-l` or `--linter`: Runs **only the local static linter** (no AI calls). Ideal for use in CI/CD pipelines to block non-compliant code.
165
+ * `--status`: Lists uncommitted file changes categorized as **new**, **modified**, and **deleted** — fast, no AI, no network. 📖 [Full docs](https://github.com/natanfiuza/gitpr/blob/main/docs/git-status.md)
166
+ * `--no-unstaged-check`: Skips the unstaged files verification before AI processing for a single invocation. Equivalent to `GITPR_SKIP_UNSTAGED_CHECK=true` for one run. 📖 [Full docs](https://github.com/natanfiuza/gitpr/blob/main/docs/git-status.md)
165
167
  * `--mcp`: Starts GitPR as an **MCP server** (Model Context Protocol) on stdio transport. Enables integration with VS Code, Cursor, Claude Desktop, and other MCP-compatible editors — exposing all GitPR AI capabilities as 10 annotated tools, 15 resources, and 7 pre-built prompts directly inside your IDE. Also available as the standalone `gitpr-mcp` command.
168
+ * `--plugins`: Lists all **globally installed plugins** — custom linter packs from `~/.gitpr/plugins/linter/` and MCP prompt templates from `~/.gitpr/plugins/prompts/`. These plugins apply across all your projects without duplication. 📖 [Full docs](https://github.com/natanfiuza/gitpr/blob/main/docs/plugins-system.md)
166
169
  * `--install`: **Interactive Setup Wizard.** Runs a guided 4-step setup: downloads skill templates, installs Git hooks, configures MCP for detected editors, and checks/requests your AI provider API key. Each step asks for confirmation before proceeding.
167
170
  * `-ih` or `--installhooks`: Automatically installs **local Git Hooks** (`pre-commit` and `prepare-commit-msg`) in your repository.
168
171
  * `-s` or `--skill`: Creates the AI context template files (`.gitpr.commit.md`, `.gitpr.pr.md`, `.gitpr.review.md`, `.gitpr.filereview.md`, `.gitpr.issue.md`, `.gitpr.blame.md`) and the Linter (`.gitpr.linter.yml`) at the project root.
@@ -340,6 +343,22 @@ GitPR automatically removes non-code files from your `git diff` before sending t
340
343
  - ✅ **Higher-quality analysis** — AI focuses on code changes, not markup
341
344
  - ✅ **Zero configuration** — works automatically on every run, managed remotely
342
345
 
346
+ **Project-local configuration:** Each project can define extra exclusions at `.gitpr/conf/gitpr.smart-excludes.json`. The file is auto-seeded on first run and merged with the global list at runtime:
347
+
348
+ ```json
349
+ {
350
+ "_comment": "Project-specific Smart Excludes.",
351
+ "excludes": [
352
+ "dist/",
353
+ "*.pyc",
354
+ "build/",
355
+ "node_modules/"
356
+ ]
357
+ }
358
+ ```
359
+
360
+ Add framework-specific build artifacts, generated folders, or any pattern that only applies to this project. The file is safe to commit — your team gets the same exclusions.
361
+
343
362
  > 📖 **Full documentation:** [docs/smart-excludes.md](https://github.com/natanfiuza/gitpr/blob/main/docs/smart-excludes.md) — available in 5 languages (EN, PT-BR, PT-PT, FR, ES).
344
363
 
345
364
  ## 📁 Output Directory Structure