Skip to content

feat(plugins): reading-list にキー 1 つの取り込み、night-post-guard に朝の予約投稿を追加 - #88

Merged
hitalin merged 2 commits into
mainfrom
feat/reading-list-hotkey-and-morning-schedule
Oct 17, 2026
Merged

hitalin merged 2 commits into
mainfrom
feat/reading-list-hotkey-and-morning-schedule

Conversation

@hitalin

@hitalin hitalin commented Oct 17, 2026 •

Copy link
Copy Markdown
Collaborator

なぜ

NoteDeck 1.85.0 / 1.85.2 で閉じた notedeck 側 issue のうち、misstore がまだ使っていなかった capability を配布物に反映する。

  • notedeck#1243 (1.85.2): Nd:register_command のコマンドにキーバインド (アプリ内 / OS グローバル) が届くようになった
  • notedeck#1247 (1.85.0): drafts.create に scheduledAt + isActuallyScheduled が入った

変更

reading-list 1.1.0

  • コマンド「後で読む: フォーカス中のノートを追加」: column.focusedNote で今のノートをそのアカウントの「後で読む」クリップへ
  • コマンド「後で読む: クリップボードのノート URL を追加」: clipboard.read のテキストが https://<host>/notes/<id> なら Mk:api("ap/show") で (リモートでも) 自分のサーバー上のノートに解決して追加。OS グローバルショートカットに割り当てると NoteDeck が背面でも動く
  • クリップ解決・アカウント指定をノートメニューと共通化 (clips.* に accountId を明示)
  • permissions に notes.read / clipboard / account.read、minNoteDeckVersion 1.85.2
  • キーの割当はキーバインド設定の「プラグイン」節で行う (登録時に shortcuts を宣言する口は無い)

night-post-guard 1.1.0

  • 投稿フォームのメニューに「朝 N:00 に予約投稿」(設定 morningHour 既定 8、scheduleVisibility 既定 public)。本文と CW を drafts.create に次の朝の scheduledAt + isActuallyScheduled: true で渡し、確認を通ったらフォームを空にする
  • interruptor 方式は不可 (同期実行で Nd:call を呼べず、null を返しても投稿は止まらず、scheduledAt を足しても本家 Misskey では予約にならない) ため post_form_action 方式
  • 公開範囲は handler に渡る form ({text, cw}) に無いので設定に従う。予約投稿に未対応のサーバーでは drafts.create が throw して止まる旨を description に明記
  • Nd:call を使うため導出 runsOn は notedeck のみになる。capabilities は daily-note と同じ notedeck-api に合わせた

検証

  • @syuilo/aiscript@1.2.1 + NoteDeck 互換モック env で handler を直接叩くテスト 18 本 (フォーカス / クリップボード URL の解析と非 URL の拒否 / 翌朝・同日・ちょうど 8:00 の scheduledAt / キャンセル時はフォームを消さない / 既存のノートメニューと深夜ガードの回帰) すべて通過
  • pnpm contract:verify 149 件合格、check-registry-integrity OK、registry:build 済み

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features
    • Read Later can now save the focused note or a note linked in the clipboard, with support for command shortcuts.
    • Night Post Guard adds an option to schedule a post for the next morning, with configurable time and visibility.
  • Updates
    • Both plugins are updated to version 1.1.0 and require newer NoteDeck versions for the added features.

NoteDeck 1.85.x で増えた capability を使う 2 件の更新。

- reading-list 1.1.0: コマンド「フォーカス中のノートを追加」(column.focusedNote) と
  「クリップボードのノート URL を追加」(clipboard.read → Mk:api ap/show で
  リモートのノートも自分のサーバー上の noteId に解決) を Nd:register_command で
  登録する。1.85.2 からプラグインのコマンドにキーバインド (アプリ内 / OS
  グローバル) が届く (notedeck#1243) ので、キーバインド設定の「プラグイン」節で
  割り当てると 1 キーで溜められる。クリップ解決とアカウント指定は
  ノートメニューと共通化し、clips.* に accountId を明示する
- night-post-guard 1.1.0: 投稿フォームのメニューに「朝 N:00 に予約投稿」を足す。
  本文と CW を drafts.create の scheduledAt + isActuallyScheduled (1.85.0、
  notedeck#1247。サーバーは Misskey 2025.10+) で次の朝の予約投稿にし、確認を
  通ったらフォームを空にする。interruptor は同期実行で Nd:call を呼べず
  投稿も止められないため post_form_action 方式にした。公開範囲はフォームから
  取れないので設定 scheduleVisibility に従う

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
✅ Deployment successful!
View logs
misstore cd71594 Oct 17 2026, 12:33 PM

@coderabbitai

coderabbitai Bot commented Oct 17, 2026

Copy link
Copy Markdown

Review in Change Stack →

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 0df7008e-7fd2-49a4-be0b-39c5cd0516c6
📥 Commits

Reviewing files that changed from the base of the PR and between ebd8606 and 51ca6d2.

📒 Files selected for processing: 14
  • public/registry/index.json
  • public/registry/plugins.json
  • public/registry/plugins/night-post-guard/api.json
  • public/registry/plugins/night-post-guard/locales/en.json
  • public/registry/plugins/night-post-guard/meta.json
  • public/registry/plugins/night-post-guard/plugin.is
  • public/registry/plugins/reading-list/api.json
  • public/registry/plugins/reading-list/locales/en.json
  • public/registry/plugins/reading-list/meta.json
  • public/registry/plugins/reading-list/plugin.is
  • public/registry/queries.json
  • public/registry/skills.json
  • public/registry/themes.json
  • public/registry/widgets.json
+---------------------------------------------------+
| Vibe code cleanup in progress... Expect swearing. |
+---------------------------------------------------+
  \
   \     /)/)
        ( '')
        /  |
      o(___)
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@hitalin hitalin self-assigned this Oct 17, 2026
@hitalin
hitalin merged commit 54ab34f into main Oct 17, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant