Skip to content

feat: add Z.AI GLM-5 model to custom provider#410

Closed
jukasdrj wants to merge 34 commits intoBeehiveInnovations:mainfrom
jukasdrj:claude/wizardly-hellman
Closed

feat: add Z.AI GLM-5 model to custom provider#410
jukasdrj wants to merge 34 commits intoBeehiveInnovations:mainfrom
jukasdrj:claude/wizardly-hellman

Conversation

@jukasdrj
Copy link
Copy Markdown

@jukasdrj jukasdrj commented Mar 6, 2026

Summary

  • Replace llama3.2 placeholder in conf/custom_models.json with Z.AI GLM-5 from the z.ai Coding Plan
  • GLM-5 configured with 205K context, 128K max output, vision, function calling, JSON mode, and chain-of-thought reasoning
  • Accessible via aliases: glm5, glm, zai, z.ai, zhipu

Test plan

  • Verify conf/custom_models.json parses as valid JSON
  • Confirm GLM-5 appears in model listing when CUSTOM_API_URL is set to https://api.z.ai/api/coding/paas/v4
  • Test a chat call with glm5 alias routes to the Custom provider

🤖 Generated with Claude Code

jukasdrj and others added 30 commits November 14, 2025 02:23
- Added sync_openrouter_models.py script to fetch latest models from OpenRouter API
- Updated openrouter_models.json with 299 models from 49 providers
- Added comprehensive documentation in docs/openrouter_sync.md
- Updated model configs for Gemini, OpenAI, and X.AI providers
- Includes intelligent scoring and filtering for high-quality models

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

Co-Authored-By: Claude <noreply@anthropic.com>
Installed universal agents from bookstrack-backend:
- project-manager (orchestrator)
- zen-mcp-master (Zen MCP tools integration)

Created MCP-specific agent:
- mcp-dev-agent (TypeScript, MCP protocol, npm)
- pre-commit hook (TypeScript, ESLint, MCP schema validation)

Features:
- TypeScript development workflows
- MCP protocol compliance checking
- npm package management
- Integration testing support

Next steps:
1. Customize mcp-dev-agent for specific workflows
2. Update project-manager delegation targets
3. Test agent invocation with /skill commands

Synced from: bookstrack-backend
Framework: ROBIT (Robit Orchestration Bot Integration Technology)
…cements

- Add .robit/ directory with 4,167 lines of AI-optimized documentation
  - Core docs: README, context, patterns, architecture (with 12 detailed ADRs)
  - 4 prompt templates for common tasks
  - 4 reference guides (MCP, Python async, Pydantic, testing)
  - 3 workflow processes
- Add GitHub Copilot instructions for improved AI assistance
- Add Dependabot configuration for automated dependency updates (silent mode)
- Fix bug report template API key requirements (now requires only one provider)
- Document Morph MCP filesystem tools integration
- Remove iOS/Swift references from legacy template
- Remove Cursor references (no longer supported)

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

Co-Authored-By: Claude <noreply@anthropic.com>
Add comprehensive hook system that parses JSON from stdin:
- PreToolUse: blocks sensitive files, dangerous commands, warns about secrets
- PostToolUse: validates Python syntax, logs tool executions
- UserPromptSubmit: checks git status for uncommitted changes

Configured hooks for Write, Edit, MCP filesystem tools, and Bash commands.

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

Co-Authored-By: Claude <noreply@anthropic.com>
Updated model configurations to reflect the current available models from
Google Gemini API and X.AI API as of January 2025.

Gemini models added:
- gemini-2.5-flash - Best price-performance model with thinking mode
- gemini-2.5-flash-lite - Fastest, most cost-efficient flash model
- gemini-2.5-flash-image - Image generation model
- gemini-2.0-flash - Previous generation flash model
- gemini-2.0-flash-lite - Previous generation lite model

Gemini models updated:
- gemini-2.5-pro - Updated intelligence score (100) and description
- gemini-2.5-pro-computer-use - Updated intelligence score (100) and description
- gemini-2.5-flash-preview-09-2025 - Updated intelligence score (95)

X.AI models updated:
- grok-4 - Added max_thinking_tokens, updated intelligence score (100)
- grok-4-heavy - Added max_thinking_tokens, updated intelligence score (100)
- grok-4-fast-reasoning - Added max_thinking_tokens, updated intelligence score (96)
- grok-code-fast-1 - Added max_thinking_tokens, updated intelligence score (95)

All models now include proper thinking token limits, allow_code_generation
flags, and updated descriptions reflecting their latest capabilities.

Test updates:
- Updated test_auto_mode_comprehensive.py to reflect new model selection
  behavior based on alphabetical sorting when intelligence scores are equal

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

Co-Authored-By: Claude <noreply@anthropic.com>
Updated CLAUDE.md with references to shared cross-project knowledge base
at ~/.claude/knowledge-base/.

Zen MCP Server can now reference patterns from other projects:
- Zero Warnings Policy (adapted for Python/Ruff linting)
- API Orchestration (MCP server is an orchestrator)

This project can contribute future patterns:
- MCP server architecture patterns
- Multi-model orchestration
- Python async patterns

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

Co-Authored-By: Claude <noreply@anthropic.com>
Removed conf/cli_clients/codex.json as Codex CLI support is no longer needed.
Gemini and Claude CLI configurations remain active.

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

Co-Authored-By: Claude <noreply@anthropic.com>
Replace all legacy Grok models with the latest grok-4-1-fast-non-reasoning:
- Latest model from X.AI (Nov 2025)
- Best pricing: $0.20/$0.50 per M tokens (vs $3/$15 for grok-4)
- Larger context: 2M tokens (vs 256K for grok-4)
- Faster responses: non-reasoning variant for instant results
- All aliases (grok, grokfast, grokcode, etc.) now point to this single model

Changes:
- conf/xai_models.json: Single model configuration with all aliases
- providers/xai.py: Simplified model selection logic
- tests/test_auto_mode_comprehensive.py: Updated expected model
- tests/test_xai_provider.py: Complete rewrite with 17 passing tests

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

Co-Authored-By: Claude <noreply@anthropic.com>
- Update hook scripts to use git root for LOG_DIR instead of hardcoded paths
- Update settings.json with current user paths
- Improves portability when cloning repository to different machines

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

Co-Authored-By: Claude <noreply@anthropic.com>
- Updated model configurations for Gemini, OpenAI, and OpenRouter providers
- Updated test expectations for auto mode comprehensive tests
- Synced with upstream v9.4.1
- Add grok-code-fast-1 model configuration with specialized coding capabilities
- Add Codex CLI client configuration with default and planner roles
- Reorganize Grok model aliases for better clarity
- Configure Codex system prompts for CLI agent operations

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

Co-Authored-By: Claude <noreply@anthropic.com>
Major changes:
- Rebranding from "zen-mcp-server" to "pal-mcp-server"
- Renamed executable from zen-mcp-server to pal-mcp-server
- Updated virtual environment name from .zen_venv to .pal_venv
- Added SECURITY.md
- Documentation cleanup and updates

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Update expected model names from grok-4/grok-3-fast to grok-4-1-fast-non-reasoning
- Fix grokcode alias to resolve to grok-code-fast-1 (separate code model)
- Update codex CLI config_args to include 'exec' prefix

All 849 tests now passing.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Automatically generated by python-semantic-release
Merged upstream changes including:
- GPT-5.2 support
- Grok-4.1 support
- Claude Opus 4.5 via OpenRouter
- Security fixes for path traversal
- Native Claude CLI detection
- OpenRouter store parameter fix

Local additions preserved:
- grok-code-fast-1 model (specialized coding model)
- grok-4-1-fast-non-reasoning model (cost-effective fast model)
- codex CLI exec subcommand configuration

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add x-ai/grok-3-fast (code-optimized)
- Add mistralai/codestral-2501 (256K context)
- Add qwen/qwen3-coder-plus and qwen3-coder-480b-a35b
- Add kwaipilot/kat-coder-pro-v1

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add gemini-3-flash-preview (200K context, aliases: flash3, flash-3, gemini3-flash)
- Keep gemini-2.5-flash (1M context, aliases: flash, flash2.5)
- Add gemini-2.5-flash-lite (1M context, aliases: flashlite, flash-lite, lite)
- Remove deprecated gemini-2.0-flash and gemini-2.0-flash-lite
- Update tests for new model selection preferences

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Resolved conflicts by preserving local development work (v9.8.2) while
integrating remote version structure. Local branch contains substantial
feature development including Gemini Flash updates, security fixes,
and model support improvements that supersede the remote v1.0.0 release.

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

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
Automatically generated by python-semantic-release
Updated xAI and Gemini model configurations based on latest API documentation:

xAI Changes:
- Removed: grok-3, grok-4, grok-4-heavy, grok-4-1-fast-reasoning
- Kept: grok-4-1-fast-non-reasoning, grok-code-fast-1
- Redistributed all aliases to remaining models for backwards compatibility
- Updated intelligence scores and descriptions

Gemini Changes:
- Removed: gemini-2.0-flash, gemini-2.0-flash-lite, gemini-2.5-flash-lite, gemini-2.5-pro
- Kept: gemini-3-pro, gemini-3-flash, gemini-2.5-flash
- Upgraded preview models to stable versions
- Consolidated aliases from removed models
- Updated intelligence scores and feature descriptions

Benefits:
- Simplified model selection (2 xAI + 3 Gemini models)
- All existing aliases preserved for backwards compatibility
- Latest stable models with accurate capabilities
- Optimized intelligence scores for auto-mode selection

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

Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
- Add root-level CONTRIBUTING.md for better GitHub visibility
- Expose architecture documentation to docs/architecture.md
- Add strict docstring enforcement guidelines with examples
- Include Google-style docstring requirements for all contributions

Resolves documentation review recommendations for improved
contributor experience and project maintainability.

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Updated gemini.json to explicitly use --model gemini-3-pro
- Disabled codex.json and claude.json CLI configurations
- Updated clink documentation to reflect Gemini-only configuration
- Updated tests to expect only Gemini CLI

This ensures clink will never call OpenAI or Codex CLIs, only
using Gemini CLI with the latest Pro model.

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Remove --model gemini-3-pro flag from gemini.json configuration
- Gemini 3 models are listed but not yet accessible via API
- Auto mode intelligently selects best available model
- Resolves "Requested entity was not found" error
- Update documentation to reflect auto mode behavior
- Update tests to match new configuration

When Gemini 3 becomes available, auto mode will automatically
use it without requiring configuration changes.

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
When a conversation is continued, the system now validates that the model
from the previous turn is still available before reusing it. This prevents
errors when old conversations reference outdated model names (e.g., grok-2-1212).

Changes:
- Added model validation in reconstruct_thread_context() before reusing
  models from previous conversation turns
- Falls back gracefully to valid models when previous model is unavailable
- Logs helpful debug messages when models are no longer available
- Maintains backward compatibility for valid models

Fixes error: "Model 'grok-2-1212' is not available with current API keys"

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Fixed 403/404 errors by updating all Gemini model names to use correct
API identifiers. Gemini 3.x models require `-preview` suffix.

Changes:
- Update conf/gemini_models.json with correct model names
  - gemini-3-pro → gemini-3-pro-preview
  - gemini-3-flash → gemini-3-flash-preview
  - Add gemini-2.5-pro and gemini-2.5-flash-lite
  - Remove deprecated Gemini 2.0 models
  - Add -latest aliases for stable models

- Update all documentation (7 files)
  - README.md: Update recommended AI stack references
  - docs/configuration.md: Update Gemini models table
  - docs/custom_models.md: Clarify native vs OpenRouter models
  - docs/model_ranking.md: Update intelligence scoring
  - docs/gemini-setup.md: Add model list and troubleshooting
  - docs/troubleshooting.md: Add 403/404 error guidance
  - CHANGELOG.md: Document all changes

- Update test files (6 files) to use correct model names

All models validated through:
- Direct Gemini API
- Gemini CLI
- PAL MCP server integration

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
jukasdrj and others added 4 commits January 7, 2026 15:13
Updated X.AI provider to use the current available Grok models after
old models (grok-4, grok-2-1212, grok-4-1-fast-reasoning) were
deprecated by X.AI.

Changes:
- PRIMARY_MODEL: grok-4-1-fast-reasoning → grok-4-1-fast-non-reasoning
- FALLBACK_MODEL: grok-4 → grok-code-fast-1

