360 Secure SkillHub
360 安全技能中心

Dagny Nostr (nak)

该 Skill 提供使用 nak 命令行工具管理 Nostr 的操作说明,包括生成密钥、发布笔记、按 root/reply 标签回复线程、查询回复和提及,并使用环境变量中的 nsec 签名。默认连接 Primal relay,需要网络与 NOSTR_SECRET_KEY,nak 需另行安装。

edwardbickerton
edwardbickerton
热度 67.43
最近更新 2026-05-17 12:15:03
分类:营销依赖:代码执行 / 第三方 API应用场景:社交媒体 / 自动化脚本 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add dagny-nostr-nak
Metadata
name
dagny-nostr-nak
description
Manage Nostr posting and engagement via the nak CLI. Use for creating notes, replying in threads, tagging npubs, checking replies/mentions, monitoring a relay (default wss://relay.primal.net), and publishing events with correct root/reply tags. Requires access to NOSTR_SECRET_KEY (nsec) for signing/publishing.

Nostr (nak)

Overview

Use nak for all Nostr actions: publish notes, reply in threads, and query relays for replies/mentions. Default relay: wss://relay.primal.net unless the user specifies another.

Install / Update nak

  • Repo: https://github.com/fiatjaf/nak
  • Install (script): curl -sSL https://raw.githubusercontent.com/fiatjaf/nak/master/install.sh | sh
  • Update: re-run the install script above (it installs latest)
  • Tip: review the script before running if you want to audit what it does.

Onboarding (keys)

  • Generate a new key: nak key generate (prints nsec + npub)
  • Save the secret: store NOSTR_SECRET_KEY in a shell profile or a local .env with restricted permissions.
    • Example: export NOSTR_SECRET_KEY="nsec1..."
    • Optional: chmod 600 .env if you store it locally.
    • Prefer env vars over inline --sec in commands.

Quick Start (common tasks)

  • Post a note: nak event -k 1 --sec $NOSTR_SECRET_KEY -c "..." <relay>
  • Reply to a note: include root and reply tags (see below)
  • Check replies: nak req -k 1 -e <event_id> -l <N> <relay>
  • Check mentions: nak req -k 1 -p <your_pubkey_hex> -l <N> <relay>

Workflow: Posting & Replies

1) Create a new note

  • Build content.
  • Publish:
    nak event -k 1 --sec $NOSTR_SECRET_KEY -c "<content>" wss://relay.primal.net
    

2) Reply to a reply (correct threading)

Always include both root and reply tags so clients display it as a reply:

  • root = original top‑level note id
  • reply = the specific note you’re replying to

Use -t e="<id>;<relay>;root" and -t e="<id>;<relay>;reply".

Example:

nak event -k 1 --sec $NOSTR_SECRET_KEY \
  -t e="<root_id>;wss://relay.primal.net;root" \
  -t e="<reply_id>;wss://relay.primal.net;reply" \
  -p <other_pubkey_hex> \
  -c "<reply content>" \
  wss://relay.primal.net

3) Check for replies to a note

nak req -k 1 -e <root_id> -l 20 wss://relay.primal.net

4) Check mentions of your pubkey

nak req -k 1 -p <your_pubkey_hex> -l 20 wss://relay.primal.net

Conventions

  • Default relay: wss://relay.primal.net
  • Prefer NOSTR_SECRET_KEY env var instead of inline --sec.
  • When tagging users, include -p <npub/hex>.
  • For human-facing links, encode with nak encode nevent ... and format as https://primal.net/e/<nevent>.

References

  • Use nak event --help and nak req --help for flag details.