1. 15 Jul, 2026 3 commits
  2. 09 May, 2026 1 commit
  3. 08 May, 2026 7 commits
    • 方海彤's avatar
      feat: migrate local proxy from codex_proxy to CLIProxyAPI · 15dc49eb
      方海彤 authored
      - Updates the default `API_URL` and port from `8088` to `8317` in `ai_review/config.py` and documentation to align with CLIProxyAPI defaults.
      - Replaces the custom `proxy/codex_proxy.py` and launchd plist with a new configuration example for `CLIProxyAPI` (`proxy/cliproxyapi.config.example.yaml`).
      - Updates `README.md` with instructions for installing and configuring `CLIProxyAPI` via Homebrew, including OAuth login and API key setup.
      - Adjusts environment variable documentation to reflect that `AI_REVIEW_API_KEY` is now required by the new proxy configuration.
      15dc49eb
    • 方海彤's avatar
      fix: skip Feishu notification when no diff is found · 7450df55
      方海彤 authored
      Removes the Feishu notification step when there are no code changes to review. The process now simply prints a skip message and exits to reduce unnecessary notifications.
      7450df55
    • 方海彤's avatar
      feat: add cross-file symbol reference context to LLM prompts · 71a89423
      方海彤 authored
      Introduces `find_symbol_references` in `ai_review/git.py` to detect deleted symbols within a diff and search for remaining references across the repository using `git grep`. This provides the LLM with factual context to determine if callers have been properly updated, reducing "hallucinated" risks regarding unsynchronized changes.
      
      Key changes:
      - Implements heuristic-based symbol extraction for deleted lines (supporting Kotlin, Java, Swift, JS/TS, etc.).
      - Filters out references within the files already modified in the current diff.
      - Appends a formatted "Symbol Reference Context" block to both standard and deep review prompts.
      - Limits analysis to the first 8 symbols and 20 references per symbol to manage prompt size.
      71a89423
    • 方海彤's avatar
      feat: refine risk level detection logic in code review results · 7a3f7a55
      方海彤 authored
      Improved the accuracy of risk level assessment from LLM responses by implementing a prioritized detection strategy:
      1. Matches leading "" for skipped or passed reviews.
      2. Specifically searches for an emoji (, ️, or 🚨) within a "Risk Level" line.
      3. Implements a fallback that checks for actual list items within the "High Risk" section to avoid false positives triggered by section headers.
      7a3f7a55
    • 方海彤's avatar
      feat: update default API URL and model names to local codex proxy · a9a80307
      方海彤 authored
      Updates the default configuration and documentation to prioritize the local codex proxy over public cloud endpoints.
      
      - **Config**: Changes default `AI_REVIEW_API_URL` to `http://localhost:8088/v1/chat/completions`.
      - **Models**: Updates default `MODEL` and `TRIAGE_MODEL` to `gpt-5.5` and `gpt-5.4-mini` respectively to align with codex naming conventions.
      - **LLM**: Refines thinking mode logic to send hint parameters (`enable_thinking`, `thinking_budget`) to OpenAI-compatible gateways while maintaining compatibility with proxies that ignore these fields.
      - **Documentation**: Updates `README.md` with detailed instructions for codex proxy deployment, including model resolution rules and GitLab CI variable configuration.
      - **Timeouts**: Increases default `AI_REVIEW_DEEP_TIMEOUT` to 600 seconds in the documentation.
      a9a80307
    • 方海彤's avatar
      feat: display actual model names from API responses · 470113cc
      方海彤 authored
      Updates `call_llm` to return both the content and the actual model name returned by the API. This ensures that the review summary and notifications display the real model used (e.g., "codex" when using a local proxy) rather than static configuration values. Updated `main.py` to propagate and display these dynamic model names in the final report.
      470113cc
    • 方海彤's avatar
      update · 25bd6025
      方海彤 authored
      25bd6025
  4. 08 Apr, 2026 2 commits
    • tongzifang's avatar
      feat: increase DEEP_TIMEOUT to 600 seconds · 3f8a636f
      tongzifang authored
      Updates the default `DEEP_TIMEOUT` value from 300 to 600 seconds in `ai_review/config.py` to allow more time for deep review processing.
      3f8a636f
    • tongzifang's avatar
      fix: strip thinking process from LLM responses · c224a250
      tongzifang authored
      Introduces `_strip_thinking` to remove reasoning segments from the LLM output. This handles `<think>` tags, residual `</think>` tags, and plain-text thinking prefixes to ensure only the final review content is returned. It also prioritizes `reasoning_content` when provided by OpenAI-compatible gateways.
      c224a250
  5. 07 Apr, 2026 2 commits
  6. 30 Mar, 2026 3 commits