/nullcat-chan

本家ぬるきゃっとちゃん!のフォークリポジトリ

Primary LanguageTypeScriptMIT LicenseMIT

これってなに?

Misskey用のAiベースのBotです。

    _   __      ____           __  ________                __
   / | / /_  __/ / /________ _/ /_/ ____/ /_  ____ _____  / /
  /  |/ / / / / / / ___/ __ `/ __/ /   / __ \/ __ `/ __ \/ /
 / /|  / /_/ / / / /__/ /_/ / /_/ /___/ / / / /_/ / / / /_/
/_/ |_/\__,_/_/_/\___/\__,_/\__/\____/_/ /_/\__,_/_/ /_(_)

大きな変更点

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

導入方法

Node.js と npm と 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) true or false",
	"mecabDic": "MeCab の辞書ファイルパス",
	"memoryDir": "memory.jsonの保存先(オプション、デフォルトは'.'(レポジトリのルートです))",
	"shellgeiUrl": "シェル芸BotのAPIのURLです(デフォルトではhttps://websh.jiro4989.com/api/shellgei)"
}

npm install して npm run build して npm 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)"
}

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

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

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