Token导航 LogoToken导航TokenDH.com
研究检索external-servicegithub未标认证来源可访问clear审计未展示

ado-multi-projectado 多项目

Agent Skill

ado-multi-project 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

449

周安装

18

GitHub Stars

127

下载量

145
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:ado-multi-project(ado 多项目)
来源仓库:https://github.com/anton-abyzov/specweave
仓库路径:skills/ado-multi-project
安装命令:
npx skills add https://github.com/anton-abyzov/specweave --skill ado-multi-project
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/anton-abyzov/specweave --skill ado-multi-project

简介

此技能通过以下方式支持复杂的多项目 Azure DevOps 组织:

  • ✅ 根据规格内容进行智能项目检测
  • ✅ 按项目/区域/团队自动组织文件夹
  • ✅ 任务拆分到多个项目
  • ✅ 跨项目链接和依赖跟踪
  • ✅ 与 Azure DevOps 工作项双向同步
  • 结果:无缝多项目协调,零手动开销!
  • 技能版本:1.0.0
  • 推出:SpecWeave v0.17.0
  • 最后更新:2025-11-11
  • 每周安装量
  • 18
  • 存储库
  • 安东阿比佐夫
  • GitHub 之星
  • 127
  • 第一次看到
  • 2026 年 1 月 22 日

SKILL.md

Azure DevOps Multi-Project Skill

Purpose: Organize specs and increments across multiple Azure DevOps projects with intelligent mapping and folder organization.

What This Skill Does

This skill handles complex multi-project Azure DevOps organizations by:

  1. Analyzing increment content to determine which project it belongs to
  2. Creating project-specific folder structures in .specweave/docs/internal/specs/
  3. Mapping user stories to correct projects based on keywords and context
  4. Splitting tasks across projects when increments span multiple teams
  5. Maintaining bidirectional sync between local specs and Azure DevOps work items

Supported Architectures

1. Project-per-team (Recommended for Microservices)

Organization: mycompany
├── AuthService (Project)
├── UserService (Project)
├── PaymentService (Project)
└── NotificationService (Project)

Local Structure:
.specweave/docs/internal/specs/
├── AuthService/
├── UserService/
├── PaymentService/
└── NotificationService/

2. Area-path-based (Monolithic Applications)

Organization: enterprise
└── ERP (Project)
    ├── Finance (Area Path)
    ├── HR (Area Path)
    ├── Inventory (Area Path)
    └── Sales (Area Path)

Local Structure:
.specweave/docs/internal/specs/ERP/
├── Finance/
├── HR/
├── Inventory/
└── Sales/

3. Team-based (Small Organizations)

Organization: startup
└── Platform (Project)
    ├── Alpha Team
    ├── Beta Team
    └── Gamma Team

Local Structure:
.specweave/docs/internal/specs/Platform/
├── AlphaTeam/
├── BetaTeam/
└── GammaTeam/

Intelligent Project Detection

The skill analyzes increment content to determine the correct project:

Detection Patterns

const projectPatterns = {
  'AuthService': {
    keywords: ['authentication', 'login', 'oauth', 'jwt', 'session', 'password'],
    filePatterns: ['auth/', 'login/', 'security/'],
    confidence: 0.0
  },
  'UserService': {
    keywords: ['user', 'profile', 'account', 'registration', 'preferences'],
    filePatterns: ['users/', 'profiles/', 'accounts/'],
    confidence: 0.0
  },
  'PaymentService': {
    keywords: ['payment', 'stripe', 'billing', 'invoice', 'subscription'],
    filePatterns: ['payment/', 'billing/', 'checkout/'],
    confidence: 0.0
  }
};

// Analyze spec content
const spec = readSpec(incrementId);
for (const [project, pattern] of Object.entries(projectPatterns)) {
  pattern.confidence = calculateConfidence(spec, pattern);
}

// Select project with highest confidence
const selectedProject = Object.entries(projectPatterns)
  .sort((a, b) => b[1].confidence - a[1].confidence)[0][0];

Confidence Calculation

  • Keyword match: +0.2 per keyword found
  • File pattern match: +0.3 per pattern
  • Explicit mention: +1.0 if project name in spec
  • Team mention: +0.5 if team name matches

Threshold: Confidence > 0.7 = auto-assign, otherwise prompt user

Usage Examples

Example 1: Single-Project Increment

Scenario: Authentication feature for AuthService

Spec Analysis:

Title: "Add OAuth 2.0 authentication"
Keywords found: authentication, oauth, jwt
File patterns: src/auth/oauth-provider.ts
Confidence: AuthService = 0.9 ✅

Action:

# Auto-creates folder structure
.specweave/docs/internal/specs/AuthService/
└── spec-001-oauth-authentication.md

# Maps to Azure DevOps
Project: AuthService
Work Item: Epic "OAuth 2.0 Authentication"

Example 2: Multi-Project Increment

Scenario: Checkout flow spanning multiple services

Spec Analysis:

Title: "Implement checkout flow with payment processing"
Keywords found: user, cart, payment, stripe, notification
Confidence:
  - UserService = 0.6
  - PaymentService = 0.8 ✅
  - NotificationService = 0.5

Action:

# Creates multi-project structure
.specweave/docs/internal/specs/
├── PaymentService/
│   └── spec-002-checkout-payment.md (primary)
├── UserService/
│   └── spec-002-checkout-user.md (linked)
└── NotificationService/
    └── spec-002-checkout-notifications.md (linked)

# Creates linked work items in Azure DevOps
PaymentService: Epic "Checkout Payment Processing" (primary)
UserService: Feature "User Cart Management" (links to primary)
NotificationService: Feature "Order Notifications" (links to primary)

Example 3: Area Path Organization

Scenario: ERP system with module-based organization

Configuration:

AZURE_DEVOPS_STRATEGY=area-path-based
AZURE_DEVOPS_PROJECT=ERP
AZURE_DEVOPS_AREA_PATHS=Finance,HR,Inventory

Spec Analysis:

Title: "Add payroll calculation engine"
Keywords found: payroll, salary, tax, employee
Area match: HR (confidence = 0.85)

Action:

# Creates area-based structure
.specweave/docs/internal/specs/ERP/HR/
└── spec-003-payroll-engine.md

# Maps to Azure DevOps
Project: ERP
Area Path: ERP\HR
Work Item: Epic "Payroll Calculation Engine"

Task Splitting Across Projects

When an increment spans multiple projects, tasks are intelligently split:

Input: Unified tasks.md

# Tasks for Checkout Flow

- T-001: Create shopping cart API (UserService)
- T-002: Implement Stripe integration (PaymentService)
- T-003: Add order confirmation email (NotificationService)
- T-004: Update user order history (UserService)
- T-005: Process payment webhook (PaymentService)

Output: Project-specific work items

UserService (2 tasks):

  • Task: Create shopping cart API
  • Task: Update user order history

PaymentService (2 tasks):

  • Task: Implement Stripe integration
  • Task: Process payment webhook

NotificationService (1 task):

  • Task: Add order confirmation email

Folder Structure Creation

The skill automatically creates and maintains folder structure:

On Increment Creation

async function createProjectFolders(increment: Increment) {
  const projects = detectProjects(increment);

  for (const project of projects) {
    const specPath = `.specweave/docs/internal/specs/${project}/`;
    await ensureDir(specPath);

    // Create project-specific spec
    const spec = extractProjectSpec(increment, project);
    await writeSpec(`${specPath}/spec-${increment.number}-${increment.name}.md`, spec);

    // Create README if first spec in project
    if (isFirstSpec(project)) {
      await createProjectReadme(project);
    }
  }
}

Project README Template

# {Project} Specifications

## Overview
This folder contains specifications for the {Project} project.

## Architecture
{Brief description of project architecture}

## Team
- Team Lead: {name}
- Developers: {list}

## Specifications
- [spec-001-feature.md](spec-001-feature.md) - {description}

## External Links
- Azure DevOps: https://dev.azure.com/{org}/{project}
- Repository: {git-url}

Sync Commands

Sync Increment to Projects

/sw-ado:sync-increment 0014

# Detects projects from spec
# Creates work items in each project
# Links work items together

Sync Spec to Project

/sw-ado:sync-spec AuthService/spec-001

# Syncs single spec to specific project
# Updates existing work item or creates new

Sync All Specs

/sw-ado:sync-all

# Syncs all specs across all projects
# Maintains relationships
# Updates bidirectionally

Project Mapping Configuration

Manual Mapping (config.json)

{
  "ado": {
    "projectMappings": {
      "auth-.*": "AuthService",
      "user-.*": "UserService",
      "payment-.*": "PaymentService",
      "notification-.*": "NotificationService"
    },
    "defaultProject": "Platform",
    "crossProjectLinking": true
  }
}