Updated all test expectations to match new model names. Old model
names remain as aliases for backward compatibility.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Added missing 'grok-4-1-fast' alias (with dashes) to complement the existing
'grok-4.1-fast' alias (with dot). Both variations now correctly resolve to
'grok-4-1-fast-non-reasoning' model.

This resolves model selection errors when users specify 'grok-4-1-fast'
format instead of 'grok-4.1-fast'.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Add plansDirectory setting to .claude/settings.json
- Create .claude/plans/ directory structure
- Add comprehensive README.md with MCP-specific planning patterns
  - Tool development workflows (schema design, validation, testing)
  - Provider integration patterns (config, adapters, error handling)
  - Protocol enhancement planning (MCP spec compliance, capabilities)
- Add SETUP.md with native planning-with-files workflow guide
  - Example workflows for tools, providers, and bug investigations
  - MCP-specific best practices and patterns
  - Integration with git and documentation
- Update .gitignore to exclude working plan files (task_plan.md, findings.md, progress.md)
- Native planning mode only (no plugin required)

Planning documentation tailored for PAL MCP Server development:
- Multi-model orchestration workflows
- MCP protocol compliance patterns
- Tool schema design and validation
- Provider integration and testing
- CLI-to-CLI bridging considerations
Replace llama3.2 placeholder with GLM-5 from Z.AI's coding plan.
GLM-5 offers 205K context, 128K max output, vision, function calling,
JSON mode, and chain-of-thought reasoning via OpenAI-compatible API.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly upgrades the project's AI development infrastructure by integrating a powerful new model and establishing a robust, AI-centric documentation and agent framework. It streamlines development workflows through automated hooks, refines model management, and enhances the overall developer experience by providing comprehensive guides and clear contribution standards.

