mirror of
https://github.com/block/buzz.git
synced 2026-11-12 20:31:12 +00:00
Four inaccuracies in nest_skill.md caught by comparing against CLI source:
1. canvas get returns a JSON array of kind:40100 events (markdown in
`content`), not a plain markdown string. Agents parsing this as a
raw string would get the Nostr event wrapper, not the content.
2. reactions get returns a raw JSON array of kind:7 events, not the
aggregated {"reactions": [...]} shape. No aggregation happens in
cmd_get_reactions.
3. Error stderr category field values were placeholder text ("input error",
"network/relay error") instead of the actual enum values emitted by
error.rs: user_error, relay_error, network_error, auth_error, key_error.
4. set-presence documents as working but cmd_set_presence has an explicit
comment noting it always fails — kind:20001 is ephemeral and the relay
rejects it over HTTP POST. Added a "this will fail" caveat.
Also fixes a permission gap in nest.rs: create_dir_all(".claude/skills/
sprout-cli") created the intermediate .claude/ and .claude/skills/ dirs
with umask-default permissions (typically 755), but only the final
sprout-cli/ dir was chmod'd to 700. Lock down all three dirs in the
skill path, matching how NEST_DIRS are handled. Test updated to assert
all three dirs get 700 on Unix.
Docstring for ensure_nest_at updated to mention SKILL.md.