misskey.ioに住んでいるぬるきゃっとちゃん!の説明書

主な機能

フォローする

僕に「フォローして」って言ってくれたらフォローするよ

お話

「おはよう」「おやすみ」などと話しかけると反応するよ

リアクション

僕が設定されている特定のワードにリアクションするよ

占い

僕に「占って」と言うと、あなたの今日の運勢を占うよ

タイマー

指定した時間、分、秒を経過したら教えてくれるよ「3分40秒」のように単位を混ぜることもできるよ

リマインダー

@nullcat todo 寝る みたいに言ってくれたら1時間置きにリマインドするよ。その飛ばしたメンションか、僕からの催促に「やった」「やめた」など返信するとリマインダー解除されるよ
引用Renoteでメンションすることもできるよ
リマインダーの一覧は @nullcat todos で見れるよ

GitHub Status

僕に「GitHub」って言ってくれたら今のStatusを教えるよ

Cloud Flare Status

僕に「cloudflare」って言ってくれたら今のStatusを教えるよ

怪レい曰本语変換

僕に #怪しい日本語変換 っていうタグ付きで変換してほしい文章をメンションしてくれたら怪レい曰本语に変換するよ

やること決める

僕に「なにしよ」って言ってくれたらやることを決めるよ

気圧

僕に「気圧教えて」って言ってくれたら今の気圧を教えるよ

画像からアニメ予想機能

僕に「アニメ」って言って調べて欲しいアニメの画像を送ってくれたら予想したものを教えるよ

シェル芸機能

僕にメンションして #shellgei 又は #シェル芸 をつけてコマンドを送ってくれたら実行した結果を教えるよ(対応していないコマンドもあります)

呼び方を教える

僕が君のことをなんて呼べばいいか教えてくれたら、その名前で呼ぶよ!
親愛度が一定の値に達している必要があるよ
(チャットのみで反応するよ)

HappyBirthday

誕生日になったら僕が君の誕生日を祝うよ

バレンタイン

バレンタインになったら仲のいい子に僕がチョコレートをあげるよ

ping

僕に「ping」って言ってくれたらフォローするよで起きてるとき返信するよ!寝てるときは返信できないかも…

親愛度

僕は君に対する親愛度を持っているよ
僕にお話ししてくれたりすると、少しずつ上がるよ
親愛度によって反応が変化するよ!親愛度がある程度ないとしてくれないこともあるよ
たくさん話しかけてね

僕のリポジトリはここだよ

Aiとの大きな違い

  • 自動投稿の内容
  • 自動返信の内容
  • ゴママヨに反応
  • ゲーム機能と絵文字を自動生成するやつがない
  • GitHubのStatusがわかる
  • CloudflareのStatusがわかる
  • やることを決めてくれる
  • 気圧の状況を教えてくれる
  • 時報機能
  • シェル芸機能
  • 怪レい曰本语に変換してくれる機能
  • アニメ予想機能

導入方法

Node.js と pnpm と MeCab がインストールされている必要があります。

まず適当なディレクトリに git clone します。 次にそのディレクトリに config.json を作成します。中身は次のようにします:

{
	"host": "https:// + あなたのインスタンスのURL (末尾の / は除く)",
	"i": "ぬるきゃっとちゃん!として動かしたいアカウントのアクセストークン",
	"master": "管理者のユーザー名(オプション)",
	"notingEnabled": "ランダムにノートを投稿する機能。true(on) or false(off)",
	"keywordEnabled": "キーワードを覚える機能 (MeCab が必要) true or false",
	"serverMonitoring": "サーバー監視の機能(重かったりすると教えてくれるよ。)true or false",
	"mecab": "MeCab のインストールパス (ソースからインストールした場合、大体は /usr/local/bin/mecab) ",
	"mecabDic": "MeCab の辞書ファイルパス(オプション)",
	"memoryDir": "memory.jsonの保存先(オプション、デフォルトは'.'(レポジトリのルートです))",
	"shellgeiUrl": "シェル芸BotのAPIのURLです(オプション、デフォルトはhttps://websh.jiro4989.com/api/shellgei)"
	"gomamayo": "ゴママヨの意味をを表す絵文字を入れる(デフォルトだと:gomamayo:)",
	"love": "いいねやloveの意味をを表す絵文字を入れる(デフォルトだと:love_nullcatchan:)",
 	"antenna": "アンテナを受信したの意味をを表す絵文字を入れる(デフォルトだと:bibibi_nullcatchan:)",
	"nadenade": "なでるの意味をを表す絵文字を入れる(デフォルトだと:ablobcatfloofpat:)",
  	"erai": "えらいの意味をを表す絵文字を入れる(デフォルトだと:erait:)",
  	"unko": "あなた今うんこって言いましたねの意味をを表す絵文字を入れる(デフォルトだと:anataima_unkotte_iimashitane:)",
  	"ti": "ちの意味をを表す絵文字を入れる(デフォルトだと:_ti:)"
}

pnpm install して pnpm run build して pnpm start すれば起動できます。

Dockerで動かす

まず適当なディレクトリに git clone します。
次にそのディレクトリに config.json を作成します。中身は次のようにします: (MeCabの設定、memoryDirについては触らないでください)

{
	"host": "https:// + あなたのインスタンスのURL (末尾の / は除く)",
	"i": "ぬるきゃっとちゃん!として動かしたいアカウントのアクセストークン",
	"master": "管理者のユーザー名(オプション)",
	"notingEnabled": "ランダムにノートを投稿する機能。true(on) or false(off)",
	"keywordEnabled": "キーワードを覚える機能 (MeCab が必要) true or false",
	"mecab": "/usr/bin/mecab",
	"mecabDic": "/usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd/",
	"memoryDir": "data",
	"shellgeiUrl": "シェル芸BotのAPIのURLです(オプション、デフォルトではhttps://websh.jiro4989.com/api/shellgei)",
	"love": "いいねやloveの意味をを表す絵文字を入れる(デフォルトだと:love_nullcatchan:)",
	"gomamayo": "ゴママヨの意味をを表す絵文字を入れる(デフォルトだと:gomamayo:)",
 	"antenna": "アンテナを受信したの意味をを表す絵文字を入れる(デフォルトだと:bibibi_nullcatchan:)",
	"nadenade": "なでるの意味をを表す絵文字を入れる(デフォルトだと:ablobcatfloofpat:)",
  	"erai": "えらいの意味をを表す絵文字を入れる(デフォルトだと:erait:)",
  	"unko": "あなた今うんこって言いましたねの意味をを表す絵文字を入れる(デフォルトだと:anataima_unkotte_iimashitane:)",
  	"ti": "ちの意味をを表す絵文字を入れる(デフォルトだと:_ti:)"
}

pnpm install して pnpm run docker すれば起動できます。
docker-compose.ymlenable_mecab0 にすると、MeCabをインストールしないようにもできます。(メモリが少ない環境など)

dockerimageを配布しています

ここにある

注意!

一部の機能にはフォントが必要です。

NullcatChan!にはフォントは同梱されていないので、ご自身でフォントをインストールしてそのフォントをfont.ttfという名前でインストールディレクトリに設置してください。

記憶の保持

NullcatChan!は記憶の保持にインメモリデータベースを使用しており、nullcatchanのインストールディレクトリに memory.json という名前で永続化されます。