Auto-Detection Rules

const autoDetectionRules = [
  {
    pattern: /auth|login|oauth|security/i,
    project: "AuthService"
  },
  {
    pattern: /user|profile|account/i,
    project: "UserService"
  },
  {
    pattern: /payment|billing|stripe/i,
    project: "PaymentService"
  }
];

Cross-Project Coordination

Dependency Management

When increments span projects, dependencies are tracked:

# .specweave/increments/0014-checkout-flow/metadata.yml
projects:
  primary: PaymentService
  dependencies:
    - UserService: [T-001, T-004]
    - NotificationService: [T-003]

ado_mappings:
  PaymentService:
    epic: 12345
    work_items: [12346, 12347]
  UserService:
    feature: 12348
    work_items: [12349, 12350]
  NotificationService:
    feature: 12351
    work_items: [12352]

Cross-Project Queries

// Find all work items for an increment across projects
async function getIncrementWorkItems(incrementId: string) {
  const metadata = await readMetadata(incrementId);
  const workItems = [];

  for (const [project, mapping] of Object.entries(metadata.ado_mappings)) {
    const items = await adoClient.getWorkItems(project, mapping.work_items);
    workItems.push(...items);
  }

  return workItems;
}

Best Practices

1. Consistent Naming

Use consistent naming across projects:

spec-001-oauth-authentication.md    # Good
spec-001-auth.md                    # Too vague
SPEC_001_OAuth.md                   # Inconsistent format

2. Clear Project Boundaries

Define clear boundaries between projects:

AuthService:
  owns: [authentication, authorization, sessions]
  not: [user profiles, user preferences]

UserService:
  owns: [profiles, preferences, user data]
  not: [authentication, passwords]

3. Link Related Specs

Link specs that span projects:

# spec-002-checkout-payment.md

Related Specs:
- [User Cart](../UserService/spec-002-checkout-user.md)
- [Notifications](../NotificationService/spec-002-checkout-notifications.md)

4. Use Project Prefixes

Prefix increment names with primary project:

/sw:increment "payment-stripe-integration"
/sw:increment "auth-oauth-provider"
/sw:increment "user-profile-redesign"

Error Handling

Project Not Found

❌ Project "AuthService" not found in Azure DevOps

Options:
1. Create project "AuthService"
2. Map to existing project
3. Skip this project

Your choice [1]:

Ambiguous Project Detection

⚠️ Cannot determine project for increment 0014

Multiple projects detected:
- UserService (confidence: 0.6)
- PaymentService (confidence: 0.6)

Please select primary project:
1. UserService
2. PaymentService
3. Both (multi-project)

Your choice [3]:

Sync Conflicts

⚠️ Sync conflict detected

Local: spec-001 updated 2 hours ago
Azure DevOps: Work item updated 1 hour ago

Options:
1. Use local version
2. Use Azure DevOps version
3. Merge changes
4. View diff

Your choice [3]:

Integration with CI/CD

Auto-sync on Commit

# .github/workflows/specweave-sync.yml
on:
  push:
    paths:
      - '.specweave/docs/internal/specs/**'

jobs:
  sync:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - run: npx specweave ado-sync-all
        env:
          AZURE_DEVOPS_PAT: ${{ secrets.ADO_PAT }}

Project-specific Pipelines

# azure-pipelines.yml
trigger:
  paths:
    include:
      - .specweave/docs/internal/specs/$(System.TeamProject)/**

variables:
  - name: project
    value: $(System.TeamProject)

steps:
  - script: npx specweave ado-sync-project $(project)

Summary

This skill enables sophisticated multi-project Azure DevOps organizations by:

  1. Intelligent project detection from spec content
  2. Automatic folder organization by project/area/team
  3. Task splitting across multiple projects
  4. Cross-project linking and dependency tracking
  5. Bidirectional sync with Azure DevOps work items

Result: Seamless multi-project coordination with zero manual overhead!


Skill Version: 1.0.0 Introduced: SpecWeave v0.17.0 Last Updated: 2025-11-11

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

27.76%
按下载量换算40

Antigravity

22.68%
按下载量换算33

Cursor

16.41%
按下载量换算24

Gemini CLI

13.72%
按下载量换算20

OpenCode

8.54%
按下载量换算12

Codex

3.62%
按下载量换算5

安全审计

暂无安全审计结果可展示。

权限和风险

external-service

该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills