agent-project-board-sync
ruvnet/ruflo
project-board-sync のエージェントスキル - $agent-project-board-sync で呼び出す
...すべて拡張しますname: project-board-sync description: AIスウォームをGitHub Projectsと同期させ、視覚的なタスク管理、進捗追跡、チーム連携を実現する type: coordination color: "#A8E6CF" tools:
- Bash
- 読み取り
- 書き込み
- 編集
- Glob
- grep
- LS
- TodoWrite
- mcp__claude-flow__swarm_init
- mcp__claude-flow__agent_spawn
- mcp__claude-flow__task_orchestrate
- mcp__claude-flow__swarm_status
- mcp__claude-flow__memory_usage
- mcp__claude-flow__github_repo_analyze
- mcp__claude-flow__github_pr_manage
- mcp__claude-flow__github_issue_track
- mcp__claude-flow__github_metrics
- mcp__claude-flow__workflow_create
- mcp__claude-flow__workflow_execute
フック:
pre:
- "gh auth status || (echo 'GitHub CLI が認証されていません' && exit 1)"
- "gh project list --owner @me --limit 1 >$dev$null || echo 'アクセス可能なプロジェクトがありません'"
- "git status --porcelain || echo 'Gitリポジトリに含まれていません'"
- "gh api user | jq -r '.login' || echo 'API アクセス確認中'" post:
- "gh project list --owner @me --limit 3 | head -5"
- "gh issue list --limit 3 --json number,title,state"
- "git branch --show-current || echo 'ブランチにいない'"
- "gh repo view --json name,description"
プロジェクトボードの同期 - GitHub Projects との連携
概要
AIスウォームをGitHub Projectsと同期させ、視覚的なタスク管理、進捗追跡、チーム連携を実現します。
主な機能
1. ボードの初期化
# gh CLI を使用してスウォームを GitHub プロジェクトに接続
# プロジェクトの詳細を取得
PROJECT_ID=$(gh project list --owner @me --format json | \
jq -r'.projects[] | select(.title == "Development Board") | .id')# プロジェクトを使用してスウォームを初期化
npx ruv-swarm github board-init \
--project-id"$PROJECT_ID"\
--sync-mode"bidirectional"\
--create-views"swarm-status,agent-workload,priority"# Swarmの追跡用にプロジェクトフィールドを作成
gh project field-create$PROJECT_ID--owner @me \
--name"Swarm Status"\
--data-type"SINGLE_SELECT"\
--single-select-options"pending,in_progress,completed"
2. タスクの同期
# Swarmタスクをプロジェクトカードと同期
npx ruv-swarm github board-sync \
--map-status'{
"todo": "To Do",
"in_progress": "In Progress",
"review": "Review",
"done": "Done"
}'\
--auto-move-cards \
--update-metadata
3. リアルタイム更新
# ボードのリアルタイム更新を有効にする
npx ruv-swarm github board-realtime \
--webhook-endpoint"https:/$api.example.com$github-sync"\
--update-frequency"immediate"\
--batch-updatesfalse
設定
ボードマッピングの設定
# .github$board-sync.yml
version: 1
project:
name: "AI Development Board"
number: 1
mapping:
# Swarmタスクのステータスをボードの列にマッピング
status:
pending: "Backlog"
assigned: "Ready"
in_progress: "In Progress"
review: "Review"
completed: "Done"
blocked: "Blocked"
# エージェントタイプをラベルにマッピング
agents:
coder: "🔧 開発"
tester: "🧪 テスト"
analyst: "📊 分析"
designer: "🎨 デザイン"
architect: "🏗️ アーキテクチャ"
# 優先度をプロジェクトフィールドにマッピング
priority:
critical: "🔴 重大"
high: "🟡 高"
medium: "🟢 中"
low: "⚪ 低"
# カスタムフィールド
fields:
- name: "担当者の数"
type: number
source: task.agents.length
- name: "複雑度"
type: select
source: task.complexity
- name: "ETA"
type: date
source: task.estimatedCompletion
設定を表示
// カスタムボードビュー
{
"views": [
{
"name":"Swarm Overview",
"type":"board",
"groupBy":"status",
"filters": ["is:open"],
"sort":"priority:desc"
},
{
"name":"エージェントの作業負荷",
"type":"table",
"groupBy":"assignedAgent",
"columns": ["title","status","priority","eta"],
"sort":"eta:asc"
},
{
"name":"スプリントの進捗",
"type":"roadmap",
"dateField":"eta",
"groupBy":"milestone"
}
]
}
自動化機能
1. 自動割り当て
# カードをエージェントに自動的に割り当てる
npx ruv-swarm github board-auto-assign \
--strategy"load-balanced"\
--consider"expertise,workload,availability"\
--update-cards
2. 進捗の追跡
# 進捗の追跡と可視化
npx ruv-swarm github board-progress \
--show"burndown,velocity,cycle-time"\
--time-period"sprint"\
--export-metrics
3. スマートなカード移動
# インテリジェントなカードの状態遷移
npx ruv-swarm github board-smart-move \
--rules'{
"auto-progress": "when:all-subtasks-done",
"auto-review": "when:tests-pass",
"auto-done": "when:pr-merged"
}'
ボードコマンド
イシューからカードを作成
# gh CLI を使用してイシューをプロジェクトカードに変換
# ラベル付きイシューを一覧表示
ISSUES=$(gh issue list --label"enhancement"--json number,title,body)# イシューをプロジェクトに追加
echo "$ISSUES"| jq -r'.[].number'|while read-r issue;do
gh project item-add$PROJECT_ID--owner @me --url"https:/$github.com/$GITHUB_REPOSITORY$issues/$issue"
done# Swarm で処理
npx ruv-swarm github board-import-issues \
--issues"$ISSUES"\
--add-to-column"Backlog"\
--parse-checklist \
--assign-agents
一括操作
# カードの一括操作
npx ruv-swarm github board-bulk \
--filter"status:blocked"\
--action"add-label:needs-attention"\
--notify-assignees
カードテンプレート
# テンプレートからカードを作成
npx ruv-swarm github board-template \
--template"feature-development"\
--variables'{
"feature": "ユーザー認証",
"priority": "high",
"agents": ["architect", "coder", "tester"]
}'\
--create-subtasks
高度な同期
1. 複数ボード間の同期
# 複数のボード間で同期する
npx ruv-swarm github multi-board-sync \
--boards"Development,QA,Release"\
--sync-rules'{
"Development->QA": "when:ready-for-test",
"QA->Release": "when:tests-pass"
}'
2. 組織間同期
# 組織をまたぐボードの同期
npx ruv-swarm github cross-org-sync \
--source "org1/Project-A"\
--target"org2/Project-B"\
--field-mapping"custom"\
--conflict-resolution"source-wins"
3. 外部ツールとの連携
# 外部ツールとの同期
npx ruv-swarm github board-integrate \
--tool"jira"\
--mapping"bidirectional"\
--sync-frequency"5m"\
--transform-rules"custom"
可視化とレポート
ボード分析
# gh CLI データを使用してボード分析を生成
# プロジェクトデータを取得
PROJECT_DATA=$(gh project item-list$PROJECT_ID--owner @me --format json)# イシューのメトリクスを取得
ISSUE_METRICS=$(echo "$PROJECT_DATA"| jq -r'.items[] | select(.content.type == "Issue")'| \
while read-r item;do
ISSUE_NUM=$(echo "$item"| jq -r'.content.number')
gh issue view$ISSUE_NUM--json createdAt,closedAt,labels,assignees
done)# Swarm を使用して分析データを生成
npx ruv-swarm github board-analytics \
--project-data"$PROJECT_DATA"\
--issue-metrics"$ISSUE_METRICS"\
--metrics"throughput,cycle-time,wip"\
--group-by"agent,priority,type"\
--time-range"30d"\
--export "dashboard"
カスタムダッシュボード
// ダッシュボードの設定
{
"dashboard": {
"widgets": [
{
"type":"chart",
"title":"タスク完了率",
"data":"completed-per-day",
"visualization":"line"
},
{
"type":"gauge",
"title":"スプリントの進捗",
"data":"sprint-completion",
"target":100
},
{
"type":"heatmap",
"title":"エージェントの活動状況",
"data":"agent-tasks-per-day"
}
]
}
}
レポート
# レポートを生成
npx ruv-swarm github board-report \
--type "sprint-summary"\
--format"markdown"\
--include"velocity,burndown,blockers"\
--distribute"slack,email"
ワークフローの統合
スプリント管理
# Swarms を使ったスプリント管理
npx ruv-swarm github sprint-manage \
--sprint"Sprint 23"\
--auto-populate \
--capacity-planning \
--track-velocity
マイルストーンの追跡
# マイルストーンの進捗を追跡する
npx ruv-swarm github milestone-track \
--milestone"v2.0 リリース"\
--update-board \
--show-dependencies \
--predict-completion
リリース計画
# ボードデータを用いたリリース計画
npx ruv-swarm github release-plan-board \
--analyze-velocity \
--estimate-completion \
--identify-risks \
--optimize-scope
チームコラボレーション
作業の割り当て
# チーム内で作業を割り当てる
npx ruv-swarm github board-distribute \
--strategy"skills-based"\
--balance-workload \
--respect-preferences \
--notify-assignments
スタンドアップ会議の自動化
# スタンドアップレポートを生成
npx ruv-swarm github standup-report \
--team"frontend"\
--include"yesterday,today,blockers"\
--format"slack"\
--schedule"daily-9am"
レビューの調整
# ボードを介してレビューを調整
npx ruv-swarm github review-coordinate \
--board"Code Review"\
--assign-reviewers \
--track-feedback \
--ensure-coverage
ベストプラクティス
1. ボードの構成
- 明確な列の定義
- 一貫性のあるラベル体系
- 定期的なボードの整理
- 自動化ルール
2. データの整合性
- 双方向同期の検証
- 競合解決戦略
- 監査証跡
- 定期的なバックアップ
3. チームでの導入
- トレーニング資料
- 明確なワークフロー
- 定期的な見直し
- フィードバックの循環
トラブルシューティング
同期の問題
# 同期の問題の診断
npx ruv-swarm github board-diagnose \
--check"permissions,webhooks,rate-limits"\
--test-sync \
--show-conflicts
パフォーマンス
# ボードのパフォーマンスを最適化する
npx ruv-swarm github board-optimize \
--analyze-size \
--archive-completed \
--index-fields \
--cache-views
データ復旧
# ボードデータの復元
npx ruv-swarm github board-recover \
--backup-id"2024-01-15"\
--restore-cards \
--preserve-current \
--merge-conflicts
使用例
アジャイル開発ボード
# アジャイルボードの設定
npx ruv-swarm github agile-board \
--methodology"scrum"\
--sprint-length"2w"\
--ceremonies"planning,review,retro"\
--metrics"velocity,burndown"
カンバン・フロー・ボード
# カンバンボードの設定
npx ruv-swarm github kanban-board \
--wip-limits'{
"In Progress": 5,
"Review": 3
}'\
--cycle-time-tracking \
--continuous-flow
研究プロジェクトボード
# 研究ボードの設定
npx ruv-swarm github research-board \
--phases"アイデア出し,調査,実験,分析,発表"\
--track-citations \
--collaborate-external
指標とKPI
パフォーマンス指標
# ボードのパフォーマンスを追跡
npx ruv-swarm github board-kpis \
--metrics'[
"average-cycle-time",
"throughput-per-sprint",
"blocked-time-percentage",
"first-time-pass-rate"
]'\
--dashboard-url
チーム指標
# チームのパフォーマンスを追跡する
npx ruv-swarm github team-metrics \
--board"Development"\
--per-member \
--include"velocity,quality,collaboration"\
--anonymous-option
name: project-board-sync description: Synchronize AI swarms with GitHub Projects for visual task management, progress tracking, and team coordination type: coordination color: "#A8E6CF" tools:
- Bash
- Read
- Write
- Edit
- Glob
- Grep
- LS
- TodoWrite
- mcp__claude-flow__swarm_init
- mcp__claude-flow__agent_spawn
- mcp__claude-flow__task_orchestrate
- mcp__claude-flow__swarm_status
- mcp__claude-flow__memory_usage
- mcp__claude-flow__github_repo_analyze
- mcp__claude-flow__github_pr_manage
- mcp__claude-flow__github_issue_track
- mcp__claude-flow__github_metrics
- mcp__claude-flow__workflow_create
- mcp__claude-flow__workflow_execute
hooks:
pre:
- "gh auth status || (echo 'GitHub CLI not authenticated' && exit 1)"
- "gh project list --owner @me --limit 1 >$dev$null || echo 'No projects accessible'"
- "git status --porcelain || echo 'Not in git repository'"
- "gh api user | jq -r '.login' || echo 'API access check'" post:
- "gh project list --owner @me --limit 3 | head -5"
- "gh issue list --limit 3 --json number,title,state"
- "git branch --show-current || echo 'Not on a branch'"
- "gh repo view --json name,description"
Project Board Sync - GitHub Projects Integration
Overview
Synchronize AI swarms with GitHub Projects for visual task management, progress tracking, and team coordination.
Core Features
1. Board Initialization
# Connect swarm to GitHub Project using gh CLI
# Get project details
PROJECT_ID=$(gh project list --owner @me --format json | \
jq -r '.projects[] | select(.title == "Development Board") | .id')# Initialize swarm with project
npx ruv-swarm github board-init \
--project-id "$PROJECT_ID" \
--sync-mode "bidirectional" \
--create-views "swarm-status,agent-workload,priority"# Create project fields for swarm tracking
gh project field-create $PROJECT_ID --owner @me \
--name "Swarm Status" \
--data-type "SINGLE_SELECT" \
--single-select-options "pending,in_progress,completed"
2. Task Synchronization
# Sync swarm tasks with project cards
npx ruv-swarm github board-sync \
--map-status '{
"todo": "To Do",
"in_progress": "In Progress",
"review": "Review",
"done": "Done"
}' \
--auto-move-cards \
--update-metadata
3. Real-time Updates
# Enable real-time board updates
npx ruv-swarm github board-realtime \
--webhook-endpoint "https:/$api.example.com$github-sync" \
--update-frequency "immediate" \
--batch-updates false
Configuration
Board Mapping Configuration
# .github$board-sync.yml
version: 1
project:
name: "AI Development Board"
number: 1
mapping:
# Map swarm task status to board columns
status:
pending: "Backlog"
assigned: "Ready"
in_progress: "In Progress"
review: "Review"
completed: "Done"
blocked: "Blocked"
# Map agent types to labels
agents:
coder: "🔧 Development"
tester: "🧪 Testing"
analyst: "📊 Analysis"
designer: "🎨 Design"
architect: "🏗️ Architecture"
# Map priority to project fields
priority:
critical: "🔴 Critical"
high: "🟡 High"
medium: "🟢 Medium"
low: "⚪ Low"
# Custom fields
fields:
- name: "Agent Count"
type: number
source: task.agents.length
- name: "Complexity"
type: select
source: task.complexity
- name: "ETA"
type: date
source: task.estimatedCompletion
View Configuration
// Custom board views
{
"views": [
{
"name": "Swarm Overview",
"type": "board",
"groupBy": "status",
"filters": ["is:open"],
"sort": "priority:desc"
},
{
"name": "Agent Workload",
"type": "table",
"groupBy": "assignedAgent",
"columns": ["title", "status", "priority", "eta"],
"sort": "eta:asc"
},
{
"name": "Sprint Progress",
"type": "roadmap",
"dateField": "eta",
"groupBy": "milestone"
}
]
}
Automation Features
1. Auto-Assignment
# Automatically assign cards to agents
npx ruv-swarm github board-auto-assign \
--strategy "load-balanced" \
--consider "expertise,workload,availability" \
--update-cards
2. Progress Tracking
# Track and visualize progress
npx ruv-swarm github board-progress \
--show "burndown,velocity,cycle-time" \
--time-period "sprint" \
--export-metrics
3. Smart Card Movement
# Intelligent card state transitions
npx ruv-swarm github board-smart-move \
--rules '{
"auto-progress": "when:all-subtasks-done",
"auto-review": "when:tests-pass",
"auto-done": "when:pr-merged"
}'
Board Commands
Create Cards from Issues
# Convert issues to project cards using gh CLI
# List issues with label
ISSUES=$(gh issue list --label "enhancement" --json number,title,body)# Add issues to project
echo "$ISSUES" | jq -r '.[].number' | while read -r issue; do
gh project item-add $PROJECT_ID --owner @me --url "https:/$github.com/$GITHUB_REPOSITORY$issues/$issue"
done# Process with swarm
npx ruv-swarm github board-import-issues \
--issues "$ISSUES" \
--add-to-column "Backlog" \
--parse-checklist \
--assign-agents
Bulk Operations
# Bulk card operations
npx ruv-swarm github board-bulk \
--filter "status:blocked" \
--action "add-label:needs-attention" \
--notify-assignees
Card Templates
# Create cards from templates
npx ruv-swarm github board-template \
--template "feature-development" \
--variables '{
"feature": "User Authentication",
"priority": "high",
"agents": ["architect", "coder", "tester"]
}' \
--create-subtasks
Advanced Synchronization
1. Multi-Board Sync
# Sync across multiple boards
npx ruv-swarm github multi-board-sync \
--boards "Development,QA,Release" \
--sync-rules '{
"Development->QA": "when:ready-for-test",
"QA->Release": "when:tests-pass"
}'
2. Cross-Organization Sync
# Sync boards across organizations
npx ruv-swarm github cross-org-sync \
--source "org1/Project-A" \
--target "org2/Project-B" \
--field-mapping "custom" \
--conflict-resolution "source-wins"
3. External Tool Integration
# Sync with external tools
npx ruv-swarm github board-integrate \
--tool "jira" \
--mapping "bidirectional" \
--sync-frequency "5m" \
--transform-rules "custom"
Visualization & Reporting
Board Analytics
# Generate board analytics using gh CLI data
# Fetch project data
PROJECT_DATA=$(gh project item-list $PROJECT_ID --owner @me --format json)# Get issue metrics
ISSUE_METRICS=$(echo "$PROJECT_DATA" | jq -r '.items[] | select(.content.type == "Issue")' | \
while read -r item; do
ISSUE_NUM=$(echo "$item" | jq -r '.content.number')
gh issue view $ISSUE_NUM --json createdAt,closedAt,labels,assignees
done)# Generate analytics with swarm
npx ruv-swarm github board-analytics \
--project-data "$PROJECT_DATA" \
--issue-metrics "$ISSUE_METRICS" \
--metrics "throughput,cycle-time,wip" \
--group-by "agent,priority,type" \
--time-range "30d" \
--export "dashboard"
Custom Dashboards
// Dashboard configuration
{
"dashboard": {
"widgets": [
{
"type": "chart",
"title": "Task Completion Rate",
"data": "completed-per-day",
"visualization": "line"
},
{
"type": "gauge",
"title": "Sprint Progress",
"data": "sprint-completion",
"target": 100
},
{
"type": "heatmap",
"title": "Agent Activity",
"data": "agent-tasks-per-day"
}
]
}
}
Reports
# Generate reports
npx ruv-swarm github board-report \
--type "sprint-summary" \
--format "markdown" \
--include "velocity,burndown,blockers" \
--distribute "slack,email"
Workflow Integration
Sprint Management
# Manage sprints with swarms
npx ruv-swarm github sprint-manage \
--sprint "Sprint 23" \
--auto-populate \
--capacity-planning \
--track-velocity
Milestone Tracking
# Track milestone progress
npx ruv-swarm github milestone-track \
--milestone "v2.0 Release" \
--update-board \
--show-dependencies \
--predict-completion
Release Planning
# Plan releases using board data
npx ruv-swarm github release-plan-board \
--analyze-velocity \
--estimate-completion \
--identify-risks \
--optimize-scope
Team Collaboration
Work Distribution
# Distribute work among team
npx ruv-swarm github board-distribute \
--strategy "skills-based" \
--balance-workload \
--respect-preferences \
--notify-assignments
Standup Automation
# Generate standup reports
npx ruv-swarm github standup-report \
--team "frontend" \
--include "yesterday,today,blockers" \
--format "slack" \
--schedule "daily-9am"
Review Coordination
# Coordinate reviews via board
npx ruv-swarm github review-coordinate \
--board "Code Review" \
--assign-reviewers \
--track-feedback \
--ensure-coverage
Best Practices
1. Board Organization
- Clear column definitions
- Consistent labeling system
- Regular board grooming
- Automation rules
2. Data Integrity
- Bidirectional sync validation
- Conflict resolution strategies
- Audit trails
- Regular backups
3. Team Adoption
- Training materials
- Clear workflows
- Regular reviews
- Feedback loops
Troubleshooting
Sync Issues
# Diagnose sync problems
npx ruv-swarm github board-diagnose \
--check "permissions,webhooks,rate-limits" \
--test-sync \
--show-conflicts
Performance
# Optimize board performance
npx ruv-swarm github board-optimize \
--analyze-size \
--archive-completed \
--index-fields \
--cache-views
Data Recovery
# Recover board data
npx ruv-swarm github board-recover \
--backup-id "2024-01-15" \
--restore-cards \
--preserve-current \
--merge-conflicts
Examples
Agile Development Board
# Setup agile board
npx ruv-swarm github agile-board \
--methodology "scrum" \
--sprint-length "2w" \
--ceremonies "planning,review,retro" \
--metrics "velocity,burndown"
Kanban Flow Board
# Setup kanban board
npx ruv-swarm github kanban-board \
--wip-limits '{
"In Progress": 5,
"Review": 3
}' \
--cycle-time-tracking \
--continuous-flow
Research Project Board
# Setup research board
npx ruv-swarm github research-board \
--phases "ideation,research,experiment,analysis,publish" \
--track-citations \
--collaborate-external
Metrics & KPIs
Performance Metrics
# Track board performance
npx ruv-swarm github board-kpis \
--metrics '[
"average-cycle-time",
"throughput-per-sprint",
"blocked-time-percentage",
"first-time-pass-rate"
]' \
--dashboard-url
Team Metrics
# Track team performance
npx ruv-swarm github team-metrics \
--board "Development" \
--per-member \
--include "velocity,quality,collaboration" \
--anonymous-option
See also: swarm-issue.md, multi-repo-swarm.md
agent-project-board-syncをインストール
スキルファイルをダウンロードし、.claude/skills/ ディレクトリに解凍してください。
ZIPをダウンロードリポジトリをクローンし、スキルファイルをプロジェクトにコピーしてください。
git clone https://github.com/ruvnet/ruflo/tree/main/.agents/skills/agent-project-board-sync # Copy the skill folder to .claude/skills/ or .codex/skills/
コピー





家
