支持的 NIP 参考
nostrfy 实现的每个中继侧 NIP — 类型、说明和注意事项 — 以及 NIP-11 supported_nips 列表如何动态计算。
已实现的 NIP
| NIP | 说明 |
|---|---|
| 1 | 基础协议(事件、订阅) |
| 9 | 事件删除 |
| 11 | 中继信息文档 |
| 13 | 工作量证明 |
| 17 | 私信(kind 14 包装在 kind 15 中;开启 NIP-42 认证时,kind 1059 和临时 kind 21059 礼物包装仅向收件人提供) |
| 22 | 评论(kind 1111,通过 #e 索引线程化) |
| 26 | 委托事件签名 |
| 28 | 公共聊天(客户端侧:作为普通事件存储和提供,不公布) |
| 29 | 基于中继的群组 |
| 32 | 标签(kind 1985,#l/#L 已索引) |
| 33 | 参数化可替换事件 |
| 34 | git 相关(类型 1617-1619、1621、1622、1630-1633、30617/30618 — 通过 relay.enabled_git 可选启用,默认关闭) |
| 40 | 过期时间戳 |
| 42 | 客户端认证 |
| 43 | 中继访问元数据(角色)— 类型 33534/13534/8000/8001 加上临时 28934/28935/28936;中继签名的元数据受 AUTH 门控。邀请码通过 NIP-86 createclaim/deleteclaim 签发;携带已列码的 kind:28934 会接纳其作者 |
| 45 | 结果计数(COUNT) |
| 46 | Nostr Connect |
| 47 | Nostr Wallet Connect |
| 50 | 搜索能力(全文,按相关性排序) |
| 57 | 闪电 Zap(类型 9734/9735) |
| 59 | 礼物包装(仅向收件人提供) |
| 62 | 消除请求 |
| 65 | 中继列表元数据 |
| 66 | 中继发现与存活(类型 30166/10166 存储和提供;自动发布 kind 30166) |
| 67 | EOSE 完整性提示 |
| 70 | 受保护事件 |
| 77 | Negentropy 同步(失败的替换会按 NIP-77 用 NEG-ERR 关闭该 id) |
| 78 | 应用特定数据(kind 30078,受 AUTH 门控) |
| 84 | 高亮 |
| 85 | 可信断言(类型 30382/30383/30384/30385/10040,可寻址) |
| 86 | 中继管理 API |
| 87 | Cashu 和 Fedimint 公告(类型 38000/38172/38173) |
| 88 | 投票 |
| 94 | 文件元数据(kind 1063) |
| 98 | HTTP 认证 |
| A3 | 支付目标(kind 10133,可替换),草案;会被提供但不在 supported_nips 中公布 |
Blossom(BUD-01/02)不是 NIP,也不在 NIP-11 文档中公布 — 它作为
独立文件服务器运行在 [blossom] 主机名上。详情见 Blossom 文件服务器页面。
动态 NIP 公布
supported_nips 列表不是静态的:当某个 NIP 定义的所有类型都被中继的
访问控制拒绝时,它就会从列表中移除。
blocked_kinds— 屏蔽某个 NIP 的所有类型会隐藏它(例如屏蔽 kind 5 会隐藏 NIP-09)。只屏蔽部分类型则保留该 NIP。allowed_kinds— 类型只有被列出才被接受;所有类型都未列出的 NIP 会被隐藏。reject_ephemeral— 不在 NIP 强制豁免列表 (22242、27235、28934/28935/28936、24133、23194/23195、24242、21059) 中的临时类型会被拒绝,因此依赖它们的 NIP 会被隐藏。- 前置条件 — NIP-29、NIP-43 和 NIP-66 依赖中继签名的事件,没有
relay.private_key时会被隐藏;NIP-86 在未设置rpc.management_token或rpc.admin_pubkey时会被隐藏(否则每次 管理调用都被拒绝)。 - 没有专用类型的 NIP(
1、11、13、26、33、40、45、50、67、70、77)在启用时始终公布。
运行时所做的更改 — NIP-86 allowkind/disallowkind,或对 reject_ephemeral 的 SIGHUP 重载 — 会在下一次 NIP-11 获取中体现。 enabled_nips/disabled_nips 仍然需要重启。