关于 agent-workflow-automation
这是一个面向 GitHub Actions CI/CD 的工作流自动化技能,借助多 Agent 协作生成、维护和分析流水线。它涵盖智能测试选择、失败分析及工作流性能与成本优化。
主要功能
- 01生成并更新 GitHub Actions 工作流
- 02按代码变更选择测试
- 03分析运行失败与故障模式
- 04监控瓶颈并提出优化建议
适用场景
- 01为代码库生成 CI/CD 流水线
- 02减少变更无关的测试执行
- 03排查失败运行并制定修复建议
MCP 相关
该技能通过 GitHub 工具创建、更新和列出工作流,并查询运行记录、触发工作流调度。它还使用 claude-flow 工具编排多 Agent 任务。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ ruvnet/ ruflo --skill agent-workflow-automation安装后在 Claude Code 中输入/agent-workflow-automation确认已加载。
详细介绍
name: workflow-automation description: GitHub Actions 工作流自动化 Agent,可通过自适应多 Agent 协调和自动优化,创建智能、自组织的 CI/CD 管道 type: automation color: "#E74C3C" tools:
- mcp__github__create_workflow
- mcp__github__update_workflow
- mcp__github__list_workflows
- mcp__github__get_workflow_runs
- mcp__github__create_workflow_dispatch
- mcp__claude-flow__swarm_init
- mcp__claude-flow__agent_spawn
- mcp__claude-flow__task_orchestrate
- mcp__claude-flow__memory_usage
- mcp__claude-flow__performance_report
- mcp__claude-flow__bottleneck_analyze
- mcp__claude-flow__workflow_create
- mcp__claude-flow__automation_setup
- TodoWrite
- TodoRead
- Bash
- Read
- Write
- Edit
- Grep
hooks:
pre:
- "使用自适应管道智能初始化工作流自动化 swarm"
- "分析代码仓库结构并确定最佳 CI/CD 策略"
- "将工作流模板和自动化规则存储在 swarm 内存中" post:
- "部署优化后的工作流,并持续监控性能"
- "生成工作流自动化指标和优化建议"
- "根据 swarm 的学习成果和性能数据更新自动化规则"
工作流自动化 - GitHub Actions 集成
概述
将 AI swarm 与 GitHub Actions 集成,通过先进的多 Agent 协调和自动化创建智能、自组织的 CI/CD 管道,使其能够根据你的代码库进行调整。
核心功能
1. 由 Swarm 驱动的 Actions
# .github$workflows$swarm-ci.yml
name: Intelligent CI with Swarms
on: [push, pull_request]
jobs:
swarm-analysis:
runs-on: ubuntu-latest
steps:
- uses: actions$checkout@v3
- name: Initialize Swarm
uses: ruvnet$swarm-action@v1
with:
topology: mesh
max-agents: 6
- name: Analyze Changes
run: |
npx ruv-swarm actions analyze \
--commit ${{ github.sha }} \
--suggest-tests \
--optimize-pipeline
2. 动态工作流生成
# Generate workflows based on code analysis
npx ruv-swarm actions generate-workflow \
--analyze-codebase \
--detect-languages \
--create-optimal-pipeline
3. 智能测试选择
# Smart test runner
- name: Swarm Test Selection
run: |
npx ruv-swarm actions smart-test \
--changed-files ${{ steps.files.outputs.all }} \
--impact-analysis \
--parallel-safe
工作流模板
多语言检测
# .github$workflows$polyglot-swarm.yml
name: Polyglot Project Handler
on: push
jobs:
detect-and-build:
runs-on: ubuntu-latest
steps:
- uses: actions$checkout@v3
- name: Detect Languages
id: detect
run: |
npx ruv-swarm actions detect-stack \
--output json > stack.json
- name: Dynamic Build Matrix
run: |
npx ruv-swarm actions create-matrix \
--from stack.json \
--parallel-builds
自适应安全扫描
# .github$workflows$security-swarm.yml
name: Intelligent Security Scan
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
jobs:
security-swarm:
runs-on: ubuntu-latest
steps:
- name: Security Analysis Swarm
run: |
# Use gh CLI for issue creation
SECURITY_ISSUES=$(npx ruv-swarm actions security \
--deep-scan \
--format json)
# Create issues for complex security problems
echo "$SECURITY_ISSUES" | jq -r '.issues[]? | @base64' | while read -r issue; do
_jq() {
echo ${issue} | base64 --decode | jq -r ${1}
}
gh issue create \
--title "$(_jq '.title')" \
--body "$(_jq '.body')" \
--label "security,critical"
done
操作命令
管道优化
# Optimize existing workflows
npx ruv-swarm actions optimize \
--workflow ".github$workflows$ci.yml" \
--suggest-parallelization \
--reduce-redundancy \
--estimate-savings
故障分析
# Analyze failed runs using gh CLI
gh run view ${{ github.run_id }} --json jobs,conclusion | \
npx ruv-swarm actions analyze-failure \
--suggest-fixes \
--auto-retry-flaky
# Create issue for persistent failures
if [ $? -ne 0 ]; then
gh issue create \
--title "CI Failure: Run ${{ github.run_id }}" \
--body "Automated analysis detected persistent failures" \
--label "ci-failure"
fi
资源管理
# Optimize resource usage
npx ruv-swarm actions resources \
--analyze-usage \
--suggest-runners \
--cost-optimize
高级工作流
1. 自愈 CI/CD
# Auto-fix common CI failures
name: Self-Healing Pipeline
on: workflow_run
jobs:
heal-pipeline:
if: ${{ github.event.workflow_run.conclusion == 'failure' }}
runs-on: ubuntu-latest
steps:
- name: Diagnose and Fix
run: |
npx ruv-swarm actions self-heal \
--run-id ${{ github.event.workflow_run.id }} \
--auto-fix-common \
--create-pr-complex
2. 渐进式部署
# Intelligent deployment strategy
name: Smart Deployment
on:
push:
branches: [main]
jobs:
progressive-deploy:
runs-on: ubuntu-latest
steps:
- name: Analyze Risk
id: risk
run: |
npx ruv-swarm actions deploy-risk \
--changes ${{ github.sha }} \
--history 30d
- name: Choose Strategy
run: |
npx ruv-swarm actions deploy-strategy \
--risk ${{ steps.risk.outputs.level }} \
--auto-execute
3. 性能回归检测
# Automatic performance testing
name: Performance Guard
on: pull_request
jobs:
perf-swarm:
runs-on: ubuntu-latest
steps:
- name: Performance Analysis
run: |
npx ruv-swarm actions perf-test \
--baseline main \
--threshold 10% \
--auto-profile-regression
自定义 Actions
Swarm Action 开发
// action.yml
name: 'Swarm Custom Action'
description: 'Custom swarm-powered action'
inputs:
task:
description: 'Task for swarm'
required: true
runs:
using: 'node16'
main: 'dist$index.js'
// index.js
const { SwarmAction } = require('ruv-swarm');
async function run() {
const swarm = new SwarmAction({
topology: 'mesh',
agents: ['analyzer', 'optimizer']
});
await swarm.execute(core.getInput('task'));
}
矩阵策略
动态测试矩阵
# Generate test matrix from code analysis
jobs:
generate-matrix:
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- id: set-matrix
run: |
MATRIX=$(npx ruv-swarm actions test-matrix \
--detect-frameworks \
--optimize-coverage)
echo "matrix=${MATRIX}" >> $GITHUB_OUTPUT
test:
needs: generate-matrix
strategy:
matrix: ${{fromJson(needs.generate-matrix.outputs.matrix)}}
智能并行化
# Determine optimal parallelization
npx ruv-swarm actions parallel-strategy \
--analyze-dependencies \
--time-estimates \
--cost-aware
监控与洞察
工作流分析
# Analyze workflow performance
npx ruv-swarm actions analytics \
--workflow "ci.yml" \
--period 30d \
--identify-bottlenecks \
--suggest-improvements
成本优化
# Optimize GitHub Actions costs
npx ruv-swarm actions cost-optimize \
--analyze-usage \
--suggest-caching \
--recommend-self-hosted
故障模式
# Identify failure patterns
npx ruv-swarm actions failure-patterns \
--period 90d \
--classify-failures \
--suggest-preventions
集成示例
1. PR 验证 Swarm
name: PR Validation Swarm
on: pull_request
jobs:
validate:
runs-on: ubuntu-latest
steps:
- name: Multi-Agent Validation
run: |
# Get PR details using gh CLI
PR_DATA=$(gh pr view ${{ github.event.pull_request.number }} --json files,labels)
# Run validation with swarm
RESULTS=$(npx ruv-swarm actions pr-validate \
--spawn-agents "linter,tester,security,docs" \
--parallel \
--pr-data "$PR_DATA")
# Post results as PR comment
gh pr comment ${{ github.event.pull_request.number }} \
--body "$RESULTS"
2. 发布自动化
name: Intelligent Release
on:
push:
tags: ['v*']
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Release Swarm
run: |
npx ruv-swarm actions release \
--analyze-changes \
--generate-notes \
--create-artifacts \
--publish-smart
3. 文档更新
name: Auto Documentation
on:
push:
paths: ['src/**']
jobs:
docs:
runs-on: ubuntu-latest
steps:
- name: Documentation Swarm
run: |
npx ruv-swarm actions update-docs \
--analyze-changes \
--update-api-docs \
--check-examples
最佳实践
1. 工作流组织
- 对 swarm 操作使用可复用工作流
- 实施恰当的缓存策略
- 设置合适的超时时间
- 合理使用工作流依赖项
2. 安全
- 将 swarm 配置存储在机密中
- 使用 OIDC 进行身份验证
- 遵循最小权限原则
- 审计 swarm 操作
3. 性能
- 缓存 swarm 依赖项
- 使用合适规格的运行器
- 实施提前终止
- 优化并行执行
高级功能
故障预测
# Predict potential failures
npx ruv-swarm actions predict \
--analyze-history \
--identify-risks \
--suggest-preventive
工作流建议
# Get workflow recommendations
npx ruv-swarm actions recommend \
--analyze-repo \
--suggest-workflows \
--industry-best-practices
自动优化
# Continuously optimize workflows
npx ruv-swarm actions auto-optimize \
--monitor-performance \
--apply-improvements \
--track-savings
调试与故障排除
调试模式
- name: Debug Swarm
run: |
npx ruv-swarm actions debug \
--verbose \
--trace-agents \
--export-logs
性能分析
# Profile workflow performance
npx ruv-swarm actions profile \
--workflow "ci.yml" \
--identify-slow-steps \
--suggest-optimizations
高级 Swarm 工作流自动化
多 Agent 管道编排
# Initialize comprehensive workflow automation swarm
mcp__claude-flow__swarm_init { topology: "mesh", maxAgents: 12 }
mcp__claude-flow__agent_spawn { type: "coordinator", name: "Workflow Coordinator" }
mcp__claude-flow__agent_spawn { type: "architect", name: "Pipeline Architect" }
mcp__claude-flow__agent_spawn { type: "coder", name: "Workflow Developer" }
mcp__claude-flow__agent_spawn { type: "tester", name: "CI/CD Tester" }
mcp__claude-flow__agent_spawn { type: "optimizer", name: "Performance Optimizer" }
mcp__claude-flow__agent_spawn { type: "monitor", name: "Automation Monitor" }
mcp__claude-flow__agent_spawn { type: "analyst", name: "Workflow Analyzer" }
# Create intelligent workflow automation rules
mcp__claude-flow__automation_setup {
rules: [
{
trigger: "pull_request",
conditions: ["files_changed > 10", "complexity_high"],
actions: ["spawn_review_swarm", "parallel_testing", "security_scan"]
},
{
trigger: "push_to_main",
conditions: ["all_tests_pass", "security_cleared"],
actions: ["deploy_staging", "performance_test", "notify_stakeholders"]
}
]
}
# Orchestrate adaptive workflow management
mcp__claude-flow__task_orchestrate {
task: "Manage intelligent CI/CD pipeline with continuous optimization",
strategy: "adaptive",
priority: "high",
dependencies: ["code_analysis", "test_optimization", "deployment_strategy"]
}
智能性能监控
# Generate comprehensive workflow performance reports
mcp__claude-flow__performance_report {
format: "detailed",
timeframe: "30d"
}
# Analyze workflow bottlenecks with swarm intelligence
mcp__claude-flow__bottleneck_analyze {
component: "github_actions_workflow",
metrics: ["build_time", "test_duration", "deployment_latency", "resource_utilization"]
}
# Store performance insights in swarm memory
mcp__claude-flow__memory_usage {
action: "store",
key: "workflow$performance$analysis",
value: {
bottlenecks_identified: ["slow_test_suite", "inefficient_caching"],
optimization_opportunities: ["parallel_matrix", "smart_caching"],
performance_trends: "improving",
cost_optimization_potential: "23%"
}
}
动态工作流生成
// Swarm-powered workflow creation
const createIntelligentWorkflow = async (repoContext) => {
// Initialize workflow generation swarm
await mcp__claude_flow__swarm_init({ topology: "hierarchical", maxAgents: 8 });
// Spawn specialized workflow agents
await mcp__claude_flow__agent_spawn({ type: "architect", name: "Workflow Architect" });
await mcp__claude_flow__agent_spawn({ type: "coder", name: "YAML Generator" });
await mcp__claude_flow__agent_spawn({ type: "optimizer", name: "Performance Optimizer" });
await mcp__claude_flow__agent_spawn({ type: "tester", name: "Workflow Validator" });
// Create adaptive workflow based on repository analysis
const workflow = await mcp__claude_flow__workflow_create({
name: "Intelligent CI/CD Pipeline",
steps: [
{
name: "Smart Code Analysis",
agents: ["analyzer", "security_scanner"],
parallel: true
},
{
name: "Adaptive Testing",
agents: ["unit_tester", "integration_tester", "e2e_tester"],
strategy: "based_on_changes"
},
{
name: "Intelligent Deployment",
agents: ["deployment_manager", "rollback_coordinator"],
conditions: ["all_tests_pass", "security_approved"]
}
],
triggers: [
"pull_request",
"push_to_main",
"scheduled_optimization"
]
});
// Store workflow configuration in memory
await mcp__claude_flow__memory_usage({
action: "store",
key: `workflow/${repoContext.name}$config`,
value: {
workflow,
generated_at: Date.now(),
optimization_level: "high",
estimated_performance_gain: "40%",
cost_reduction: "25%"
}
});
return workflow;
};
持续学习与优化
# Implement continuous workflow learning
mcp__claude-flow__memory_usage {
action: "store",
key: "workflow$learning$patterns",
value: {
successful_patterns: [
"parallel_test_execution",
"smart_dependency_caching",
"conditional_deployment_stages"
],
failure_patterns: [
"sequential_heavy_operations",
"inefficient_docker_builds",
"missing_error_recovery"
],
optimization_history: {
"build_time_reduction": "45%",
"resource_efficiency": "60%",
"failure_rate_improvement": "78%"
}
}
}
# Generate workflow optimization recommendations
mcp__claude-flow__task_orchestrate {
task: "Analyze workflow performance and generate optimization recommendations",
strategy: "parallel",
priority: "medium"
}
评论
支持 Markdown