核心用法
dagny-nostr-nak 是面向 Nostr 去中心化社交协议的命令行管理工具,基于 fiatjaf 开发的 nak CLI 实现。主要功能覆盖:
1. 密钥管理:生成新密钥对(nak key generate),建议通过 NOSTR_SECRET_KEY 环境变量存储 nsec 私钥,避免命令行历史泄露
2. 内容发布:创建文本笔记(kind 1 event),支持通过 -t 参数添加标签和提及
3. 线程回复:正确处理嵌套回复,需同时指定 root(原帖)和 reply(目标回复)标签,确保客户端正确渲染对话层级
4. 数据查询:检索指定事件的回复、监控自身公钥的提及通知,默认连接 wss://relay.primal.net
显著优点
- 协议原生:直接操作 Nostr 事件结构,无抽象层损耗,适合开发者调试和学习协议
- 轻量可控:单二进制文件,脚本友好,易于集成自动化工作流
- 中继灵活:可指定任意中继地址,不绑定特定服务商
潜在局限与风险
- 密钥暴露风险:命令行中直接使用
--sec参数会被 shell 历史记录,必须使用环境变量 - 无内置加密:私钥以明文形式存在于环境变量,依赖系统级的访问控制(如
chmod 600) - 协议复杂度:手动构造
e标签的root/reply标记容易出错,导致线程显示异常 - 中继可靠性:默认中继可能离线或审查,需自行维护中继列表
- 无恢复机制:nsec 丢失即永久失去身份,无中心化账户找回
适合人群
- Nostr 协议开发者、研究者
- 偏好命令行工作流的极客用户
- 需要自动化批量发布/监控的场景
常规风险提示
私钥管理是本技能的最大安全要素。建议:永远不在共享环境执行 nak 命令;定期备份 nsec 至离线介质;考虑配合硬件签名方案(如 nostr-tools + Nostr Connect)替代纯 CLI 签名。