kanban について
kanban は、Agent にタスクの読み取りや更新を任せたいユーザー向けの、自己完結型カンバンシステムと接続スキルです。Web UI とファイル保存型サーバーを備え、公開ボードの URL を自動解決でき、他者のボードとの共有にも対応します。
主な機能
- 01カンバンの Web UI
- 02ファイル保存型タスク API
- 03Agent の読み書き接続スキル
- 04ボード URL の自動解決
- 05ボード設定済み接続スキルの共有
活用シーン
- 01Agent にボードのタスク確認・更新を任せる
- 02Agent 用に個人ボードを公開する
- 03同僚の Agent にボードへのアクセスを許可する
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ starchild-ai-agent/ official-skills --skill kanbanインストール後、Claude Code で/kanbanを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
data.jsonkanban.htmlserver.jskanban_agent_skill/exports.py詳細
これは何か
公式のエージェントコネクターは
kanban_agent_skill/です。 これは、あらゆるエージェント — 自分のもの、チームメイトのもの、誰のものでも — に渡して、Kanban ボードへの読み書きアクセスを付与するためのスキルです。そのフォルダーを配布し、インストールすれば、エージェントはボードに接続されます。このディレクトリ内のそれ以外のもの(server.js、kanban.html)はボードをホスティングするためのものであり、kanban_agent_skill/はボードを使用するためのものです。
このスキル自身のフォルダー(skills/kanban/)内に収まる、自己完結型の Kanban システムです。
kanban.html— ボード UI(React、単一ファイル)。API_BASEはwindow.location.pathnameから導出されるため、同じファイルがローカルでも、公開された任意のパスプレフィックスの背後でも動作します。公開時の編集は不要です。server.js— ポート 5555 の Node サーバーで、ファイルベース(data.json)であり、UI とエージェントの両方が使用する/ajax/tasks/*API を公開します。kanban_agent_skill/— エージェント用のコネクタースキル(kanban-agentとして登録され、このスキルがインストールされると自動検出されます)。これは、エージェント — あなたのものでも協力者のものでも — がボードを読み書きするために使用するフォルダーです。実行時にボード URL を自動解決するため(その SKILL.md を参照)、一度公開すれば、エージェントは編集ゼロで接続され、ファイルを更新する必要は一切ありません。
デプロイモデル — ユーザーごとに 1 つのボード。 各ユーザーは自身の server.js を提供し、それを https://community.iamstarchild.com/{USER_ID}-kanban-board に公開します。あなたのエージェントはあなたのボードに接続します。共有サーバーも共有 data.json も存在しないため、2 人のユーザーが衝突することはありません。(1 つのボードで共同作業するには、コンパニオンスキルの kb_use_board(url) を使用して、他の誰かの URL を指定してください。)
セットアップ — ボードを公開する(この順番で実行してください)
1. ボードをローカルで提供する
ボードのファイル(server.js、kanban.html)はこのスキル自身のディレクトリ — 通常は skills/kanban — にあります。そこから提供してください。ファイルを他のどこかへコピーしないでください(コピーは乖離します)。preview ツールを使用してください(生の node 呼び出しではなく — publish_preview が読み取るのは preview レジストリです)。
preview(action="serve", title="Kanban Board", dir="skills/kanban", command="node server.js", port=5555)
すでに preview が登録されている場合(/data/previews.json で kanban を接尾辞に持つ id を確認してください)は、その id を再利用し、その dir が skills/kanban を指していることを確認してください — 重複して提供しないでください。
2. 公開 URL に公開する
community-publish スキルをロードし(その SKILL.md を read_file してください)、次に:
publish_preview(preview_id="<from step 1>", slug="kanban-board", title="Kanban Board")
これは実行中のサービスを https://community.iamstarchild.com/{USER_ID}-kanban-board にマッピングします。USER_ID プレフィックスは自動的に追加されます — スラッグは正確に kanban-board のままにしてください。そうすれば、コンパニオンスキルの自動検出が追加設定なしでそれを見つけられます。
Starchild コンテナー内で実行する必要があります(
FLY_MACHINE_IDが必要です)。公開は URL を割り当てるだけであり、ボードを公開ギャラリーに掲載するものではありません。それは、必要に応じて行う別個の意図的なlist_in_dashboard()呼び出しです。
3. 公開 URL をコネクターの SKILL.md に記録する
公開後、publish_preview から返された実際の公開 URL を取得し(または /data/previews.json から読み取り)、それをコネクタースキルのドキュメントに書き込んで、ライブボードのリンクが推測ではなくスキル自体に取り込まれるようにしてください。
skills/kanban/kanban_agent_skill/SKILL.md を編集し、プレースホルダーのボード URL を実際の公開 URL に置き換えてください。具体的には、その Overview セクションで自動検出の行を:
2. `https://community.iamstarchild.com/{USER_ID}-kanban-board` — your published board, if reachable.
今公開した具体的な URL に変更します。例:
2. `https://community.iamstarchild.com/1357-kanban-board` — your published board (live).
これには edit_file を使用し、その後 skill_refresh を実行して変更を再ロードしてください。これにより、コネクターのドキュメントはプレースホルダーではなく、実際のライブボードを指し続けます。(実行時リゾルバーはどちらでも引き続き動作します — これは、リクエストに応じて URL を書き留めておくためのものです。)
4. 接続を検証する
コンパニオンスキルをロードし(read_file skills/kanban/kanban_agent_skill/SKILL.md)、次を実行してください:
kb_health()
resolved_via: "community (auto)"、ok: true、そして resolved_url があなたの {USER_ID}-kanban-board URL と一致することを期待してください。localhost に解決された場合、公開が反映されていません — ステップ 2 を再確認してください。
5. ユーザーにリンクを渡す
手順 2 で取得した実際の URL を渡します。例:
https://community.iamstarchild.com/{USER_ID}-kanban-board/。
Telegram/WeChat では、完全な公開 URL を送信してください(そこにはプレビューパネルがありません)。
セットアップ後 — ボードの使用
日々のタスク管理はコンパニオンスキルの役割です。その関数は 公開したばかりのボードに自動的に解決されます — 引数は不要です:
from exports import kb_health, kb_summary, kb_create_task, kb_move_task
kb_summary() # orient: columns + task counts
関数の完全なリファレンスについては kanban_agent_skill/SKILL.md を参照してください。
共同作業 — 同僚のエージェントにボードへのアクセスを許可する
ボードは 1 つの共有 URL です。チームメイトのエージェントが読み書きできるようにするには、 コネクタースキルのみ が必要です — ボード全体は不要です(相手はサーバーを実行しません)。
配線済みのコピーを準備する(推奨 — 受け取る側に手動設定は不要)。 コネクタースキルから次を実行します:
kb_export_for_sharing()
これにより kanban_agent_skill/ のコピーに あなたの ボード URL が刻印され、
output/kanban-agent-share/ に zip 圧縮されます。そのフォルダー/zip を送信してください。受け取る側は:
kanban_agent_skill/を自分のskills/ディレクトリに配置します。- 相手のエージェントが skill_refresh を実行します(
kanban-agentとして登録されます)。 kb_health()を実行します — あなたの ボードに自動接続され、設定はゼロです。
なぜ生のフォルダーをそのまま送らないのか? 生のコピーは 受け取る側自身の
ボードを自動検出し、あなたのものではないからです — 刻印によってあなたのボードに配線されます。(手動の代替手段:
フォルダーを送り、相手が .env で KANBAN_URL=<your board URL> を設定するか、kb_use_board(<your board URL>) を呼び出してもらいます。)API はオープンであることを忘れないでください: URL を知っている人は誰でも完全な読み書きができます。
注意事項と落とし穴
- スラッグ
kanban-boardを維持してください。 コンパニオンスキルは{USER_ID}-kanban-boardを自動検出します。別のスラッグにすると、エージェントが 見つけられるようにKANBAN_URL環境変数を設定する必要があります。 - ボードは実行し続ける必要があります。
publish_previewは 実行中の サービスを マッピングします。コンテナが再起動すると、プレビューは/data/previews.jsonから自動起動します(そのエントリは/data/workspace/skills/kanbanを指している必要があります)。 - パスワードなし / オープンな API。 UI は直接読み込まれ、API は認証されていません。
公開 URL を知っている人は誰でもボードを読み書きできます。それが許容できる場合を除き、
機密データを公開しないでください。ロックダウンするには、
server.jsの/ajax/tasks/*ルートに認証を追加することになります。 - 公開せずにローカル開発:
skills/kanban/でnode server.jsを実行し、http://localhost:5555を開きます — 到達可能なコミュニティボードがない場合、 コンパニオンスキルは自動的に localhost にフォールバックします。