Commit Graph

950 Commits

Author SHA1 Message Date
dknedlik
d9b5c77dd8 Update conf/custom_models.json
Updating per code review comments.

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-08-21 14:44:54 -05:00
David Knedlik
4930824052 feat: Add comprehensive GPT-5 series model support
- Add GPT-5, GPT-5-mini, and GPT-5-nano models to unified configuration
- Implement proper thinking mode support via dynamic capability checking
- Add OpenAI provider model enumeration methods for registry integration
- Update tests to cover all GPT-5 models and their aliases
- Fix critical bug where thinking mode was hardcoded instead of using model capabilities

Breaking Changes:
- None (backward compatible)

New Models Available:
- gpt-5 (400K context, 128K output, reasoning support)
- gpt-5-mini (400K context, 128K output, efficient variant)
- gpt-5-nano (400K context, fastest/cheapest variant)

Aliases:
- gpt5, gpt5-mini, gpt5mini, gpt5-nano, gpt5nano, nano

All models support:
- Extended thinking mode (reasoning tokens)
- Vision capabilities
- JSON mode
- Function calling

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-21 14:27:00 -05:00
github-actions[bot]
12542054a2 chore: sync version to config.py [skip ci] 2025-08-21 10:05:20 +00:00
semantic-release
eedd9dd437 chore(release): 5.9.0
Automatically generated by python-semantic-release
2025-08-21 10:05:14 +00:00
Fahad
80d21e57c0 feat: refactored and improved codereview in line with precommit. Reviews are now either external (default) or internal. Takes away anxiety and loss of tokens when Claude incorrectly decides to be 'confident' about its own changes and bungle things up.
fix: Minor tweaks to prompts
fix: Improved support for smaller models that struggle with strict structured JSON output
Rearranged reasons to use the MCP above quick start (collapsed)
2025-08-21 14:04:32 +04:00
Fahad
d30c212029 refactor: minor prompt tweaks 2025-08-21 12:23:13 +04:00
Fahad
90821b51ff docs: update instructions for precommit 2025-08-20 16:34:08 +04:00
semantic-release
1542fd3dac chore(release): 5.8.6
Automatically generated by python-semantic-release
2025-08-20 12:29:41 +00:00
Fahad
1c973afb00 fix: escape backslashes in TOML regex pattern
Fixed TOML decode error in pyproject.toml version_pattern field
2025-08-20 16:28:43 +04:00
Fahad
340b58f2e7 fix: restore proper version 5.8.6
Correcting version from semantic-release auto-update back to proper 5.8.6
2025-08-20 16:26:46 +04:00
Fahad
90a4195381 fix: establish version 5.8.6 and add version sync automation
- Set version to 5.8.6 in pyproject.toml to match config.py
- Add automatic version sync script for GitHub Actions
- Configure semantic-release for proper version tracking
- Ensure __updated__ field auto-updates with each release
2025-08-20 16:26:16 +04:00
github-actions[bot]
4f82f65005 chore: sync version to config.py [skip ci] 2025-08-20 12:23:50 +00:00
semantic-release
284352baa8 chore(release): 1.1.0
Automatically generated by python-semantic-release
2025-08-20 12:23:45 +00:00
Fahad
2966dcf268 feat: improvements to precommit
fix: version
2025-08-20 16:22:52 +04:00
Fahad
77e8ed1a9f Further improvements to precommit to ensure required steps are followed precisely 2025-08-20 16:08:22 +04:00
Fahad
7100d8567e Removed test files 2025-08-20 15:19:11 +04:00
Fahad
57200a8a2e Precommit updated to always perform external analysis (via _other_ model) unless specified not to. This prevents Claude from being overconfident and inadequately performing subpar precommit checks.
Improved precommit continuations to be immediate
Workflow state restoration added between stateless calls
Fixed incorrect token limit check
2025-08-20 15:19:01 +04:00
Fahad
0af9202012 Precommit updated to take always prefer external analysis (via _other_ model) unless specified not to. This prevents Claude from being overconfident and inadequately performing subpar precommit checks. 2025-08-20 11:55:40 +04:00
Fahad
00f944e6f9 Added recommendation 2025-08-20 09:12:22 +04:00
Fahad
266b93d0de Cleanup 2025-08-20 06:03:43 +01:00
Beehive Innovations
9504fc4209 Merge pull request #235 from shaunbuswell/pre-commit-fixes
worktree gitignore
2025-08-20 08:37:30 +04:00
semantic-release
f9c1ab4205 chore(release): 1.0.0
Automatically generated by python-semantic-release
2025-08-20 04:37:06 +00:00
Beehive Innovations
027c734c64 Merge pull request #217 from svnlto/main
feat: streamline GitHub Actions workflows and improve contributor experience
2025-08-20 08:36:21 +04:00
Beehive Innovations
a4e31e25e9 Merge pull request #234 from spotty118/update-opus-4.1
feat: Update Claude models to Opus 4.1 and Sonnet 4.1
2025-08-20 08:32:29 +04:00
Beehive Innovations
f94d1419a6 Merge pull request #230 from svnlto/docs/clean-refactor
docs: comprehensive documentation refactor and model updates
2025-08-20 08:30:42 +04:00
ElevanaLtd
3d8893235a update gitignore 2025-08-17 23:49:54 +01:00
ElevanaLtd
08be82cc35 worktree gitignore 2025-08-17 23:48:26 +01:00
google-labs-jules[bot]
0959d6f0fa feat: Update Claude models to Opus 4.1 and Sonnet 4.1
This commit updates all references to Claude Opus 4 and Sonnet 4 to their newer 4.1 versions throughout the codebase.

