xai-review 0.17.0__tar.gz → 0.18.0__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.

Potentially problematic release.


This version of xai-review might be problematic. Click here for more details.

Files changed (186) hide show
  1. {xai_review-0.17.0 → xai_review-0.18.0}/PKG-INFO +26 -4
  2. {xai_review-0.17.0 → xai_review-0.18.0}/README.md +25 -3
  3. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/vcs/github/client.py +4 -0
  4. {xai_review-0.17.0 → xai_review-0.18.0}/pyproject.toml +1 -1
  5. {xai_review-0.17.0 → xai_review-0.18.0}/xai_review.egg-info/PKG-INFO +26 -4
  6. {xai_review-0.17.0 → xai_review-0.18.0}/LICENSE +0 -0
  7. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/__init__.py +0 -0
  8. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/cli/__init__.py +0 -0
  9. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/cli/commands/__init__.py +0 -0
  10. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/cli/commands/run_context_review.py +0 -0
  11. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/cli/commands/run_inline_review.py +0 -0
  12. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/cli/commands/run_review.py +0 -0
  13. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/cli/commands/run_summary_review.py +0 -0
  14. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/cli/main.py +0 -0
  15. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/__init__.py +0 -0
  16. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/claude/__init__.py +0 -0
  17. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/claude/client.py +0 -0
  18. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/claude/schema.py +0 -0
  19. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gemini/__init__.py +0 -0
  20. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gemini/client.py +0 -0
  21. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gemini/schema.py +0 -0
  22. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/github/__init__.py +0 -0
  23. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/github/client.py +0 -0
  24. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/github/pr/__init__.py +0 -0
  25. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/github/pr/client.py +0 -0
  26. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/github/pr/schema/__init__.py +0 -0
  27. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/github/pr/schema/comments.py +0 -0
  28. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/github/pr/schema/files.py +0 -0
  29. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/github/pr/schema/pull_request.py +0 -0
  30. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/github/pr/schema/reviews.py +0 -0
  31. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gitlab/__init__.py +0 -0
  32. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gitlab/client.py +0 -0
  33. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gitlab/mr/__init__.py +0 -0
  34. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gitlab/mr/client.py +0 -0
  35. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gitlab/mr/schema/__init__.py +0 -0
  36. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gitlab/mr/schema/changes.py +0 -0
  37. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gitlab/mr/schema/comments.py +0 -0
  38. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/gitlab/mr/schema/discussions.py +0 -0
  39. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/openai/__init__.py +0 -0
  40. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/openai/client.py +0 -0
  41. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/clients/openai/schema.py +0 -0
  42. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/config.py +0 -0
  43. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/__init__.py +0 -0
  44. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/asynchronous/__init__.py +0 -0
  45. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/asynchronous/gather.py +0 -0
  46. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/__init__.py +0 -0
  47. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/artifacts.py +0 -0
  48. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/base.py +0 -0
  49. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/claude.py +0 -0
  50. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/gemini.py +0 -0
  51. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/github.py +0 -0
  52. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/gitlab.py +0 -0
  53. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/http.py +0 -0
  54. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/llm.py +0 -0
  55. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/logger.py +0 -0
  56. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/openai.py +0 -0
  57. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/prompt.py +0 -0
  58. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/review.py +0 -0
  59. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/config/vcs.py +0 -0
  60. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/constants/__init__.py +0 -0
  61. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/constants/llm_provider.py +0 -0
  62. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/constants/vcs_provider.py +0 -0
  63. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/diff/__init__.py +0 -0
  64. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/diff/models.py +0 -0
  65. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/diff/parser.py +0 -0
  66. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/diff/tools.py +0 -0
  67. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/http/__init__.py +0 -0
  68. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/http/client.py +0 -0
  69. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/http/event_hooks/__init__.py +0 -0
  70. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/http/event_hooks/base.py +0 -0
  71. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/http/event_hooks/logger.py +0 -0
  72. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/http/handlers.py +0 -0
  73. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/http/transports/__init__.py +0 -0
  74. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/http/transports/retry.py +0 -0
  75. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/json.py +0 -0
  76. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/logger.py +0 -0
  77. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/resources.py +0 -0
  78. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/template/__init__.py +0 -0
  79. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/libs/template/render.py +0 -0
  80. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/prompts/__init__.py +0 -0
  81. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/prompts/default_context.md +0 -0
  82. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/prompts/default_inline.md +0 -0
  83. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/prompts/default_summary.md +0 -0
  84. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/prompts/default_system_context.md +0 -0
  85. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/prompts/default_system_inline.md +0 -0
  86. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/prompts/default_system_summary.md +0 -0
  87. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/resources/__init__.py +0 -0
  88. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/resources/pricing.yaml +0 -0
  89. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/__init__.py +0 -0
  90. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/artifacts/__init__.py +0 -0
  91. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/artifacts/schema.py +0 -0
  92. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/artifacts/service.py +0 -0
  93. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/artifacts/tools.py +0 -0
  94. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/cost/__init__.py +0 -0
  95. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/cost/schema.py +0 -0
  96. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/cost/service.py +0 -0
  97. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/diff/__init__.py +0 -0
  98. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/diff/renderers.py +0 -0
  99. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/diff/schema.py +0 -0
  100. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/diff/service.py +0 -0
  101. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/diff/tools.py +0 -0
  102. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/git/__init__.py +0 -0
  103. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/git/service.py +0 -0
  104. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/git/types.py +0 -0
  105. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/llm/__init__.py +0 -0
  106. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/llm/claude/__init__.py +0 -0
  107. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/llm/claude/client.py +0 -0
  108. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/llm/factory.py +0 -0
  109. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/llm/gemini/__init__.py +0 -0
  110. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/llm/gemini/client.py +0 -0
  111. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/llm/openai/__init__.py +0 -0
  112. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/llm/openai/client.py +0 -0
  113. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/llm/types.py +0 -0
  114. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/prompt/__init__.py +0 -0
  115. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/prompt/adapter.py +0 -0
  116. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/prompt/schema.py +0 -0
  117. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/prompt/service.py +0 -0
  118. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/prompt/tools.py +0 -0
  119. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/review/__init__.py +0 -0
  120. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/review/inline/__init__.py +0 -0
  121. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/review/inline/schema.py +0 -0
  122. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/review/inline/service.py +0 -0
  123. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/review/policy/__init__.py +0 -0
  124. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/review/policy/service.py +0 -0
  125. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/review/service.py +0 -0
  126. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/review/summary/__init__.py +0 -0
  127. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/review/summary/schema.py +0 -0
  128. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/review/summary/service.py +0 -0
  129. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/vcs/__init__.py +0 -0
  130. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/vcs/factory.py +0 -0
  131. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/vcs/github/__init__.py +0 -0
  132. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/vcs/gitlab/__init__.py +0 -0
  133. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/vcs/gitlab/client.py +0 -0
  134. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/services/vcs/types.py +0 -0
  135. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/__init__.py +0 -0
  136. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/fixtures/__init__.py +0 -0
  137. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/fixtures/git.py +0 -0
  138. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/__init__.py +0 -0
  139. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/__init__.py +0 -0
  140. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/claude/__init__.py +0 -0
  141. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/claude/test_client.py +0 -0
  142. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/claude/test_schema.py +0 -0
  143. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/gemini/__init__.py +0 -0
  144. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/gemini/test_client.py +0 -0
  145. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/gemini/test_schema.py +0 -0
  146. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/github/__init__.py +0 -0
  147. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/github/test_client.py +0 -0
  148. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/gitlab/__init__.py +0 -0
  149. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/gitlab/test_client.py +0 -0
  150. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/openai/__init__.py +0 -0
  151. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/openai/test_client.py +0 -0
  152. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/clients/openai/test_schema.py +0 -0
  153. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/libs/__init__.py +0 -0
  154. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/libs/config/__init__.py +0 -0
  155. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/libs/config/test_prompt.py +0 -0
  156. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/libs/diff/__init__.py +0 -0
  157. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/libs/diff/test_models.py +0 -0
  158. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/libs/diff/test_parser.py +0 -0
  159. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/libs/diff/test_tools.py +0 -0
  160. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/libs/template/__init__.py +0 -0
  161. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/libs/template/test_render.py +0 -0
  162. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/libs/test_json.py +0 -0
  163. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/__init__.py +0 -0
  164. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/diff/__init__.py +0 -0
  165. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/diff/test_renderers.py +0 -0
  166. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/diff/test_service.py +0 -0
  167. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/diff/test_tools.py +0 -0
  168. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/prompt/__init__.py +0 -0
  169. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/prompt/test_schema.py +0 -0
  170. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/prompt/test_service.py +0 -0
  171. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/prompt/test_tools.py +0 -0
  172. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/review/__init__.py +0 -0
  173. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/review/inline/__init__.py +0 -0
  174. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/review/inline/test_schema.py +0 -0
  175. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/review/inline/test_service.py +0 -0
  176. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/review/policy/__init__.py +0 -0
  177. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/review/policy/test_service.py +0 -0
  178. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/review/summary/__init__.py +0 -0
  179. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/review/summary/test_schema.py +0 -0
  180. {xai_review-0.17.0 → xai_review-0.18.0}/ai_review/tests/suites/services/review/summary/test_service.py +0 -0
  181. {xai_review-0.17.0 → xai_review-0.18.0}/setup.cfg +0 -0
  182. {xai_review-0.17.0 → xai_review-0.18.0}/xai_review.egg-info/SOURCES.txt +0 -0
  183. {xai_review-0.17.0 → xai_review-0.18.0}/xai_review.egg-info/dependency_links.txt +0 -0
  184. {xai_review-0.17.0 → xai_review-0.18.0}/xai_review.egg-info/entry_points.txt +0 -0
  185. {xai_review-0.17.0 → xai_review-0.18.0}/xai_review.egg-info/requires.txt +0 -0
  186. {xai_review-0.17.0 → xai_review-0.18.0}/xai_review.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: xai-review
