mirror of
https://github.com/NanmiCoder/cc-haha
synced 2026-08-01 16:43:37 +08:00
Follow-ups to 9ef170bb, where the discovery path itself is sound but three surfaces around it are not. The desktop badge showed the same tooltip for both scopes, and that tooltip names ~/.agents/skills. A skill that ships inside a checked-out repository was therefore described as one the user had installed in their own home directory -- the least trusted source presented as the most trusted. Project-scope skills now get their own copy, in all five locales. The doctor listed both .agents targets unconditionally, so a user who set disableAgentSkillsDirectory (or the env var) still saw them reported, with an entry count if the directory had contents. That reads as "these skills are in use" when the loader is ignoring them. Skill directory names went into the catalog the model sees verbatim, one `- name: description` line per skill, with no validation. A name containing a line break writes entries of its own -- and .agents/skills is a directory other clients and repositories write into, so the name is not necessarily the user's. Names carrying control characters are now skipped. Deliberately narrower than the Agent Skills spec's lowercase-and-hyphens rule: existing .claude/skills directories predate it, and silently dropping one of those would be the worse failure. Also collapses the two spellings of the scoped dedup key -- the main loader joined with a raw NUL byte embedded in the source, the --add-dir path with a space -- into one helper, so the comment claiming both apply the same rule is true and the invisible byte is gone. Adds coverage for the two scopes 9ef170bb claimed but left untested: the hot-reload watcher (no test file existed for it at all) and on-demand monorepo discovery. Both were already correct; nothing was holding them that way.
Claude Code Haha Desktop
基于 Tauri 2 + React 的桌面客户端。
开发
bun install
bun run tauri dev
构建
# macOS (Apple Silicon)
./scripts/build-macos-arm64.sh
# Windows (x64, MSI only)
.\scripts\build-windows-x64.ps1
构建产物位于 build-artifacts/ 目录,文件名会显式包含平台、架构和包类型。
常见问题
macOS 提示"已损坏,无法打开"
xattr -cr /Applications/Claude\ Code\ Haha.app