林凯90331
b0f10760fe
fix(favorite): sync load/unload state and improve error visibility
...
Clear listFavoriteItems cache after load/unload to ensure UI reflects latest state on next open
Filter defaultValue by Active status in cloud-enabled menu so unloaded items are not pre-selected
Surface specific error reasons instead of generic failure count in cloud-enabled menu
Signed-off-by: 林凯90331 <90331@sangfor.com>
Co-authored-by: CoStrict <zgsm@sangfor.com.cn>
2026-05-15 16:44:24 +08:00
DoSun
ecb0df50d3
fix: add type guards and null checks for UUID handling in snip functionality
...
- Add UUID type import and type guard in force-snip command
- Add null/undefined checks in snipCompact, snipProjection, and sessionStorage
- Improve optional chaining in SnipTool for safer property access
- Prevent potential runtime errors from invalid UUID values
Co-Authored-By: claude-sonnet-4-6 <noreply@anthropic.com>
2026-05-15 14:26:33 +08:00
DoSun
f100568b46
Merge pull request #85 from y574444354/fix/serve-command-real-impl
...
fix: 替换假 server 命令为真实 serve 实现
2026-05-14 19:14:53 +08:00
xixingde
25ea4a0cf3
feat(auth): add remote API control config to gate third-party providers
2026-05-14 16:03:04 +08:00
DoSun
cbc948b044
Merge branch 'feat/server-refactor'
...
# Conflicts:
# build.ts
# src/main.tsx
# src/services/rawDump/worker.ts
2026-05-14 15:21:25 +08:00
geroge
42107f7d2f
Merge pull request #64 from y574444354/feat/migrate-review-agents
...
【Review】feat: 将 review skill 迁移到 extract-to-disk 架构
2026-05-13 19:38:26 +08:00
DoSun
c2eb6bff90
fix: 清理 main 分支的 stub .js 文件,恢复有 .ts 源文件的命令模块
2026-05-13 10:36:04 +08:00
DoSun
3bfc695cb4
chore: 清理临时 rebase 脚本
2026-05-13 10:29:34 +08:00
DoSun
3abca0c053
merge: 合并 origin/main 到 feat/server-refactor,解决冲突并保留 server 完整实现
2026-05-13 10:27:14 +08:00
Askhz
902b7d4ed5
fix: 移除闲置字段id/name,认证文件路径改为~/.costrict/share/auth.json
...
Co-Authored-By: CoStrict-DeepSeek-V4-Pro <deepseek-ai@claude-code-best.win>
2026-05-13 09:54:40 +08:00
IronRookieCoder
b58fd8f782
fix: 修复子代理参数兼容问题
2026-05-12 21:24:12 +08:00
kingboung
7425b59826
feat: register /review and /security-review via registerBundledSkill
...
Replace indirect Skill-tool-based routing with direct bundled skill
registration using SKILL_FILES, matching /strict:review approach.
- reviewSkills.ts registers all four commands (review, security-review,
strict:review, strict:security-review) with embedded files
- Remove review command from commands.ts (now bundled skill)
- Simplify review.ts to only export ultrareview
- Update mcp.ts to get review command from bundled skills
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-12 16:52:43 +08:00
kingboung
33bdcb9b74
fix: restore verified commit 89c9e87c files after main merge
...
Restore files to match the verified commit state:
- generate-review-builtin.ts: skill-only generation, SSH clone, optimize/agent-prompts branch
- extension.ts: listBuiltinSkillNames, getClaudeConfigHomeDir approach
- lang.ts: re-extract review skills on language switch
- locales: use Skill tool prompt format
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-12 15:41:21 +08:00
kingboung
4c56bbe268
fix: remove agent-based review code reintroduced from main merge
...
Revert PR #43 agent-based code that was brought in during the main merge:
- Remove generateBuiltinAgents and all agent-related logic from generate script
- Delete src/costrict/review/agent/ directory
- Delete src/commands/security-review.ts (handled by bundled skill)
- Restore PR #64 extension.ts with getClaudeConfigHomeDir approach
- Remove REVIEW_AGENTS from builtInAgents.ts
- Keep review command (needed for MCP entry), but use CommandLocale instead of agent
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-12 15:32:07 +08:00
kingboung
a645f34ee5
fix: resolve merge conflicts with main, keep branch review architecture
...
- Remove duplicate extractBundledSkill from generated builtin.ts template
- Keep extract-to-disk extension.ts (branch version)
- Keep SSH clone URL for generate-review-builtin
- Revert .gitignore, package.json, locales to branch versions
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-12 15:16:17 +08:00
kingboung
8599340c68
Merge remote-tracking branch 'origin/main' into feat/migrate-review-agents
...
Conflicts resolved in favor of our branch for review-related files.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-12 15:08:13 +08:00
kingboung
58518f4b9b
feat: re-extract review skills on language switch
...
When /lang is used to switch language, immediately re-extract review
skills for the new locale and refresh skill caches so changes take
effect without restart.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-12 14:52:39 +08:00
y574444354
666d2ba2eb
Merge branch 'main' into merge
2026-05-12 12:25:05 +08:00
y574444354
8b6bdd44d8
Revert "Merge pull request #60 from y574444354/feat/migrate-review-agents"
...
This reverts commit 62398b2dcc , reversing
changes made to ba39b17a7e .
2026-05-12 12:11:37 +08:00
y574444354
d59d1f590a
chore: 合并社区 upstream/main 代码至 v2.4.2
...
合并 claude-code-best/claude-code 社区最新代码,包含:
- 配置文件更新:precheck/lint-staged/overrides 等
- 新 feature flags:EXPERIMENTAL_SEARCH_EXTRA_TOOLS、AUTOFIX_PR
- 工具系统架构更新:Tool Search、ACP 协议支持
- 文档更新:CLAUDE.md 同步架构变更
- 依赖更新:SDK 版本升级、lint-staged 加入
冲突处理策略:以 costrict 版本为主,选择性合并上游功能改进
2026-05-12 11:55:04 +08:00
geroge
62398b2dcc
Merge pull request #60 from y574444354/feat/migrate-review-agents
...
feat: migrate review system to bundled skill files mechanism
2026-05-12 10:11:29 +08:00
kingboung
62efcef508
refactor: consolidate review skill registration and fix command conflicts
...
- Merge strict:review/strict:security-review into reviewSkills.ts (single
file registers all four commands: /review, /security-review,
/strict:review, /strict:security-review)
- Remove conflicting prompt commands from src/commands/ (review.ts,
security-review.ts) so bundled skills take precedence
- Remove REVIEW_AGENTS import from builtInAgents.ts and mcp.ts
- Remove agent generation logic from generate-review-builtin.ts
- Configure allowedTools and model: 'inherit' per claudecode spec
- Switch test branch to optimize/agent-prompts
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-11 20:52:18 +08:00
kingboung
a5235ab03c
Merge remote-tracking branch 'origin/main' into feat/migrate-review-agents
2026-05-11 20:21:16 +08:00
kingboung
e3ba147dbe
refactor: migrate review system to bundled skill files mechanism
...
Replace custom extension.ts initialization and agent-based routing with
csc's built-in registerBundledSkill({ files }) mechanism. Review and
security-review skills are now registered with embedded files that
get lazily extracted to disk on first invocation. Locale is resolved
at startup via getResolvedLanguage().
- Remove agent generation from generate-review-builtin.ts (skill-only)
- Remove extension.ts, REVIEW_AGENTS registration, strict:* skills
- Add reviewSkills.ts with registerReviewSkills() for unified registration
- Adapt to new costrict-review index.json format (skills-only, new paths)
- Remove src/costrict/command/locales/ (no longer needed)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-11 20:19:05 +08:00
Askhz
4dcb3a2107
feat: add agent-type request header to CoStrict provider
...
在 CoStrict provider 的所有 API 请求中注入 agent-type header,
反映当前会话所使用的 agent 或 skill,默认值为 "build"。
- fetch.ts: createCoStrictFetch 接受可选 agentType 参数,PascalCase
自动转 kebab-case(StrictSpec → strict-spec),注入 agent-type header
- index.ts: queryModelCoStrict 读取 getMainThreadAgentType()(--agent 启动)
或 getActiveSkillName()(slash skill 触发)作为 agentType
- models.ts: /v1/models 请求添加 User-Agent: csc/{VERSION} header
- state.ts: 新增 activeSkillName 状态及 getter/setter
- processSlashCommand.tsx: inline skill 和 fork skill(context:fork)
触发时均调用 setActiveSkillName 记录当前 skill/agent 名
- caches.ts: /clear 时调用 setActiveSkillName(undefined) 重置状态,
避免新会话继承上一会话的 agent-type
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-11 11:17:02 +08:00
claude-code-best
bc74d0da62
fix: 修复 CI 中 10 个测试的 Bun mock.module 跨文件污染
...
- thinking.test.ts: 补 envUtils.js 防御性 mock,提供 isEnvDefinedFalsy
和 isEnvTruthy 正确实现,覆盖 6 个其他测试文件不完整 mock 导致的污染
- launchLocalVault.test.ts: 补 keychain.js 防御性 mock,强制抛
KeychainUnavailableError 使 store 走文件回退路径,覆盖 store.test.ts
和 keychain.test.ts 的 mock 残留
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-11 09:38:13 +08:00
claude-code-best
b85cfc69b7
fix: 修复 Bun mock.module 跨文件污染导致 87 个测试失败
...
- 重写 setupAxiosMock 使其完全 per-file 独立,消除共享 handles 数组的竞态
- 将 launchSchedule/launchMemoryStores/launchAgentsPlatform 从直接 mock
源 API 模块改为 mock axios 底层 HTTP 层,避免污染同目录 api.test.ts
- 删除两个 Ink waitUntilExit 超时测试文件
- 修复 hostGuard/keychain 跨文件 mock 污染
- 清理 api.test.ts 中的 require() workaround
- 在 CLAUDE.md 记录 mock 污染排查经验
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-11 08:50:03 +08:00
claude-code-best
121bc61aa2
fix: 修复 issue-template 测试误删 .github/workflows 目录
...
afterEach 清理时 rmSync 误删了整个 .github/ 目录(含 workflows),
改为只删测试创建的 ISSUE_TEMPLATE 子目录。
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-10 21:11:50 +08:00
claude-code-best
d303e1cd9a
fix: 代码审查修复 — 安全、性能和正确性
...
- triggersApi: 添加 assertSubscriptionBaseUrl 防止 OAuth token 泄露
- claude.ts: 修复流式响应 O(n^2) 字符串拼接,改用数组累积
- claude.ts: 移除未使用的 import,动态 import 改为静态 import
- StatusLine: BuiltinStatusLine 仅在 statusLineEnabled 时显示,修复双行问题
- local-vault: 修复 --reveal 标志位置解析 bug
- share: 修复 sk-proj-* OpenAI 密钥未脱敏问题
- store.ts: 临时文件改用同目录创建,避免跨文件系统 rename 失败
- store.ts: 添加空字符串 key 校验
- permissionValidation: 端口正则限制为有效 TCP 范围 0-65535
- 测试 mock 补全: schedule/vault/skill-store 测试文件
- 移除过期的 biome-ignore 注释
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-10 09:39:34 +08:00
claude-code-best
da0b4bce24
chore: 移除废弃的 ctx_viz 类型声明
...
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-09 23:04:44 +08:00
claude-code-best
52956804ff
feat: 注册所有新命令到命令系统和工具注册表
...
- commands.ts: 注册所有新命令(memory-stores、vault、schedule 等),
移除 require() 动态加载,统一为 ESM import
- tools.ts: 注册 LocalMemoryRecallTool、VaultHttpFetchTool
- 补充命令测试(bridge-kick、commit、commit-push-pr、init-verifiers)
- 补充工具测试(AgentTool、RemoteTrigger、SkillTool、WebFetch、WebSearch)
- 集成测试:autonomy-lifecycle-user-flow 更新
- 探测脚本和功能文档
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-09 23:04:39 +08:00
claude-code-best
3f3d9d9638
feat: 添加 Provider Registry、StatusLine、Cache Stats 和其他增强
...
- providerRegistry: OpenAI 兼容 provider 切换(Cerebras/Groq/DeepSeek/Qwen)
- StatusLine: 增强状态栏(缓存命中率、TTL 倒计时、自定义 shell 命令)
- cacheStats: 缓存命中率和 token 签名追踪
- ultrareviewPreflight: 代码审查预检服务
- SkillsMenu/filterSkills: 技能菜单过滤增强
- MagicDocs/langfuse prompts: 提示词更新
- claude.ts: API 客户端更新
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-09 23:04:35 +08:00
claude-code-best
444e46a0b4
feat: 添加工具类命令(teleport、recap、break-cache、env、tui 等)
...
- /teleport: 从 claude.ai 恢复会话
- /recap: 生成会话摘要
- /break-cache: 提示缓存管理(once/always/off/status)
- /env: 环境信息展示(含密钥脱敏)
- /tui: 无闪烁 TUI 模式管理
- /onboarding: 引导流程
- /perf-issue: 性能问题诊断
- /debug-tool-call: 工具调用调试
- /usage: 用量统计(合并 /cost 和 /stats 别名)
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-09 23:04:31 +08:00
claude-code-best
4e4dd83f08
feat: 添加 GitHub 集成命令(issue、share、autofix-pr)
...
- /issue: 通过 gh CLI 创建 GitHub issue,支持标签/指派
- /share: 会话日志分享到 GitHub Gist,支持密钥脱敏
- /autofix-pr: 自动修复 CI 失败的 PR,进度追踪
- launchCommand: 共享命令启动器
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-09 23:04:23 +08:00
claude-code-best
fc43aa9e7a
feat: 添加本地 Memory/Vault 管理命令
...
- /local-memory: 本地记忆管理(store/entry CRUD、搜索、归档)
- /local-vault: 本地密钥保险库管理(加解密、keychain 集成)
- permissionValidation: vault 权限校验增强
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-09 23:04:20 +08:00
claude-code-best
8874fedb41
feat: 添加云端管理命令(memory-stores、vault、schedule、skill-store、agents-platform)
...
- /memory-stores: 远程记忆存储管理
- /vault: 密钥保险库管理
- /schedule: 云端定时触发器管理(cron)
- /skill-store: 技能商店浏览和安装
- /agents-platform: 远程 agent 调度管理
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-09 23:04:17 +08:00
claude-code-best
2d1ff66d9b
feat: 添加登录认证增强(workspace key、host guard、auth status)
...
- hostGuard: workspace API key 仅限 api.anthropic.com,OAuth 限定 subscription plane
- saveWorkspaceKey: sk-ant-api03- 前缀校验,安全写入缓存
- AuthPlaneSummary/WorkspaceKeyInput: 登录 UI 组件
- getAuthStatus: 认证状态查询
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-09 23:04:15 +08:00
claude-code-best
eafbb82ad5
Merge pull request #442 from claude-code-best/feature/tool_search
...
feat: 支持 SearchExtraTools 能力以替代 Tool Search
2026-05-09 17:23:03 +08:00
claude-code-best
d27c6ccb47
docs: 添加 ToolSearch 设计指南 + 禁用 turn-zero 工具推荐弹窗
...
- 新增 docs/design/tool-search-design-guide.md,涵盖架构、搜索算法、执行管道、演进历史
- 禁用 getTurnZeroSearchExtraToolsPrefetch,消除用户输入时的频繁弹窗
- inter-turn 发现机制保持不变
Co-Authored-By: glm-5-turbo <zai-org@claude-code-best.win>
2026-05-09 16:45:56 +08:00
Bill
dd942049f8
fix: 修复CI格式检查失败
2026-05-09 16:21:07 +08:00
Bill
a6d257e4f6
feat: /login支持codex订阅登录
2026-05-08 20:35:34 +08:00
林凯90331
41dbd44b4e
feat(hub): migrate favorite command with auto-enable, real-time toggle and server refactor
...
- Migrate favorite command from opencode to csc with /hub command
- Rename /favorite → /cloud-enabled → /knowledge-hub → /hub
- Auto-enable cloud favorites on startup without manual Update button
- Toggle items immediately on check/uncheck without Update button
- Add favorite REST routes and kh alias (later removed)
- Fix UDS socket path length exceeding macOS sockaddr_un.sun_path limit
- Add AbortController timeout to CoStrict fetch to prevent startup blocking
- Fix build robustness (handle missing download-ripgrep script)
- Merge server refactor: Hono-based HTTP API, session management, transcript reader
- Add serve API docs, server module unit tests, and cloud command handler
Signed-off-by: 林凯90331 <90331@sangfor.com>
Co-authored-by: CoStrict <zgsm@sangfor.com.cn>
2026-05-08 18:18:44 +08:00
geroge
684b81457c
Merge pull request #46 from y574444354/feat/favorite-migrate
...
feat: migrate favorite command from opencode to csc
2026-05-08 09:36:24 +08:00
林凯90331
dacbf1f7ab
feat: migrate favorite command from opencode to csc
...
- Add /favorite REPL slash command with list/view/download/load/unload/uninstall
- Implement core favorite logic in src/costrict/favorite/ using createCoStrictFetch
- Extend GlobalConfig with agents and commands fields for config-layer storage
- Adapt skill load/unload to csc's directory-scanning mechanism (~/.claude/skills/)
- Adapt MCP load/unload to csc's mcpServers config via saveGlobalConfig()
- Decouple from opencode-specific deps: jsonc-parser, Config.invalidate, Filesystem.*
Signed-off-by: 林凯90331 <90331@sangfor.com>
Co-authored-by: CoStrict <zgsm@sangfor.com.cn>
2026-05-08 08:20:57 +08:00
kingboung
4054ae9f4b
feat: migrate review agents and skills to unified costrict-review repo
...
- Add generate-review-builtin.ts script (downloads from zgsm-ai/costrict-review)
- Add review module (index.ts, extension.ts) with locale-aware skill init
- Add CommandLocale module with zh-CN/en templates for /review and /security-review
- Integrate REVIEW_AGENTS into builtInAgents.ts
- Route /review command to CoStrictReviewer agent
- Simplify /security-review to use Skill tool with locale templates
- Remove old generate-skills.ts and inline security-review skill
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-07 09:40:24 +08:00
znygugeyx-ctrl
0ef78de0a7
Merge pull request #416 from znygugeyx-ctrl/feat/subagent-fork-render
...
feat: 参考 claude code 官方实现,改进 sub agent 以及 fork agent 的渲染方式
2026-05-06 09:57:52 +08:00
claude-code-best
86fa5f81ad
chore: 清理 src 下 113 项未使用导入和死代码
...
删除未使用的文件(BuiltinStatusLine.tsx、4 个重复的 .ts stub)、
移除约 55 个文件中未使用的 React 导入、
清理约 50 处未使用的导入/变量/参数。
净减少 ~296 行代码,precheck 4077 测试全部通过。
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-05 20:05:15 +08:00
claude-code-best
4a5579246e
fix: 优化 ModelPicker 副标题和 resume 错误提示的可操作性
...
- ModelPicker 副标题从技术说明改为操作提示(effort 调整、1M 切换)
- /resume 错误提示添加 "Run /resume to browse" 操作引导
- 新增 6 个测试覆盖模型选择器、会话恢复和 cost 消息文案
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-05 02:14:07 +08:00
claude-code-best
52463ce398
style: 完成所有文件的lint
2026-05-01 21:39:30 +08:00
Askhz
2f7fc7959d
fix: 修复 sideQuery/模型选择在 CoStrict 和 OpenAI provider 下的问题
...
- sideQuery:新增 openai/costrict provider 分支,分别走各自的 base_url
而非 Anthropic API;提取 sideQueryOpenAICompat 共用转换逻辑;
CoStrict 分支统一使用主循环模型(getMainLoopModel)
- ConsoleOAuthFlow:CoStrict 登录选模型后同步写入 settings.json
- /model 命令:CoStrict provider 下模型切换持久化到 settings.json;
支持 costrict-login 触发登录并重载模型列表;未登录时提示先 /login
- modelOptions:CoStrict provider 展示服务器动态模型列表;
仅对 Anthropic 兼容 provider 注入自定义模型到选项列表
- configs:补充 CoStrict 的 claude-opus-4-7 模型配置
- cli:默认禁用非必要 Anthropic 流量(CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-29 18:02:53 +08:00