mcpField
W
wjs-looping-feedback

wjs-looping-feedback

github.com/jianshuoエージェントワークフロー13792 回インストール今日更新
リポジトリ

wjs-looping-feedback について

wjs-looping-feedbackは、GitHub IssuesとActionsを使ったフィードバック処理ループをWebサイトのリポジトリに導入するツールです。自分のリポジトリで訪問者の提案を扱う管理者向けで、Claude Codeがサイトを編集し、変更やデプロイ状況、取り消し手段を記録します。

主な機能

  1. 01GitHub Issueを事前入力するフローティングボタン
  2. 02許可リストによる投稿者の制限
  3. 03Claude Code Actionによるサイト編集
  4. 04コミット、台帳、ダッシュボードの自動更新
  5. 05フィードバックIssueからの変更取り消し

活用シーン

  1. 01Webサイトへの訪問者提案を収集
  2. 02リポジトリのGitHub Actionsで承認済み提案を反映
  3. 03提案に対応するコミットを確認して取り消し

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jianshuo/claude-skills --skill wjs-looping-feedback

インストール後、Claude Code で/wjs-looping-feedbackを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

.gitignore
package.json
README.md
assets/
config.sample.json
feedback-finalize.mjs
feedback-ledger.json
feedback-lib.mjs
feedback-widget.html
feedback.yml
INSTRUCTIONS.md
references/
install.md
scripts/
detect-site.mjs
tests/
detect-site.test.mjs
finalize.test.mjs
lib.test.mjs

詳細

wjs-looping-feedback

任意のウェブサイトリポジトリに、自動駆動のフィードバックループを導入します。すべてリポジトリ所有者自身の GitHub Actions 上で実行され、Pro/Max OAuth トークンまたは所有者自身の ANTHROPIC_API_KEY で認証します。追加のサービスやバックエンドは不要です。

導入されるもの

  1. フローティングフィードバックボタン(GitHub Issue の入力欄を事前入力します。バックエンド不要、クライアント側にキーは不要です)。
  2. .github/workflows/feedback.yml — 許可リストによる確認 → Claude Code Action → 自動コミット → main にプッシュ(自動デプロイ)→ 台帳とダッシュボードを更新 → Issue をクローズ。
  3. /_feedback ダッシュボード — すべての提案、Claude が行った内容、コミット、ステータス、ワンクリックでの取り消し。
  4. .feedback/ の実行時ファイル:feedback-lib.mjs、feedback-finalize.mjs、INSTRUCTIONS.md、 feedback-ledger.json、config.json。

仕組み

訪問者がボタンをクリック → 提案を入力 → GitHub Issue が事前入力される(ラベル feedback)→ Actions が投稿者が FEEDBACK_ALLOWLIST に含まれているか確認(含まれていない場合は Issue をクローズ)→ Claude Code が .feedback/INSTRUCTIONS.md に従ってサイトを編集 → ワークフローが main にコミットし、 台帳とダッシュボードを更新 → デプロイで公開 → Issue にコミットと /_feedback へのリンクを含むコメントが追加されます。 取り消しも同じループで行います。Issue に revert: #N と指定します。

デプロイのトリガー — インストール前にお読みください(よくある落とし穴)

ワークフローは組み込みの GITHUB_TOKEN を使って main にプッシュします。次の 2 つのケースがあります。

  • 外部プッシュデプロイホスト(Cloudflare Pages の Git 接続、Vercel、Netlify):プッシュのたびに webhook が実行されるため、ボットのコミットも自動でデプロイされます。対応は不要です。
  • デプロイ自体が同じリポジトリ内の GitHub Actions ワークフローである場合(例:Actions を使った GitHub Pages):GitHub は再帰を防止するため、GITHUB_TOKEN によるプッシュで別のワークフローが起動されることを意図的に許可していません。そのため、デプロイワークフローの on: push は実行されません。変更は main に反映されますが、公開されません。デプロイワークフローに workflow_run トリガーを追加して連携してください(references/install.md の手順 4.5 を参照)。

インストール方法

references/install.md を読み、対象のリポジトリで手順に従ってください。サイトの種類(Hugo/Next.js/Astro/静的サイト)を判別し、アセットをコピーしてウィジェットを挿入します。また、ユーザーに求めるのは、GitHub ユーザー名の許可リストと認証情報(claude setup-token で取得した Pro/Max OAuth トークン、または ANTHROPIC_API_KEY)の 2 つだけです。

適用範囲(ルート 1)

ユーザー自身のリポジトリで、ユーザー自身の認証情報を使って実行されます。投稿者には GitHub アカウントが必要です。許可リストに含まれる投稿者のみが処理を開始できます。ホステッドサービスではないため、匿名投稿、課金、マルチテナントには対応していません。(将来的に GitHub App としてパッケージ化する場合も、ここにあるすべてのアセットを再利用できます。)

コメント