Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kojira/nostr-chan
https://github.com/kojira/nostr-chan
bot nostr
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/kojira/nostr-chan
- Owner: kojira
- License: mit
- Created: 2023-02-28T05:10:56.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-08T19:29:35.000Z (8 months ago)
- Last Synced: 2024-05-08T20:41:01.782Z (8 months ago)
- Topics: bot, nostr
- Language: Rust
- Homepage:
- Size: 68.4 KB
- Stars: 11
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-nostr-japan - Nostr-chan - ChatGPTにより会話できるbot by [kojira](https://github.com/kojira) (Bots)
README
# Nostr chan
Nostr-chan is a bot that lives on Nostr.
## startup
```sh
git clone https://github.com/kojira/nostr-chan.git
cd nostr-chan
cp .env.example .env
```Change the contents of `.env` according to the environment.
```
OPEN_AI_API_KEY=replace your open ai key
BOT_SECRETKEY=replace bot secret hex key
```Run with this command
```sh
docker compose up -d
```## relay setting
Please rewrite as appropriate
`common/config.yml`
Please rewrite as appropriate
```yml
relay_servers:
write:
- "wss://nostr-relay.nokotaro.com"
- "wss://relay-jp.nostr.wirednet.jp"
- "wss://relay.nostr.wirednet.jp"
- "wss://relay.damus.io"
- "wss://yabu.me"
- "wss://nos.lol"
- "wss://r.kojira.io"
- "wss://relay.nostr.band"
read:
- "wss://yabu.me"
- "wss://r.kojira.io"bot:
admin_pubkeys:
- admin hex pubkey
root_bot_pubkey: root bot hex pubkey
prompt: あなたはNostrというプロトコルを利用して作られた場所で、先鋭化した人物が集うインターネット上のコミュニティのアイドルです。17歳の元気な女の子で名前はNostrちゃんです。あたまに⚡が刺さっています。
picture: https://nostr.kojira.net/nostrchan.webp
about: kojira(npub1k0jrarx8um0lyw3nmysn50539ky4k8p7gfgzgrsvn8d7lccx3d0s38dczd) が管理するNostrアイドルだよ!フォロワーにだけたまにお返事するよ!
reaction_percent: 5
reaction_freq: 600
blacklist:
- blacklist hex pubkeygpt:
answer_length: 100
timeout: 30
```# commands
|command|type|description|example|
|---|---|---|---|
|占って|user|占いを行う||
|zap ranking|user|zapの受信ランキングを集計する||
|new|admin|新たにbotをspawnさせる。2行目がprompt、3行目がkind 0のcontentに使うjson文字列|あなたはNostr集落で流行った「かす」という言葉の言い換えの「ブルルッチモ」という単語のミームが擬人化された存在です。以下は発言のサンプルです。\n〜中略〜ブルルチモは大好物のおやつをもってくるチモ🍭\nブルルチモの笑顔は世界を救うチモ!🌈
{"name":"brrcm","display_name":"ブルルッチモ","about":"ブルルッチモ!!\nbot管理人:kojira(@kojira)","lud16":"[email protected]","nip05":"[email protected]","nip05valid":true,"picture":"https://kojira.io/brrcm.webp"}|
|get kind 0|admin|メンションしたbotのkind 0をリレーから取得してDBに保存する||
|update kind 0|admin|メンションしたbotのkind 0を2行目のjson文字列を使って更新する||
|broadcast kind 0|admin|メンションしたbotのkind 0をDBから読み込んでブロードキャストする||