Skip to content

Commit ead0772

Browse files
bfly123claude
andcommitted
chore: bump version to v5.2.6 and update README What's New
Covers merged PRs #87, #91, #92, #96, #97: Gemini CLI 0.29.0 dual-hash support, OpenCode async deadlock fix, mail setup v3 compat, lpend stale-registry fallback, and autostart routing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 0ee498c commit ead0772

File tree

3 files changed

+53
-15
lines changed

3 files changed

+53
-15
lines changed

README.md

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
<div align="center">
22

3-
# Claude Code Bridge (ccb) v5.2.5
3+
# Claude Code Bridge (ccb) v5.2.6
44

5-
**New Multi-Model Collaboration Tool via Split-Pane Terminal**
6-
**Claude & Codex & Gemini & OpenCode & Droid**
7-
**Ultra-low token real-time communication, unleashing full CLI power**
5+
**Multi-Model Collaboration via Split-Pane Terminal**
6+
**Claude · Codex · Gemini · OpenCode · Droid**
7+
**Lightweight async messaging — full CLI power, every interaction visible**
88

99
<p>
1010
<img src="https://img.shields.io/badge/Every_Interaction_Visible-096DD9?style=for-the-badge" alt="Every Interaction Visible">
1111
<img src="https://img.shields.io/badge/Every_Model_Controllable-CF1322?style=for-the-badge" alt="Every Model Controllable">
1212
</p>
1313

14-
[![Version](https://img.shields.io/badge/version-5.2.5-orange.svg)]()
14+
[![Version](https://img.shields.io/badge/version-5.2.6-orange.svg)]()
1515
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
1616
[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)
1717
[![CI](https://github.com/bfly123/claude_code_bridge/actions/workflows/test.yml/badge.svg)](https://github.com/bfly123/claude_code_bridge/actions/workflows/test.yml)
@@ -34,7 +34,7 @@
3434

3535
---
3636

37-
**Introduction:** Multi-model collaboration effectively avoids model bias, cognitive blind spots, and context limitations. However, MCP, Skills and other direct API approaches have many limitations. This project offers a new WYSIWYG solution.
37+
**Introduction:** Multi-model collaboration avoids model bias, cognitive blind spots, and context limits. Unlike MCP or API-based approaches, ccb gives you a WYSIWYG split-pane terminal where every interaction is visible and every model is controllable.
3838

3939
## ⚡ Why ccb?
4040

@@ -50,6 +50,25 @@
5050
<h2 align="center">🚀 What's New</h2>
5151

5252
<details open>
53+
<summary><b>v5.2.6</b> - Async Communication & Gemini 0.29 Compatibility</summary>
54+
55+
**🔧 Gemini CLI 0.29.0 Support:**
56+
- **Dual Hash Strategy**: Session path discovery now supports both basename and SHA-256 formats
57+
- **Autostart**: `ccb-ping` and `ccb-mounted` gain `--autostart` flag to launch offline provider daemons
58+
- **Cleanup Tool**: New `ccb-cleanup` utility for removing zombie daemons and stale state files
59+
60+
**🔗 Async Communication Fixes:**
61+
- **OpenCode Deadlock**: Fixed session ID pinning that caused second async call to always fail
62+
- **Degraded Completion**: Adapters now accept `CCB_DONE` even when req_id doesn't match exactly
63+
- **req_id Regex**: `opencode_comm.py` now matches both old hex and new timestamp-based formats
64+
65+
**🛠 Other Fixes:**
66+
- **lpend**: Prefers fresh Claude session path when registry is stale
67+
- **mail setup**: Unblocked `ccb mail setup` import on config v3
68+
69+
</details>
70+
71+
<details>
5372
<summary><b>v5.2.5</b> - Async Guardrail Hardening</summary>
5473

5574
**🔧 Async Turn-Stop Fix:**

README_zh.md

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
<div align="center">
22

3-
# Claude Code Bridge (ccb) v5.2.5
3+
# Claude Code Bridge (ccb) v5.2.6
44

5-
**基于终端分屏的全新多模型交互协作工具**
6-
**Claude & Codex & Gemini & OpenCode & Droid**
7-
**超低token时时通讯,发挥cli全部功能**
5+
**终端分屏多模型协作工具**
6+
**Claude · Codex · Gemini · OpenCode · Droid**
7+
**轻量异步通讯,交互皆可见,模型皆可控**
88

99
<p>
1010
<img src="https://img.shields.io/badge/交互皆可见-096DD9?style=for-the-badge" alt="交互皆可见">
1111
<img src="https://img.shields.io/badge/模型皆可控-CF1322?style=for-the-badge" alt="模型皆可控">
1212
</p>
1313

14-
[![Version](https://img.shields.io/badge/version-5.2.5-orange.svg)]()
14+
[![Version](https://img.shields.io/badge/version-5.2.6-orange.svg)]()
1515
[![Platform](https://img.shields.io/badge/platform-Linux%20%7C%20macOS%20%7C%20Windows-lightgrey.svg)]()
1616

1717
[English](README.md) | **中文**
@@ -33,7 +33,7 @@
3333

3434
---
3535

36-
**简介:** 多模型协作能够有效避免模型偏见、认知漏洞和上下文限制,然而 MCP、Skills 等直接调用 API 方式存在诸多局限性可不可控性。本项目打造了一套全新的可见即可得方案
36+
**简介:** 多模型协作能有效避免模型偏见、认知盲区和上下文限制。不同于 MCP API 调用方式,ccb 提供终端分屏所见即所得体验——交互皆可见,模型皆可控
3737

3838
## ⚡ 核心优势
3939

@@ -51,6 +51,25 @@
5151
<h2 align="center">🚀 新版本速览</h2>
5252

5353
<details open>
54+
<summary><b>v5.2.6</b> - 异步通信修复 & Gemini 0.29 兼容</summary>
55+
56+
**🔧 Gemini CLI 0.29.0 适配:**
57+
- **双哈希策略**:会话路径发现同时支持 basename 和 SHA-256 格式
58+
- **自动启动**`ccb-ping``ccb-mounted` 新增 `--autostart` 标志,可自动拉起离线 provider
59+
- **清理工具**:新增 `ccb-cleanup`,清理僵尸守护进程和过期状态文件
60+
61+
**🔗 异步通信修复:**
62+
- **OpenCode 死锁**:修复会话 ID 固定导致第二次异步调用必定失败的问题
63+
- **降级完成检测**:适配器在 req_id 不完全匹配时仍可识别 `CCB_DONE`
64+
- **req_id 正则**`opencode_comm.py` 同时匹配旧 hex 和新时间戳格式
65+
66+
**🛠 其他修复:**
67+
- **lpend**:registry 过期时优先使用更新鲜的 Claude 会话路径
68+
- **mail setup**:修复 config v3 下 `ccb mail setup` 导入失败
69+
70+
</details>
71+
72+
<details>
5473
<summary><b>v5.2.5</b> - 异步护栏加固</summary>
5574

5675
**🔧 异步轮次停止修复:**

ccb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,9 @@ backend_env = get_backend_env()
5151
if backend_env and not os.environ.get("CCB_BACKEND_ENV"):
5252
os.environ["CCB_BACKEND_ENV"] = backend_env
5353

54-
VERSION = "5.2.4"
55-
GIT_COMMIT = "v5.2.4"
56-
GIT_DATE = "2026-02-11"
54+
VERSION = "5.2.6"
55+
GIT_COMMIT = "v5.2.6"
56+
GIT_DATE = "2026-02-24"
5757

5858
_WIN_DRIVE_RE = re.compile(r"^[A-Za-z]:([/\\\\]|$)")
5959
_MNT_DRIVE_RE = re.compile(r"^/mnt/([A-Za-z])/(.*)$")

0 commit comments

Comments
 (0)