Highlights

  • New Z.AI GLM-5 Model Integration: The Z.AI GLM-5 model has been added to the custom provider configuration, replacing a placeholder. This model features a 205K context window, 128K max output, vision capabilities, function calling, JSON mode, and chain-of-thought reasoning, accessible via multiple aliases.
  • Comprehensive AI Development Environment Setup: An extensive suite of AI-optimized documentation and configuration files has been introduced under the .claude/ and .robit/ directories. This includes detailed agent architectures, sharing frameworks, coding patterns, debugging guides, and prompt templates designed for AI assistants like Claude Code and GitHub Copilot.
  • Enhanced Tooling and Hooks: New pre-tool-use, post-tool-use, pre-commit, and user-prompt-submit hooks have been added to automate checks, validate code, log activity, and provide user feedback. These hooks enhance security, code quality, and developer workflow.
  • Updated Model Configurations and Management: Gemini and X.AI (Grok) model configurations have been updated to reflect the latest preview and stable models, including new aliases and intelligence scores. A new script for syncing OpenRouter models has been added, and the conversation memory now validates model availability from previous turns.
  • Streamlined Contribution and Documentation: New CONTRIBUTING.md and docs/architecture.md files, along with updated CHANGELOG.md and docs/contributions.md, provide clearer guidelines for project contributions, including strict docstring requirements and architectural decisions.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • .claude/README.md
    • Added new documentation for Claude Code Agent Setup, detailing universal and MCP-specific agents.
  • .claude/ROBIT_OPTIMIZATION.md
    • Added documentation outlining the optimized Claude Code agent architecture with a 3-agent delegation hierarchy.
  • .claude/ROBIT_SHARING_FRAMEWORK.md
    • Added a framework for sharing Claude Code agent setups across different repositories, including automation strategies.
  • .claude/hooks/post-tool-use.sh
    • Added a new bash script for post-tool-use hooks, including Python file validation and command logging.
  • .claude/hooks/pre-commit.sh
    • Added a new bash script for pre-commit hooks, enforcing code quality checks and sensitive file detection.
  • .claude/hooks/pre-tool-use.sh
    • Added a new bash script for pre-tool-use hooks, blocking sensitive file writes and dangerous commands.
  • .claude/hooks/test-hook.txt
    • Added a test file to verify the functionality of the newly introduced hooks.
  • .claude/hooks/user-prompt-submit.sh
    • Added a new bash script for user-prompt-submit hooks, logging submissions and warning about uncommitted files.
  • .claude/plans/README.md
    • Added documentation for the PAL MCP Planning Directory, detailing planning context and structure.
  • .claude/plans/SETUP.md
    • Added documentation explaining the planning-with-files workflow for PAL MCP development.
  • .claude/settings.json
    • Updated to include plansDirectory and configurations for PreToolUse, PostToolUse, and UserPromptSubmit hooks.
  • .claude/skills/mcp-dev-agent/skill.md
    • Added a new skill definition for the 'MCP Development Agent', outlining its responsibilities and commands.
  • .claude/skills/project-manager/skill.md
    • Added a new skill definition for the 'BooksTrack Project Manager', detailing its orchestration and delegation patterns.
  • .claude/skills/zen-mcp-master/skill.md
    • Added a new skill definition for the 'Zen MCP Master Agent', outlining its tool selection and workflow patterns.
  • .github/ISSUE_TEMPLATE/bug_report.yml
    • Updated the bug report template to consolidate API key configuration checks.
  • .github/copilot-instructions.md
    • Added instructions for GitHub Copilot, covering project overview, critical rules, and code patterns.
  • .github/dependabot.yml
    • Added Dependabot configuration for automated dependency updates for Python and GitHub Actions.
  • .gitignore
    • Modified to include new entries for planning workflow files.
  • .robit/README.md
    • Added an overview of the Zen MCP Server AI Development Configuration, detailing its purpose and structure.
  • .robit/SETUP_COMPLETE.md
    • Added a document confirming the completion of the .robit/ setup and its contents.
  • .robit/architecture.md
    • Added detailed documentation on the Zen MCP Server Architecture, including design goals and Architectural Decision Records (ADRs).
  • .robit/context.md
    • Added essential codebase context for AI assistants, covering project overview, tools, and critical rules.
  • .robit/patterns.md
    • Added code standards, patterns, and anti-patterns for Zen MCP Server, enforced for AI assistants.
  • .robit/prompts/adding-provider.md
    • Added a prompt template for adding new AI providers to the server.
  • .robit/prompts/adding-tool.md
    • Added a prompt template for adding new tools to the server.
  • .robit/prompts/code-review.md
    • Added a prompt template for systematic code reviews by AI assistants.
  • .robit/prompts/debug-guide.md
    • Added a prompt template for a systematic debugging guide for server issues.
  • .robit/reference/mcp-protocol.md
    • Added a reference guide for MCP Protocol Essentials.
  • .robit/reference/pydantic-models.md
    • Added a reference guide for Pydantic Request/Response Patterns.
  • .robit/reference/python-async.md
    • Added a reference guide for Python Async/Await Best Practices.
  • .robit/reference/testing-guide.md
    • Added a reference guide for the three-tier testing strategy.
  • .robit/workflows/adding-features.md
    • Added a workflow guide for feature development.
  • .robit/workflows/provider-debugging.md
    • Added a workflow guide for provider debugging.
  • .robit/workflows/testing-changes.md
    • Added a workflow guide for comprehensive testing of code changes.
  • CHANGELOG.md
    • Updated with an 'Unreleased' section for Gemini model documentation updates.
  • CONTRIBUTING.md
    • Added quick links and essential commands for contributing, including PR title format and core requirements.
  • README.md
    • Updated model recommendations for Claude Code and Codex users to reflect 'Gemini 3.0 Pro Preview'.
  • conf/cli_clients/claude.json
    • Renamed to claude.json.disabled to disable the Claude CLI client configuration.
  • conf/cli_clients/codex.json
    • Renamed to codex.json.disabled to disable the Codex CLI client configuration and updated its arguments and prompt paths.
  • conf/custom_models.json
    • Modified to replace the llama3.2 model entry with the new Z.AI GLM-5 model, including its capabilities and aliases.
  • conf/gemini_models.json
    • Modified Gemini model configurations, updating preview models, aliases, intelligence scores, and adding stable gemini-2.5 models.
  • conf/openrouter_models.json
    • Modified to add several new coding-focused models from xAI, Mistral, Qwen, and Kwaipilot, with updated capabilities and scores.
  • conf/xai_models.json
    • Modified X.AI Grok model configurations, updating primary and fallback models, aliases, and capabilities.
  • config.py
    • Updated the project version from '9.8.2' to '1.1.0' and the last updated date.
  • docs/architecture.md
    • Added detailed documentation on the Zen MCP Server Architecture, including design goals and Architectural Decision Records (ADRs).
  • docs/configuration.md
    • Updated the table of available Gemini models and aliases to reflect new gemini-3 and gemini-2.5 models.
  • docs/contributions.md
    • Modified to add strict docstring requirements and examples for functions, classes, and modules.
  • docs/custom_models.md
    • Modified OpenRouter model table for Gemini entries and added a note about native Gemini API preview models.
  • docs/gemini-setup.md
    • Modified to remove a previous note, add a new section on available Gemini models, and include troubleshooting for 403/404 errors.
  • docs/model_ranking.md
    • Modified the intelligence ranking table to include new Gemini preview models and update existing Gemini model references.
  • docs/openrouter_sync.md
    • Added documentation for the scripts/sync_openrouter_models.py script, detailing its functionality and usage.
  • docs/tools/clink.md
    • Modified to reflect that only Gemini CLI is enabled by default and updated caution notes.
  • docs/tools/listmodels.md
    • Modified the example output for Gemini models to reflect gemini-3-pro and gemini-3-flash.
  • docs/troubleshooting.md
    • Modified to add a new section for Gemini 403/404 errors with troubleshooting steps.
  • providers/xai.py
    • Modified PRIMARY_MODEL and FALLBACK_MODEL to reflect new X.AI Grok model names.
  • pyproject.toml
    • Updated the project version from '9.8.2' to '1.1.0'.
  • scripts/sync_openrouter_models.py
    • Added a new Python script to fetch and update OpenRouter models from their live API.
  • server.py
    • Modified reconstruct_thread_context to validate the availability of models from previous turns in conversation history.
  • simulator_tests/test_secaudit_validation.py
    • Modified several test cases to use the 'flash-lite' alias instead of 'gemini-2.0-flash-lite'.
  • systemprompts/clink/codex_default.txt
    • Added a new system prompt for the Codex CLI agent.
  • systemprompts/clink/codex_planner.txt
    • Added a new system prompt for the Codex CLI planning agent.
  • tests/test_alias_target_restrictions.py
    • Modified alias target validation tests to reflect new Gemini preview model names.
  • tests/test_auto_mode_comprehensive.py
    • Modified auto-mode comprehensive tests to reflect new Gemini and Grok model names and aliases.
  • tests/test_auto_mode_model_listing.py
    • Modified auto-mode model listing tests to reflect new Gemini preview model names.
  • tests/test_auto_mode_provider_selection.py
    • Modified auto-mode provider selection tests to reflect new Gemini and Grok model names and aliases.
  • tests/test_clink_tool.py
    • Modified test_registry_lists_roles to reflect that only Gemini is enabled by default and removed Codex-specific assertions.
  • tests/test_intelligent_fallback.py
    • Modified intelligent fallback tests to reflect new Gemini Flash model aliases.
  • tests/test_per_tool_model_defaults.py
    • Modified per-tool model defaults tests to reflect new Gemini preview and stable model names.
  • tests/test_supported_models_aliases.py
    • Modified supported models aliases tests to reflect new Gemini and Grok model configurations.
  • tests/test_xai_provider.py
    • Modified X.AI provider tests to reflect new model names, aliases, and capabilities for Grok models.
