npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

openclaw-misskey-channel

v0.1.5

Published

Misskey channel plugin for OpenClaw.

Readme

OpenClaw Misskey Channel

OpenClaw から Misskey を channel plugin として扱うための外部プラグインです。Misskey のメンション、返信、Misskey ネイティブチャンネル投稿を OpenClaw の inbound message として受け取り、OpenClaw 側から Misskey note、reply、channel post を送信できます。

必要環境

  • Node.js 24 以上
  • pnpm 10 以上
  • OpenClaw 2026.4.22 以上
  • Misskey bot 用アクセストークン

Misskey トークンには、少なくとも note 作成、reaction 作成、アカウント確認、必要に応じて drive file upload と channel/timeline 参照に必要な権限を付与してください。

インストール

公開済み package を使う場合:

openclaw plugins install @uboar/openclaw-misskey-channel

ローカルで試す場合:

pnpm install
pnpm build
openclaw plugins install /path/to/openclaw-misskey-channel

設定

設定は channels.misskey に書きます。hosttoken は必須です。hosthttps:///api を含めず、Misskey のホスト名だけを書くのが基本です。

単一アカウントの例:

{
  "channels": {
    "misskey": {
      "host": "misskey.example",
      "token": "MISSKEY_API_TOKEN",
      "allowFrom": ["@[email protected]"],
      "nativeChannels": [
        { "id": "9q...", "requireMention": true }
      ]
    }
  }
}

複数アカウントの例:

{
  "channels": {
    "misskey": {
      "defaultAccount": "main",
      "allowFrom": ["@[email protected]"],
      "accounts": {
        "main": {
          "host": "misskey.example",
          "token": "MISSKEY_API_TOKEN"
        },
        "sub": {
          "host": "sub.example",
          "token": "MISSKEY_API_TOKEN_FOR_SUB"
        }
      }
    }
  }
}

hosttoken は、デフォルトアカウントに限り環境変数でも指定できます。

export MISSKEY_HOST=misskey.example
export MISSKEY_TOKEN=MISSKEY_API_TOKEN

主な設定項目:

  • allowFrom: inbound を許可する Misskey ユーザー。@user@host または user:<userId> を指定します。正規表現は /^@user@.+$/ または regex:^user:alice-[0-9]+$ の形式で指定できます。
  • allowUserIds: allowFrom に追加する Misskey user id の配列です。
  • allowAccts: allowFrom に追加する acct の配列です。
  • dmSecurity: allowallowlistdeny。既定は allowlist です。
  • nativeChannels: 購読する Misskey ネイティブチャンネルです。
  • requireMention: native channel 投稿で bot 宛メンションを要求するかどうかです。既定は true です。
  • visibility: 送信 note の既定公開範囲です。publichomefollowersspecified を指定できます。
  • localOnly: 送信 note を local only にするかどうかです。

送信先

OpenClaw の message send から使う target は次の形式です。

  • channel:<misskeyChannelId>: Misskey ネイティブチャンネルへ投稿します。
  • note:<noteId>: 指定 note への返信として投稿します。
  • user:<userId>: specified visibility で指定ユーザー宛に投稿します。
  • user:@name@host: 本文先頭に acct mention を付けて投稿します。

例:

openclaw message send --channel misskey --target channel:9q... --text "こんにちは"
openclaw message send --channel misskey --target note:abc123 --text "返信です"
openclaw message send --channel misskey --target user:@[email protected] --text "確認お願いします"

動作方法

起動時にプラグインは POST /api/i で Misskey token を検証します。送信時は POST /api/notes/create を使い、添付ファイルがある場合は POST /api/drive/files/create でアップロード済み file id を扱います。

受信は Misskey Streaming API を使います。

  • wss://<host>/streaming?i=<token> に接続します。
  • main channel を購読し、mentionreply、関連する notification を inbound message に変換します。
  • nativeChannels に指定された Misskey channel は channel stream として購読します。
  • native channel 投稿は、requireMention: true の場合 bot 宛メンションがある投稿だけを処理します。
  • OpenClaw の messages.ackReaction / messages.ackReactionScope に従い、処理対象の note には POST /api/notes/reactions/create で ack reaction を付けます。
  • bot 自身の投稿は self echo として無視します。
  • WebSocket 切断後は再接続し、購読を復元します。

開発

pnpm install
pnpm typecheck
pnpm test
pnpm build

package に含まれるファイルを確認する場合:

pnpm pack --dry-run

リリース手順

  1. 変更内容を確認します。
pnpm typecheck
pnpm test
pnpm build
pnpm pack --dry-run
  1. package.jsonversion を更新します。
pnpm version patch --no-git-tag-version

必要に応じて patchminor または major に変更します。

  1. もう一度検証します。
pnpm typecheck
pnpm test
pnpm build
pnpm pack --dry-run
  1. npm に公開します。
npm publish --access public
  1. 公開後、OpenClaw 側でインストール確認します。
openclaw plugins install openclaw-misskey-channel
openclaw plugins list
  1. Misskey bot token を設定した状態で gateway を起動し、次を確認します。
  • bot 宛メンションが OpenClaw に inbound として届くこと
  • channel:<id> へ送信すると Misskey channel に投稿されること
  • note:<id> へ送信すると返信として投稿されること

v1 の範囲

v1 は Misskey のメンション、返信、native channel 投稿、note 送信、reply、media file id 連携を対象にしています。Misskey webhook mode、approval UI、編集/削除/reaction の完全同期、allowlist 以外の federated account discovery は対象外です。