feat: add ccb launcher startup config for copilot, codebuddy, qwen#139
Open
LeoLin990405 wants to merge 5 commits intobfly123:mainfrom
Open
feat: add ccb launcher startup config for copilot, codebuddy, qwen#139LeoLin990405 wants to merge 5 commits intobfly123:mainfrom
LeoLin990405 wants to merge 5 commits intobfly123:mainfrom
Conversation
The daemon adapters, protocol modules, CLI scripts (hask/bask/qask), and ask dispatcher were already merged but the ccb launcher was missing: - _ALLOWED_PROVIDERS whitelist - Provider validation (CCB_CALLER) - Unified askd daemon startup loop - Daemon spec mapping - Tmux/WezTerm pane creation dispatch - Warmup/ping routing - Start command generation - Session file writing - Claude env overrides for inter-provider communication - Help text listing - Legacy session migration Adds generic _start_generic_tmux(), _build_generic_start_cmd(), and _write_generic_session() methods to avoid duplicating the established pattern for each new pane-log provider. All 268 tests pass. Closes bfly123#59 (follow-up) Ref bfly123#122
This was referenced Mar 13, 2026
Closed
_parse_providers() and _parse_providers_with_cmd() had their own hardcoded allowed sets that were not updated, causing `ccb copilot` to fail with "invalid provider(s)" even though the help text listed the new providers. Reported by @WenYuLuo in bfly123#139.
Contributor
Author
|
@WenYuLuo 感谢发现!🙏 确实还有遗漏 —— 已在 14e69d9 中修复,现在 修改:
268 tests 仍然全部通过。 |
Update every hardcoded provider list to include copilot, codebuddy, and qwen (and droid where missing): - lib/ccb_start_config.py: DEFAULT_PROVIDERS - lib/pane_registry.py: legacy migration loops (2 locations) - lib/web/routes/providers.py: KNOWN_PROVIDERS - lib/memory/transfer.py: SUPPORTED_PROVIDERS, SUPPORTED_SOURCES, SOURCE_SESSION_FILES, DEFAULT_SOURCE_ORDER - lib/mail/config.py: SUPPORTED_PROVIDERS - lib/mail_tui/wizard.py: default_map (mail wizard choices) - mcp/ccb-delegation/server.py: PROVIDERS dict, ALIAS_TOOLS, TOOL_DEFS loop - bin/ccb-mounted: PROVIDERS Audited with two independent reviewers (grep-based + lifecycle trace) across three rounds to ensure zero omissions. All 268 tests pass.
Contributor
Author
|
@WenYuLuo 已全面修复 ✅ 除了之前修复的 CLI parser,又发现并修复了 12 处 其他文件中遗漏的 provider 白名单:
经过 3 轮独立 reviewer 审查 + grep 全仓库扫描,确认无遗漏。 268 tests 全部通过: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Summary / 概述
Copilot (#122), CodeBuddy (#123), Qwen (#124) 的 daemon adapters、CLI 脚本和 ask dispatcher 已合并,但 ccb 主启动器缺少启动配置。本 PR 补全所有缺失部分。
The daemon adapters, protocol modules, CLI scripts, and ask dispatcher for Copilot/CodeBuddy/Qwen were already merged, but the ccb launcher was missing startup integration. This PR adds all missing pieces.
Changes
_ALLOWED_PROVIDERSccb --helpdidn't list new providersNew generic methods
Instead of duplicating the established pattern 3x, adds:
_start_generic_tmux()— reusable tmux pane creation_build_generic_start_cmd()— env-overridable CLI command_write_generic_session()— session file + registryTest plan
ccb --helpshows all 8 providersRef #122, #123, #124
Follow-up to #59