The changes include:
- Updating model names in `conf/custom_models.json` and `providers/dial.py`.
- Updating aliases and descriptions to match the new model versions.
- Updating `.env.example` to reflect the new model names.
- Updating all relevant test suites to use the new model names and ensure all tests pass.
2025-08-17 16:08:52 +00:00
Sven Lito
9f5c77fbad fix: align PR template with actual semantic-release and Docker workflows
The PR template was outdated and misaligned with the actual workflow behavior
introduced in PR #217. Key fixes:

- **Semantic Release**: Now matches pyproject.toml configuration
  - feat → MINOR, fix/perf → PATCH (not refactor)
  - Added missing 'build' type from allowed_tags
  - Fixed breaking change syntax (feat\!, BREAKING CHANGE: in body)
  - Removed incorrect 'breaking:' prefix format

- **Docker Builds**: Clarified independence from versioning
  - Builds trigger on file changes (Python, Docker files)
  - Manual triggering via 'docker-build' label
  - Removed misleading 'trigger Docker build + version bump' claims

- **Conventional Commits**: Added link to official specification

The template now accurately reflects the semantic-release config and
docker-pr.yml workflow implementation, preventing contributor confusion.
2025-08-12 15:20:34 +07:00
Sven Lito
392c22ef06 docs: add PATH environment variable to uvx configuration
Address gemini-code-assist bot feedback by adding explicit PATH
environment variable to ensure uvx-executed scripts can find
necessary executables regardless of inherited environment.

Maintains simplified 'command: uvx' while adding execution robustness.
2025-08-12 15:12:16 +07:00
Sven Lito
b9a4db1352 Update docs/advanced-usage.md
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-08-12 15:08:21 +07:00
Sven Lito
c2c6d5aa4d Update README.md
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-08-12 15:08:12 +07:00
Sven Lito
3c80850d8a chore: remove obsolete scripts directory
The manual version bumping script (scripts/bump_version.py) is now obsolete
since PR #217 introduced semantic-release automation for version management.

- Removed scripts/ directory and bump_version.py script
- Updated .dockerignore to remove reference to deleted script

Semantic versioning is now handled automatically by GitHub Actions workflows
using conventional commits and semantic-release tooling.
2025-08-12 14:59:17 +07:00
Sven Lito
a204bda25d docs: remove backup files from cherry-pick 2025-08-12 14:47:35 +07:00
Sven Lito
80ac32038e docs: major README refactor and comprehensive documentation improvements
README improvements:
- Reduce README from 725 to 169 lines (77% reduction)
- Focus on quick start and essential information
- Link to detailed docs instead of duplicating content
- Improve scannability with clear sections and emojis
- Add concise tool categorization and workflows

Documentation structure:
- Create comprehensive getting-started.md guide
- Move detailed setup instructions from README
- Include troubleshooting, configuration templates
- Add step-by-step installation for all methods

Benefits:
- Faster onboarding for new users
- Progressive disclosure of information
- Better GitHub discovery experience
- Maintainable documentation structure
- Clear separation of concerns

The README now serves as an effective landing page while the
detailed documentation provides comprehensive guidance.
2025-08-12 14:47:14 +07:00
Sven Lito
a0fbc078e8 docs: update model references and add missing GPT-5 and Gemini 2.0 models
- Add missing models to all tool parameter documentation
- Update model table in advanced-usage.md with GPT-5 series
- Add Gemini 2.0 Flash and Flash Lite models
- Include detailed capabilities for each model variant
- Fix model parameter consistency across all tool docs

Models added:
- GPT-5 (gpt5): Advanced reasoning with 400K context
- GPT-5 Mini (gpt5-mini): Efficient variant
- GPT-5 Nano (gpt5-nano): Fast, low-cost variant
- Gemini 2.0 Flash (flash-2.0): Audio/video support
- Gemini 2.0 Flash Lite (flashlite): Text-only lightweight
2025-08-12 14:47:06 +07:00
Sven Lito
ab397d7b6a fix: remove fork PR comment step due to permission restrictions
Fork PRs cannot write comments due to security restrictions.
Job summary provides build status information instead.
2025-08-12 14:08:43 +07:00
Sven Lito
31585b3bfa feat: streamline docker-pr workflow with label support
- Add docker-build label triggering for manual builds
- Use sticky comments for cleaner PR feedback
- Streamlined job conditions and messaging
- Consistent with improved workflow design
2025-08-12 14:05:09 +07:00
Sven Lito
1d1cd44a42 rename: auto-version.yml → docker-pr.yml for clarity
- Reflects actual functionality (Docker PR builds)
- Consistent with improved workflow naming
2025-08-12 14:00:09 +07:00
Sven Lito
ce2e15e406 fix: handle fork PR permissions in Docker workflow
- Only push to registry for internal PRs (same repository)
- Build-only for fork PRs to test Docker compatibility
- Separate comments and summaries for different PR types
- Fixes permission issues with fork contributions
2025-08-12 13:58:46 +07:00
Sven Lito
22f729a150 Merge branch 'main' of https://github.com/BeehiveInnovations/zen-mcp-server 2025-08-12 13:27:29 +07:00
Beehive Innovations
e6213d4ca1 Merge pull request #227 from svnlto/fix/uvx-resource-packaging
fix: uvx resource packaging issues for OpenRouter functionality
2025-08-11 12:31:49 -07:00
Sven Lito
db07fa4651 Apply Black formatting to fix CI formatting check 2025-08-10 22:21:16 +07:00
Sven Lito
673d78be6d Fix failing tests and exclude .zen_venv from linting
- Fix test_resource_loading_success by removing outdated mock targeting non-existent 'files' import
- Simplify resource loading test to validate registry functionality directly
- Add .zen_venv exclusion to ruff and black in code_quality_checks.sh
- All tests now passing (793/793) with clean linting
2025-08-10 22:18:08 +07:00
Sven Lito
5e599b9e7d Complete PR review feedback implementation with clean importlib.resources approach
- Remove redundant path checks between Path("conf/custom_models.json") and Path.cwd() variants
- Implement proper importlib.resources.files('conf') approach for robust packaging
- Create conf/__init__.py to make conf a proper Python package
- Update pyproject.toml to include conf* in package discovery
- Clean up verbose comments and simplify resource loading logic
- Fix test mocking to use correct importlib.resources.files target
- All tests passing (8/8) with proper resource and fallback functionality

Addresses all gemini-code-assist bot feedback from PR #227
2025-08-10 22:13:25 +07:00
Sven Lito
84de9b026f Address PR review feedback: Implement proper importlib.resources approach
Improvements based on gemini-code-assist bot feedback:

1. **Proper importlib.resources implementation:**
   - Use files("providers") / "../conf/custom_models.json" for resource loading
   - Prioritize resource loading over file system paths for packaged environments
   - Maintain backward compatibility with explicit config paths and env variables

2. **Remove redundant path checks:**
   - Eliminated duplicate Path("conf/custom_models.json") and Path.cwd() / "conf/custom_models.json"
   - Streamlined fallback logic to development path + working directory only

3. **Enhanced test coverage:**
   - Mock-based testing of actual fallback scenarios with Path.exists
   - Proper resource loading simulation and failure testing
   - Comprehensive coverage of both resource and file system modes

4. **Robust error handling:**
   - Graceful fallback from resources to file system when resource loading fails
   - Clear logging of which loading method is being used
   - Better error messages indicating resource vs file system loading

The implementation now follows Python packaging best practices using importlib.resources
while maintaining full backward compatibility and robust fallback behavior.

Tested: All 8 test cases pass, resource loading works in development,
file system fallback works when resources fail.
2025-08-10 21:36:40 +07:00
Sven Lito
5565f59a1c Fix uvx resource packaging issues for OpenRouter functionality
Resolves issues #203, #186, #206, #185 where OpenRouter model registry
completely failed to load in uvx installations due to inaccessible
conf/custom_models.json file.

Changes:
- Implement multiple path resolution strategy in OpenRouterModelRegistry
  - Development: Path(__file__).parent.parent / "conf" / "custom_models.json"
  - UVX working dir: Path("conf/custom_models.json")
  - Current working dir: Path.cwd() / "conf" / "custom_models.json"
- Add importlib-resources fallback for Python < 3.9 compatibility
- Add comprehensive test suite for path resolution scenarios
- Ensure graceful handling when config files are missing

The fix restores full OpenRouter functionality (15 models, 62+ aliases)
for users installing via uvx while maintaining backward compatibility
for development and explicit config scenarios.

Tested: All path resolution scenarios pass, OpenRouter models load correctly
2025-08-10 21:27:48 +07:00
Beehive Innovations
123851d50a Merge pull request #222 from svnlto/fix/pip-detection-clean
fix: pip detection inconsistency in non-interactive shells
2025-08-09 12:09:50 -07:00
Sven Lito
ee520825b4 fix: address PR review feedback on test quality
- Remove broken test with unused mock parameter
- Replace placeholder test with actual validation of diagnostic messages
- Remove unused imports (MagicMock, patch)
- Fix whitespace and formatting issues
- Ensure all 6 tests pass with meaningful assertions

Addresses high-priority feedback from PR review comments.
2025-08-08 23:58:19 +07:00
Sven Lito
8c38ef44b5 test: remove empty placeholder test cases
Remove 7 empty test methods that contained only 'pass' statements:
- TestPipDetectionPlatformCompatibility (4 methods)
- TestPipDetectionRegression (3 methods)

Keep working tests that have actual logic and assertions.
2025-08-08 23:53:48 +07:00