3
- Version: 0.17.0
3
+ Version: 0.18.0
4
4
  Summary: AI-powered code review tool
5
5
  Author-email: Nikita Filonov <nikita.filonov@example.com>
6
6
  Maintainer-email: Nikita Filonov <nikita.filonov@example.com>
@@ -39,6 +39,7 @@ _Made with ❤️ by [@NikitaFilonov](https://t.me/sound_right)_
39
39
  ## 📑 Table of Contents
40
40
 
41
41
  - ✨ [About](#-about)
42
+ - 🧪 [Live Preview](#-live-preview)
42
43
  - 🚀 [Quick Start](#-quick-start)
43
44
  - ⚙️ [️CI/CD Integration](#-cicd-integration)
44
45
  - 🚀 [GitHub Actions](#-github-actions)
@@ -67,6 +68,27 @@ final decision to human reviewers.
67
68
 
68
69
  ---
69
70
 
71
+ ## 🧪 Live Preview
72
+
73
+ Curious how **AI Review** works in practice? Here are three real Pull Requests reviewed entirely by the tool — one per
74
+ mode:
75
+
76
+ | Mode | Description | Live Example |
77
+ |------------|----------------------------------------------------|-------------------------------------------------------------------------------|
78
+ | 🧩 Inline | Adds line-by-line comments directly in the diff | [Try AI Review (inline)](https://github.com/Nikita-Filonov/ai-review/pull/4) |
79
+ | 📄 Summary | Posts a concise summary review with key highlights | [Try AI Review (context)](https://github.com/Nikita-Filonov/ai-review/pull/5) |
80
+ | 🧠 Context | Performs broader analysis across multiple files | [Try AI Review (summary)](https://github.com/Nikita-Filonov/ai-review/pull/6) |
81
+
82
+ Each review was generated automatically via GitHub Actions using the corresponding mode:
83
+
84
+ ```bash
85
+ ai-review run-inline
86
+ ai-review run-summary
87
+ ai-review run-context
88
+ ```
89
+
90
+ ---
91
+
70
92
  ## 🚀 Quick Start
71
93
 
72
94
  Install via **pip**:
@@ -120,8 +142,8 @@ vcs:
120
142
  > **Note:** Running `ai-review run` executes the full review (inline + summary).
121
143
  > To run only one mode, use the dedicated subcommands:
122
144
  > - ai-review run-inline
123
- > - ai-review run-summary
124
145
  > - ai-review run-context
146
+ > - ai-review run-summary
125
147
 
126
148
  ---
127
149
 
@@ -132,7 +154,7 @@ Key things you can customize:
132
154
 
133
155
  - **LLM provider** — OpenAI, Gemini, or Claude
134
156
  - **Model settings** — model name, temperature, max tokens
135
- - **VCS integration** — GitLab (currently supported) with project/MR context
157
+ - **VCS integration** — works out of the box with **GitLab** and **GitHub**.
136
158
  - **Review policy** — which files to include/exclude, review modes
137
159
  - **Prompts** — inline/context/summary prompt templates
138
160
 
@@ -170,7 +192,7 @@ jobs:
170
192
  runs-on: ubuntu-latest
171
193
  steps:
172
194
  - uses: actions/checkout@v4
173
- - uses: Nikita-Filonov/ai-review@v0.17.0
195
+ - uses: Nikita-Filonov/ai-review@v0.18.0
174
196
  with:
175
197
  review-command: ${{ inputs.review-command }}
176
198
  env:
@@ -15,6 +15,7 @@ _Made with ❤️ by [@NikitaFilonov](https://t.me/sound_right)_
15
15
  ## 📑 Table of Contents
16
16
 
17
17
  - ✨ [About](#-about)
18
+ - 🧪 [Live Preview](#-live-preview)
18
19
  - 🚀 [Quick Start](#-quick-start)
19
20
  - ⚙️ [️CI/CD Integration](#-cicd-integration)
20
21
  - 🚀 [GitHub Actions](#-github-actions)
@@ -43,6 +44,27 @@ final decision to human reviewers.
43
44
 
44
45
  ---
45
46
 
47
+ ## 🧪 Live Preview
48
+
49
+ Curious how **AI Review** works in practice? Here are three real Pull Requests reviewed entirely by the tool — one per
50
+ mode:
51
+
52
+ | Mode | Description | Live Example |
53
+ |------------|----------------------------------------------------|-------------------------------------------------------------------------------|
54
+ | 🧩 Inline | Adds line-by-line comments directly in the diff | [Try AI Review (inline)](https://github.com/Nikita-Filonov/ai-review/pull/4) |
55
+ | 📄 Summary | Posts a concise summary review with key highlights | [Try AI Review (context)](https://github.com/Nikita-Filonov/ai-review/pull/5) |
56
+ | 🧠 Context | Performs broader analysis across multiple files | [Try AI Review (summary)](https://github.com/Nikita-Filonov/ai-review/pull/6) |
57
+
58
+ Each review was generated automatically via GitHub Actions using the corresponding mode:
59
+
60
+ ```bash
61
+ ai-review run-inline
62
+ ai-review run-summary
63
+ ai-review run-context
64
+ ```
65
+
66
+ ---
67
+
46
68
  ## 🚀 Quick Start
47
69
 
48
70
  Install via **pip**:
@@ -96,8 +118,8 @@ vcs:
96
118
  > **Note:** Running `ai-review run` executes the full review (inline + summary).
97
119
  > To run only one mode, use the dedicated subcommands:
98
120
  > - ai-review run-inline
99
- > - ai-review run-summary
100
121
  > - ai-review run-context
122
+ > - ai-review run-summary
101
123
 
102
124
  ---
103
125
 
@@ -108,7 +130,7 @@ Key things you can customize:
108
130
 
109
131
  - **LLM provider** — OpenAI, Gemini, or Claude
110
132
  - **Model settings** — model name, temperature, max tokens
111
- - **VCS integration** — GitLab (currently supported) with project/MR context
133
+ - **VCS integration** — works out of the box with **GitLab** and **GitHub**.
112
134
  - **Review policy** — which files to include/exclude, review modes
113
135
  - **Prompts** — inline/context/summary prompt templates
114
136
 
@@ -146,7 +168,7 @@ jobs:
146
168
  runs-on: ubuntu-latest
147
169
  steps:
148
170
  - uses: actions/checkout@v4
149
- - uses: Nikita-Filonov/ai-review@v0.17.0
171
+ - uses: Nikita-Filonov/ai-review@v0.18.0
150
172
  with:
151
173
  review-command: ${{ inputs.review-command }}
152
174
  env:
@@ -124,6 +124,10 @@ class GitHubVCSClient(VCSClient):
124
124
 
125
125
  async def create_discussion(self, file: str, line: int, message: str) -> None:
126
126
  try:
127
+ logger.info(
128
+ f"Posting inline comment in {self.owner}/{self.repo}#{self.pull_number} at {file}:{line}: {message}"
129
+ )
130
+
127
131
  pr = await self.http_client.pr.get_pull_request(
128
132
  owner=self.owner, repo=self.repo, pull_number=self.pull_number
129
133
  )
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
5
5
  [project]
6
6
  name = "xai-review"
7
7
  readme = "README.md"
8
- version = "0.17.0"
8
+ version = "0.18.0"
9
9
  license = { text = "Apache-2.0" }
10
10
  authors = [
11
11
  { name = "Nikita Filonov", email = "nikita.filonov@example.com" }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: xai-review
3
- Version: 0.17.0
3
+ Version: 0.18.0
4
4
  Summary: AI-powered code review tool
5
5
  Author-email: Nikita Filonov <nikita.filonov@example.com>
6
6
  Maintainer-email: Nikita Filonov <nikita.filonov@example.com>
@@ -39,6 +39,7 @@ _Made with ❤️ by [@NikitaFilonov](https://t.me/sound_right)_
39
39
  ## 📑 Table of Contents
40
40
 
41
41
  - ✨ [About](#-about)
42
+ - 🧪 [Live Preview](#-live-preview)
42
43
  - 🚀 [Quick Start](#-quick-start)
43
44
  - ⚙️ [️CI/CD Integration](#-cicd-integration)
44
45
  - 🚀 [GitHub Actions](#-github-actions)
@@ -67,6 +68,27 @@ final decision to human reviewers.
67
68
 
68
69
  ---
69
70
 
71
+ ## 🧪 Live Preview
72
+
73
+ Curious how **AI Review** works in practice? Here are three real Pull Requests reviewed entirely by the tool — one per
74
+ mode:
75
+
76
+ | Mode | Description | Live Example |
77
+ |------------|----------------------------------------------------|-------------------------------------------------------------------------------|
78
+ | 🧩 Inline | Adds line-by-line comments directly in the diff | [Try AI Review (inline)](https://github.com/Nikita-Filonov/ai-review/pull/4) |
79
+ | 📄 Summary | Posts a concise summary review with key highlights | [Try AI Review (context)](https://github.com/Nikita-Filonov/ai-review/pull/5) |
80
+ | 🧠 Context | Performs broader analysis across multiple files | [Try AI Review (summary)](https://github.com/Nikita-Filonov/ai-review/pull/6) |
81
+
82
+ Each review was generated automatically via GitHub Actions using the corresponding mode:
83
+
84
+ ```bash
85
+ ai-review run-inline
86
+ ai-review run-summary
87
+ ai-review run-context
88
+ ```
89
+
90
+ ---
91
+
70
92
  ## 🚀 Quick Start
71
93
 
72
94
  Install via **pip**:
@@ -120,8 +142,8 @@ vcs:
120
142
  > **Note:** Running `ai-review run` executes the full review (inline + summary).
121
143
  > To run only one mode, use the dedicated subcommands:
122
144
  > - ai-review run-inline
123
- > - ai-review run-summary
124
145
  > - ai-review run-context
146
+ > - ai-review run-summary
125
147
 
126
148
  ---
127
149
 
@@ -132,7 +154,7 @@ Key things you can customize:
132
154
 
133
155
  - **LLM provider** — OpenAI, Gemini, or Claude
134
156
  - **Model settings** — model name, temperature, max tokens
135
- - **VCS integration** — GitLab (currently supported) with project/MR context
157
+ - **VCS integration** — works out of the box with **GitLab** and **GitHub**.
136
158
  - **Review policy** — which files to include/exclude, review modes
137
159
  - **Prompts** — inline/context/summary prompt templates
138
160
 
@@ -170,7 +192,7 @@ jobs:
170
192
  runs-on: ubuntu-latest
171
193
  steps:
172
194
  - uses: actions/checkout@v4
173
- - uses: Nikita-Filonov/ai-review@v0.17.0
195
+ - uses: Nikita-Filonov/ai-review@v0.18.0
174
196
  with:
175
197
  review-command: ${{ inputs.review-command }}
176
198
  env:
File without changes
File without changes