Ignored Files
  • Ignored by pattern: .github/workflows/** (2)
    • .github/workflows/claude-code-review.yml
    • .github/workflows/claude.yml
Activity
  • The pull request was generated by Claude Code, indicating an automated process for creating these changes.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 52af596a7e

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread conf/custom_models.json
Comment on lines +25 to 27
"model_name": "GLM-5",
"friendly_name": "Z.AI (GLM-5 Coding)",
"aliases": [
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Restore legacy local aliases in custom model manifest

Replacing the only custom entry with GLM-5 removes the llama3.2/local-llama identifiers that existing local/Ollama flows still depend on, so users upgrading this commit will start getting unknown-model failures unless they also rewrite their env/config defaults. The server still advertises llama3.2 as the default custom model elsewhere, so this change creates an immediate compatibility break instead of an additive model update.

Useful? React with 👍 / 👎.

Comment thread pyproject.toml
[project]
name = "pal-mcp-server"
version = "9.8.2"
version = "1.1.0"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep package version monotonic

Setting the project version to 1.1.0 after 9.8.2 is a semantic rollback, and package/update tooling compares versions numerically, so deployments already on 9.x will treat this release as older and may never pick it up. This should be bumped forward (and kept consistent with runtime version metadata) to avoid breaking upgrade paths.

Useful? React with 👍 / 👎.

logger = logging.getLogger(__name__)


def get_openrouter_models(api_key: str | None = None) -> dict:
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Use Python 3.9-compatible annotations in sync script

The new utility uses str | None type-union syntax, which is only valid on Python 3.10+, but the project metadata still declares support for Python 3.9. Running this script in a supported 3.9 environment will fail at import-time with a syntax error before any logic executes.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a wide range of changes, significantly expanding beyond the scope suggested by the title and description. While the addition of the GLM-5 model and updates to other model configurations are valuable, the PR also includes a large number of new documentation files and scripts related to an AI agent framework (.claude, .robit).

My review focuses on a couple of key issues. The most critical is the use of hardcoded absolute paths in .claude/settings.json, which will prevent the hooks from working for other developers. I've also noted that some of the new scripts and documentation seem to be for a TypeScript/Node.js project, which could be confusing in this Python repository.

Overall, the code changes related to model configurations and the new OpenRouter sync script appear to be well-implemented. The change in server.py to validate models from previous turns is also a good improvement for robustness. Given the size and scope of this PR, it might be beneficial to split such large changes into smaller, more focused pull requests in the future.

Comment thread .claude/settings.json
Comment on lines +7 to 112
"hooks": {
"PreToolUse": [
{
"matcher": "Write",
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/pre-tool-use.sh"
}
]
},
{
"matcher": "Edit",
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/pre-tool-use.sh"
}
]
},
{
"matcher": "mcp__filesystem-with-morph__write_file",
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/pre-tool-use.sh"
}
]
},
{
"matcher": "mcp__filesystem-with-morph__edit_file",
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/pre-tool-use.sh"
}
]
},
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/pre-tool-use.sh"
}
]
}
],
"PostToolUse": [
{
"matcher": "Write",
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/post-tool-use.sh"
}
]
},
{
"matcher": "Edit",
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/post-tool-use.sh"
}
]
},
{
"matcher": "mcp__filesystem-with-morph__write_file",
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/post-tool-use.sh"
}
]
},
{
"matcher": "mcp__filesystem-with-morph__edit_file",
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/post-tool-use.sh"
}
]
},
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/post-tool-use.sh"
}
]
}
],
"UserPromptSubmit": [
{
"hooks": [
{
"type": "command",
"command": "/Users/juju/dev_repos/zen-mcp-server/.claude/hooks/user-prompt-submit.sh"
}
]
}
]
}
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

critical

The command paths for all hooks are hardcoded with an absolute user path (e.g., /Users/juju/...). This will break the setup for any other developer or in any CI/CD environment.

These paths should be relative to the repository root (e.g., .claude/hooks/pre-tool-use.sh) or dynamically determined using an environment variable, assuming the execution context is the repository root.

Comment on lines +39 to +47
if command -v npm &> /dev/null && [ -f "package.json" ]; then
echo "🔍 Running TypeScript type check..."
if npm run typecheck --if-present 2>&1 | grep -q "error"; then
echo -e "${RED}✗ TypeScript errors found${NC}"
FAILED=1
else
echo -e "${GREEN}✓ TypeScript type check passed${NC}"
fi
fi
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This pre-commit hook includes checks for a TypeScript/JavaScript project (npm run typecheck). However, the main project is Python-based. Including these checks could be confusing and add unnecessary overhead if this hook is intended for the Python project. If this .claude directory is for a different purpose or a sub-project, it would be helpful to clarify that in the documentation.

@jukasdrj
Copy link
Copy Markdown
Author

jukasdrj commented Mar 6, 2026

Opened against wrong repo - moving to fork

@jukasdrj jukasdrj closed this Mar 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant