claude-code-best
bd6448ecda
fix: 修正顺序
2026-04-12 23:12:09 +08:00
Eric-Guo
711440474c
Add brave as alternative WebSearchTool
2026-04-12 22:23:11 +08:00
claude-code-best
09fc515edb
feat: 远程群控 ( #243 )
...
* feat: restore pipe IPC, LAN pipes, monitor tool, and PR-package features
Core IPC system (UDS_INBOX):
- PipeServer/PipeClient with UDS + TCP dual transport, NDJSON protocol
- PipeRegistry: machineId-based role assignment, file locking
- Master/slave attach, prompt relay, permission forwarding
- Heartbeat lifecycle with parallel isPipeAlive probes
- Commands: /pipes, /attach, /detach, /send, /claim-main, /pipe-status
LAN Pipes (LAN_PIPES):
- UDP multicast beacon (224.0.71.67:7101) for zero-config LAN discovery
- PipeServer TCP listener, PipeClient TCP connect mode
- Heartbeat auto-attaches LAN peers via TCP
- Cross-machine attach allowed regardless of role
- /pipes shows [LAN] peers with role + hostname/IP
- SendMessageTool supports tcp: scheme with user consent
Architecture — extracted hooks from REPL.tsx (~830 lines → ~20 lines):
- usePipeIpc: lifecycle (bootstrap, handlers, heartbeat, cleanup)
- usePipeRelay: slave→master message relay via module singleton
- usePipePermissionForward: permission request/cancel forwarding
- usePipeRouter: selected pipe input routing with role+IP labels
- Shared ndjsonFramer.ts replaces 3 duplicate NDJSON parsers
Key fixes applied during development:
- Multicast binds to correct LAN interface (not WSL/Docker)
- Beacon ref stored as module singleton (not Zustand state mutation)
- Heartbeat preserves LAN peers in discoveredPipes and selectedPipes
- Disconnect handler calls removeSlaveClient (fixes listener leak)
- cleanupStaleEntries probes without lock, writes briefly under lock
- getMachineId uses async execFile (not blocking execSync)
- globalThis.__pipeSendToMaster replaced with setPipeRelay singleton
- M key only toggles route mode when selector panel is expanded
- User prompt displayed in message list on pipe broadcast
- Broadcast notifications show [role] + hostname/IP for LAN peers
Other restored features:
- Monitor tool: /monitor command, MonitorTool, MonitorMcpTask lifecycle
- Daemon supervisor and remoteControlServer command
- Tools: SnipTool, SleepTool, ListPeersTool, SendUserFileTool,
WebBrowserTool, WorkflowTool, and 10+ stub→implementation rewrites
- Feature flags: UDS_INBOX, LAN_PIPES, MONITOR_TOOL, FORK_SUBAGENT,
KAIROS, COORDINATOR_MODE, WORKFLOW_SCRIPTS, HISTORY_SNIP
Tests: 2190 pass / 0 fail (15 new: lanBeacon 7, peerAddress 8)
* fix: resolve merge conflicts and fix all tsc/test errors after main merge
- Export ToolResultBlockParam from Tool.ts (14 tool files fixed)
- Migrate ink imports from ../../ink.js to @anthropic/ink (7 files)
- Fix toolUseID → toolUseId typo in monitor.ts and MonitorTool.tsx
- Add fallback values for string|undefined type errors (8 locations)
- Fix AppState type in assistant.ts, add NewInstallWizard stubs
- Fix ParsedRepository.repo → .name in subscribe-pr.ts
- Fix AgentId/string type mismatch in BackgroundTasksDialog.tsx
- Fix PipeRelayFn return type in pipePermissionRelay.ts
- Use PipeMessage type in usePipeRelay.ts
- Fix lanBeacon.test.ts mock type assertions
- Create missing MouseActionEvent class for ink package
- Use ansi: color format instead of bare "green"/"red"
- Resolve theme.permission access via getTheme()
Result: 0 tsc errors, 2496 tests pass, 0 fail
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* fix: 恢复 /poor 的说明
---------
Co-authored-by: unraid <local@unraid.local >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-11 23:22:55 +08:00
claude-code-best
2fea429dc6
feat: 添加对 langfuse 监控的支持 ( #242 )
...
* docs: 更新类型检查的 CLAUDE.md
* feat: 添加模型 1M 上下文切换
* chore: remove prefetchOfficialMcpUrls call on startup
* docs: 添加 git commit 规范
* feat: 第一次接入 langfuse
* fix: 修复 generation 的计时的错误
* feat: 添加多 agent 的监控
* feat: 添加 /poor 省流模式,toggle 关闭 extract_memories 和 prompt_suggestion
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* chore: 修复 lock 文件
* chore: 更新类型依赖
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-11 22:07:38 +08:00
claude-code-best
6a70056910
feat: 全部类型问题解决
2026-04-11 10:24:00 +08:00
claude-code-best
ff03fe7fcb
fix: 修复类型问题
2026-04-10 17:34:01 +08:00
claude-code-best
34bbc1d403
fix(types): replace all as any with proper type assertions
...
Eliminate unsafe `as any` casts across 21 non-test source files,
replacing them with specific type annotations:
- Bridge transport: use StdoutMessage type for write/writeBatch calls
- print.ts: type msg.request as Record<string, unknown> for unknown
SDK control subtypes; use StdoutMessage for output.enqueue()
- API providers (openai/grok/gemini): import ChatCompletion types,
type streams as AsyncIterable<ChatCompletionChunk>, type request
bodies as ChatCompletionCreateParamsStreaming
- Computer use executor: use Partial<ResolvePrepareCaptureResult>
for cross-platform screenshot result
- Components: replace Ink color string casts with proper typing
- Win32 bridge: type stdin as Writable after null check
All 2453 tests pass with 0 failures.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-09 23:51:33 +08:00
claude-code-best
a14d3dc8f0
fix(types): clean type fixes across 92 files
...
Apply proper TypeScript type corrections without any unsafe casts:
- Fix unknown/never/{} types from decompilation
- Correct function signatures and parameter types
- Add missing type declarations and interfaces
- Fix Ink component prop types
- Update API client/provider type annotations
Test files with mock data casts are included as-is (acceptable pattern).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-09 23:45:56 +08:00
claude-code-best
91b9366f64
refactor: 大规模迁移原有组件到 ink 包内
2026-04-07 22:26:45 +08:00
claude-code-best
e5782e732c
Revert "Revert "feat: 第一个可以用的 ink 组件抽象 ( #158 )" ( #175 )"
...
This reverts commit 88d4c3ba24 .
2026-04-07 16:17:48 +08:00
claude-code-best
a7d9a220bf
fix: 修复 main 文件及 "production" 的问题
2026-04-07 16:13:15 +08:00
claude-code-best
88d4c3ba24
Revert "feat: 第一个可以用的 ink 组件抽象 ( #158 )" ( #175 )
...
This reverts commit c445f43f8d .
2026-04-07 15:05:03 +08:00
claude-code-best
c445f43f8d
feat: 第一个可以用的 ink 组件抽象 ( #158 )
2026-04-06 23:56:45 +08:00
claude-code-best
5b1a52b8e0
更新大量 tsx 原始文件; 已经迁移 login panel; 部分 ( #121 )
...
* style(B1-1): 格式化 ink/buddy/cli/context/screens/tasks/services/keybindings/state (43 files)
纯格式化:移除分号、React Compiler import、import 多行展开。
修复了 Box.tsx 和 ScrollBox.tsx 中无效的 global.d.ts import。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* style(B1-2): 格式化 commands (79 files)
纯格式化:移除分号、React Compiler import、import 多行展开。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* style(B1-3): 格式化 components/messages,permissions,mcp,sandbox,shell (104 files)
纯格式化:移除分号、React Compiler import、import 多行展开。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* style(B1-4): 格式化 components/PromptInput,FeedbackSurvey,tasks,agents,skills,design-system,wizard (73 files)
纯格式化:移除分号、React Compiler import、import 多行展开。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* style(B1-5): 格式化 components其余 + hooks + tools (232 files)
纯格式化:移除分号、React Compiler import、import 多行展开。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* style(B1-6): 格式化 main/entrypoints/utils/moreright (21 files)
纯格式化:移除分号、React Compiler import、import 多行展开。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* docs: 更新 README,新增 Run.ps1/TODO.md,删除 V6.md
- README.md: 大幅重写,更详细版本历史和配置示例
- Run.ps1: 新增 Windows 启动脚本
- TODO.md: 新增包完成清单
- V6.md: 删除(架构重构规划已不适用)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* fix: 修复以前的问题
* fix: 修复 login 面板的问题
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-04 23:24:27 +08:00
claude-code-best
2cc626c1c3
fix: 修复测试文件
2026-04-03 20:11:09 +08:00
claude-code-best
e48da3956c
feat: 修正 web search 工具
2026-04-03 00:47:37 +08:00
claude-code-best
ce29527a67
test: 添加一大堆测试文件
2026-04-02 20:28:08 +08:00
claude-code-best
ac1f02958c
fix: 批量修正 external 字面量
2026-04-02 17:01:39 +08:00
claude-code-best
799dacc407
test: 新增一波测试文件
2026-04-02 16:21:24 +08:00
claude-code-best
8697c91668
feat: 完成测试 16-17
2026-04-02 16:03:20 +08:00
claude-code-best
006ad97fbb
test: 新增测试代码文件
2026-04-02 14:44:56 +08:00
claude-code-best
21ac9e441f
test: Phase 2-4 — 添加 12 个测试文件 (+321 tests, 968 total)
...
Phase 2 (轻 Mock): envUtils, sleep/sequential, memoize, groupToolUses, dangerousPatterns, outputLimits
Phase 3 (补全): zodToJsonSchema, PermissionMode, envValidation
Phase 4 (工具模块): mcpStringUtils, destructiveCommandWarning, commandSemantics
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-02 09:29:01 +08:00
claude-code-best
a28a44f9f7
test: 添加 FileEditTool/permissions/filterToolsByDenyRules 测试
...
- FileEditTool/utils.test.ts: 24 tests (normalizeQuotes, stripTrailingWhitespace, findActualString, preserveQuoteStyle, applyEditToFile)
- permissions/permissions.test.ts: 13 tests (getDenyRuleForTool, getAskRuleForTool, getDenyRuleForAgent, filterDeniedAgents)
- tools.test.ts: 扩展 5 tests (filterToolsByDenyRules 过滤逻辑)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-02 07:36:50 +08:00
claude-code-best
67baea3c7f
test: 添加 Tool 系统单元测试 (测试计划 01)
...
覆盖 buildTool、toolMatchesName、findToolByName、getEmptyToolPermissionContext、
filterToolProgressMessages、parseToolPreset、parseGitCommitId、detectGitOperation
共 46 个测试用例全部通过。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-01 21:32:45 +08:00
claude-code-best
33fe4940e1
fix: 启用 /loop 命令,移除 feature('AGENT_TRIGGERS') gate
...
isKairosCronEnabled() 依赖 feature('AGENT_TRIGGERS'),在反编译版本中
feature() 始终返回 false,导致 /loop skill 被禁用。简化为仅检查
CLAUDE_CODE_DISABLE_CRON 环境变量。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-01 11:53:32 +08:00
claude-code-best
7e15974be9
feat: 实现 4 个 NAPI 包 — modifiers/image-processor/audio-capture/url-handler
...
- modifiers-napi: 使用 Bun FFI 调用 macOS CGEventSourceFlagsState 检测修饰键
- image-processor-napi: 集成 sharp 库,macOS 剪贴板图像读取 (osascript)
- audio-capture-napi: 基于 SoX/arecord 的跨平台音频录制
- url-handler-napi: 完善函数签名(保持 null fallback)
- 修复 image-processor 类型兼容性问题
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-01 01:07:42 +08:00
claude-code-best
fac9341e73
feat: 全面清理类型错误 — tsc 零错误,any 标注全部消除
...
- 修复所有 33 个原始 tsc 编译错误(ink JSX 声明、类型不匹配、null check 等)
- 清理 176 处 `: any` 类型标注,全部替换为具体推断类型
- 修复清理过程中引入的 41 个回归错误
- 最终结果:0 tsc 错误,0 个非注释 any 标注
- Build 验证通过(25.75MB bundle)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-01 01:00:10 +08:00
claude-code-best
dd9cd782a7
feat: 问就是封包
2026-03-31 23:32:58 +08:00
claude-code-best
d7a729ca68
feat: 完成第二版类型清理
2026-03-31 23:03:47 +08:00
claude-code-best
4c0a655a1c
feat: 大规模清理 claude 的类型问题及依赖
2026-03-31 22:21:35 +08:00
claude-code-best
bd756cc369
feat: 完成stub
2026-03-31 20:40:16 +08:00
claude-code-best
f90eee85d8
feat: build
2026-03-31 19:22:47 +08:00