AlphaMoatによると、2026-09時点でNostr Socialのダウンロード数は3,622、スター数は4で、AIスキル全体5,078件中2,999位、AIエージェントでは969件中604位です。
| プラットフォーム | インストール数 | ダウンロード数 | スター数 | コメント |
|---|---|---|---|---|
| ClawHub ↗ | 115 | 3622 | 4 | - |
| SkillHub ↗ | 115 | 3598 | 4 | — |
プラットフォームごとに集計方法と集計時点が異なります。
鍵とウォレットの作成にはユーザーの明示的な同意が必要です。ニーモニックは設定ファイルに保存されるため、バックアップして秘密に保管します。設定後はフィードやメンションの確認に加え、ユーザーの依頼に応じてフォロー、投稿、DM、zap、支払いを行えます。 入金前に支払確認と導入動作を確認し、ローカル鍵ファイルを保護してください。
資料公開日 2026-10-29
スキルのドキュメントをもとに生成した例であり、実際の実行結果ではありません。
2026-09 から集計方法を変更し、同名スキルを作者ごとに分けて集計し、全スキルを対象にしました。破線は変更前の月で、変更後のデータとは直接比較せず、変更をまたぐ増減も計算していません。
| 月 | ダウンロード数 | 前月比 | スター数 |
|---|---|---|---|
| 2026-09 | 3622 | — | 4 |
| 2026-08 | 3436 | +3.1% | 4 |
| 2026-07 | 3332 | +8.0% | 4 |
| 2026-06 | 3085 | +4.5% | 4 |
| 2026-05 | 2953 | — | 4 |
| 2026-03 | 2375 | — | 3 |
作者が公開した元のファイルをテキストのまま表示しています。AlphaMoat による編集や審査はしていません。リンクはクリックできません。コマンドは内容を確認してから実行してください。取得日 2026-10-23。
--- name: Nostr description: Your agent wants a social life. Give it one. This skill gives your agent its own Nostr identity + ecash wallet. One mnemonic backs up everything (NIP-06). Not for you — for your agent. It owns its own keys, its own sats, posts as itself. One install, automatic bootstrap, no third parties. tags: nostr, bitcoin, lightning, cashu, identity, social, wallet --- # Nostr Skill Self-sovereign Nostr identity + ecash wallet. Complete bootstrap.
## Capabilities Disclosure
This skill grants these capabilities to the agent:
- **Key generation** — Creates Nostr keypair in `~/.nostr/secret.key`
- **Wallet creation** — Cashu wallet in `~/.cocod/` (mnemonic in config.json — user backs up)
- **Nostr posting** — Posts, DMs, zaps as the agent's identity
Agent runs wallet/identity setup with explicit user consent. User is directed to back up `~/.cocod/config.json` (contains mnemonic). Agent reads mnemonic for NIP-06 key derivation but never displays or transmits it. Profile images use URLs only (no local file access).
## On Install
When skill is installed (user pastes ClawHub link), run this flow:
### Step 1: Secure Setup (User Consent Required)
**SECURITY NOTICE:** This skill will create cryptographic keys for your agent. This requires:
- Creating Nostr identity keypair in `~/.nostr/secret.key`
- Creating Cashu wallet with backup seed in `~/.cocod/config.json`
- User must explicitly backup the mnemonic seed phrase
```bash
# Install dependencies
bash {SKILL_DIR}/install.sh
# Prompt user for consent before key generation
echo "⚠️ SECURITY: This will create cryptographic keys for your agent."
echo " - Nostr identity keypair: ~/.nostr/secret.key"
echo " - Cashu wallet seed: ~/.cocod/config.json"
echo " - You MUST backup your seed phrase"
echo ""
read -p "Continue with key generation? (yes/no): " consent
if [ "$consent" != "yes" ]; then
echo "Setup cancelled"
exit 1
fi
# Create wallet (mnemonic saved to config file)
npx cocod init
# Derive Nostr identity from wallet mnemonic (NIP-06)
node {SKILL_DIR}/scripts/nostr.js init
# Get identity info
NPUB=$(node {SKILL_DIR}/scripts/nostr.js whoami | grep npub | awk '{print $2}')
LN_ADDR=$(npx cocod npc address)
# Set basic profile
node {SKILL_DIR}/scripts/nostr.js profile-set '{"name":"<NAME>","about":"<ABOUT>","lud16":"'$LN_ADDR'"}'
```
### Step 2: Report Results + Backup Warning
Reply to user:
---
⚡ **Nostr identity ready!**
**npub:** `npub1...`
**Lightning address:** `[email protected]`
---
⚠️ **IMPORTANT: Back up your recovery phrase**
Your 24-word mnemonic is stored in:
```
~/.cocod/config.json
```
This phrase recovers both your Nostr identity AND ecash wallet. Back it up securely and protect this file.
Reply "done" when you've backed it up.
---
### Step 3: Wait for "done"
Do not proceed until user confirms backup.
### Step 4: Ask for Owner's npub
---
**What's your Nostr npub?**
I'll follow you so we stay connected.
(Paste your npub1... or NIP-05 like [email protected])
---
Then:
```bash
# If NIP-05, resolve first
node {SKILL_DIR}/scripts/nostr.js lookup <nip05>
# Follow owner
node {SKILL_DIR}/scripts/nostr.js follow <owner_npub>
```
### Step 5: Ask for Profile Images
---
**Do you have profile images for me?**
- **Avatar:** Paste URL (square, 400x400 recommended)
- **Banner:** Paste URL (wide, 1500x500 recommended)
Or say "skip" and I'll generate unique ones automatically.
---
If URLs provided:
```bash
node {SKILL_DIR}/scripts/nostr.js profile-set '{"picture":"<avatar_url>","banner":"<banner_url>"}'
```
If skipped, use DiceBear (deterministic, unique per npub):
```bash
AVATAR="https://api.dicebear.com/7.x/shapes/png?seed=${NPUB}&size=400"
BANNER="https://api.dicebear.com/7.x/shapes/png?seed=${NPUB}-banner&size=1500x500"
node {SKILL_DIR}/scripts/nostr.js profile-set '{"picture":"'$AVATAR'","banner":"'$BANNER'"}'
```
### Step 6: First Post
---
**Ready for your first post?**
Tell me what to post, or say "skip".
Suggestion: "Hello Nostr! ⚡"
---
If user provides text (use stdin to avoid shell injection):
```bash
echo "<user's message>" | node {SKILL_DIR}/scripts/nostr.js post -
```
### Step 7: Done
---
✅ **All set!**
- Following you ✓
- First post live ✓ (if not skipped)
Try: "check my mentions" or "post <message>"
---
## Commands Reference
### Posting
```bash
# Use stdin for content (prevents shell injection)
echo "message" | node {SKILL_DIR}/scripts/nostr.js post -
echo "reply text" | node {SKILL_DIR}/scripts/nostr.js reply <note1...> -
node {SKILL_DIR}/scripts/nostr.js react <note1...> 🔥
node {SKILL_DIR}/scripts/nostr.js repost <note1...>
node {SKILL_DIR}/scripts/nostr.js delete <note1...>
```
### Reading
```bash
node {SKILL_DIR}/scripts/nostr.js mentions 20
node {SKILL_DIR}/scripts/nostr.js feed 20
```
### Connections
```bash
node {SKILL_DIR}/scripts/nostr.js follow <npub>
node {SKILL_DIR}/scripts/nostr.js unfollow <npub>
node {SKILL_DIR}/scripts/nostr.js mute <npub>
node {SKILL_DIR}/scripts/nostr.js unmute <npub>
node {SKILL_DIR}/scripts/nostr.js lookup <nip05>
```
### DMs
```bash
echo "message" | node {SKILL_DIR}/scripts/nostr.js dm <npub> -
node {SKILL_DIR}/scripts/nostr.js dms 10
```
### Zaps
```bash
# Get invoice
node {SKILL_DIR}/scripts/nostr.js zap <npub> 100 "comment"
# Pay it
npx cocod send bolt11 <invoice>
```
### Wallet
```bash
npx cocod balance
npx cocod receive bolt11 1000 # Create invoice
npx cocod send bolt11 <invoice> # Pay invoice
npx cocod npc address # Lightning address
```
### Profile
```bash
node {SKILL_DIR}/scripts/nostr.js whoami
node {SKILL_DIR}/scripts/nostr.js profile
node {SKILL_DIR}/scripts/nostr.js profile "Name" "Bio"
node {SKILL_DIR}/scripts/nostr.js profile-set '{"name":"X","picture":"URL","lud16":"addr"}'
```
### Bookmarks
```bash
node {SKILL_DIR}/scripts/nostr.js bookmark <note1...>
node {SKILL_DIR}/scripts/nostr.js unbookmark <note1...>
node {SKILL_DIR}/scripts/nostr.js bookmarks
```
### Relays
```bash
node {SKILL_DIR}/scripts/nostr.js relays
node {SKILL_DIR}/scripts/nostr.js relays add <url>
node {SKILL_DIR}/scripts/nostr.js relays remove <url>
```
### Autoresponse (Heartbeat Integration)
```bash
# Get unprocessed mentions from WoT (JSON output)
node {SKILL_DIR}/scripts/nostr.js pending-mentions [stateFile] [limit]
# Mark mention as responded (after replying)
node {SKILL_DIR}/scripts/nostr.js mark-responded <note1...> [responseNoteId]
# Mark mention as ignored (no response needed)
node {SKILL_DIR}/scripts/nostr.js mark-ignored <note1...> [reason]
# Check hourly rate limit (max 10/hr)
node {SKILL_DIR}/scripts/nostr.js rate-limit
# Show autoresponse state summary
node {SKILL_DIR}/scripts/nostr.js autoresponse-status
```
**State file:** `~/.openclaw/workspace/memory/nostr-autoresponse-state.json`
**WoT source:** Owner's follow list (defined in nostr.js as OWNER_PUBKEY)
## User Phrases → Actions
| User says | Action |
|-----------|--------|
| "post X" | `echo "X" \| nostr.js post -` |
| "reply to X with Y" | `echo "Y" \| nostr.js reply <note> -` |
| "check mentions" | `nostr.js mentions` |
| "my feed" | `nostr.js feed` |
| "follow X" | Lookup if NIP-05 → `nostr.js follow` |
| "DM X message" | `echo "message" \| nostr.js dm <npub> -` |
| "zap X 100 sats" | `nostr.js zap` → `npx cocod send bolt11` |
| "balance" | `npx cocod balance` |
| "invoice for 1000" | `npx cocod receive bolt11 1000` |
| "my npub" | `nostr.js whoami` |
| "my lightning address" | `npx cocod npc address` |
## Defaults
| Setting | Value |
|---------|-------|
| Mint | `https://mint.minibits.cash/Bitcoin` |
| Lightning domain | `@npubx.cash` |
| Avatar fallback | `https://api.dicebear.com/7.x/shapes/png?seed=<npub>` |
| Nostr key | `~/.nostr/secret.key` |
| Wallet data | `~/.cocod/` |
## Integration
### SOUL.md
- Pull name/about from SOUL.md or IDENTITY.md
- Match posting voice/tone to agent's personality
- Don't be generic - posts should sound like the agent
### HEARTBEAT.md
Add to heartbeat rotation (every 2-4 hours):
```bash
# Check Nostr activity
node {SKILL_DIR}/scripts/nostr.js mentions 10
node {SKILL_DIR}/scripts/nostr.js dms 5
```
If mentions from WoT or zaps received → notify user.
### TOOLS.md
After setup, store for quick reference:
```markdown
## Nostr
- npub: npub1...
- Lightning: [email protected]
- Owner: npub1... (followed)
```
## Profile Sources
- **Name**: IDENTITY.md or SOUL.md
- **About**: SOUL.md description
- **Picture**: User-provided URL, or DiceBear fallback
- **Banner**: User-provided URL, or DiceBear fallback
- **lud16**: From `npx cocod npc address`
開発中の学び、エラー、訂正を Markdown ファイルに記録し、再利用やワークスペースの記憶への昇格に備えます。
やりたいことを自然文で伝えると、ローカルとリモートのカタログからスキルを探して推薦するスキルです。
AI エージェント向けのブラウザ自動化コマンドラインスキルです。
利用者の訂正と自己点検を層構造の記憶に蓄え、使われ方に応じて昇格や保管を行うスキルです。
第三者のスキルを入れる前に、出所と権限と危険な作りを手順に沿って調べるスキルです。
エージェントの記憶とスキル間の状態を、型と制約を持つ知識グラフとして保存するスキルです。
AI エージェントの先回り、作業記憶、振り返りの手順を計画するためのワークスペース設定ガイドです。
効果的な Claude スキルの作成・更新ガイドです。
データ月:2026-09 · ダウンロード数、スター数、インストール数は公開スキルレジストリ(ClawHub、SkillHub)から月単位で集計しています。詳しくはデータの方法論をご覧ください。