Immutable
release. Only release title and notes can be modified.
Note
v0.40.0 isn't on PyPI yet. We're working on getting it published and will update this note as soon as it lands. In the meantime, pip install pr-agent==0.40.0 won't resolve — use one of these instead:
Docker — images for 0.40.0 are available now:
docker pull pragent/pr-agent:0.40.0 # CLI
docker pull pragent/pr-agent:0.40.0-github_app # per-target images use the same -<target> suffixInstall from source at the tag:
pip install "git+https://github.com/The-PR-Agent/pr-agent.git@v0.40.0"This installs the v0.40.0 code, though it currently self-reports 0.39.0.
Or stay on pr-agent==0.39.0 until we confirm here that 0.40.0 is available.
What's Changed
🚀 Features
- feat(config): update default model to OpenAI's GPT-5.6 by @PeterDaveHello in #2535
- Add OpenAI's GPT-5.6 model support by @PeterDaveHello in #2517
- Add support for Gemini 3.6 models by @takotakot in #2538
- feat: persistent inline comments to prevent cross-run duplicates by @IsmaelMartinez in #2424
- feat(openrouter): add provider routing and reasoning controls by @FabrizioCafolla in #2518
- feat(providers): add tokenless diff provider by @vectorkovacspeter in #2467
- feat: support CI artifact context injection and workflow_run trigger by @MahmoudHaouachi in #2494
🐛 Bug Fixes
- fix(gerrit): prevent path traversal in publish_code_suggestions by @gvago in #2314
- fix(litellm): flush deferred callbacks before the event loop closes by @naorpeled in #2551
- fix(litellm): stop the placeholder key from shadowing provider env vars by @naorpeled in #2548
- fix(servers): cap gunicorn workers and preload the app to stop OOMKills by @naorpeled in #2550
- fix(gitlab): preserve user-added labels by @ashearin in #2484
- fix(litellm): raise on empty content from non-streaming models by @AmirF194 in #2542
- fix(gitlab): allow overriding is_bot_user indicators by @ashearin in #2528
- fix(local): return language names from get_languages() by @naorpeled in #2519
- Honor reasoning_effort for Gemini 2.5 (and provider-prefixed reasoning models) by @mpj in #2520
- AI: fix(gitea): allow description updates without titles by @brlin-tw in #2526
📚 Documentation
- docs(tools): add consolidated usage examples for all tools by @naorpeled in #2547
- docs: Fix Dockerfile path in gitea installation instructions by @brlin-tw in #2524
- docs: add pull_request_target guide for fork contribution support by @utsab345 in #2501
🧹 Maintenance
- chore(deps): Upgrade LiteLLM to the latest stable v1.93.0 by @PeterDaveHello in #2546
- test(github): fix build-and-test failure from _dedup_code_fp payload key by @naorpeled in #2549
Full Changelog: v0.39.0...v0.40.0