跳到正文
cccskills
免费在 GitHub 公开

parallel-feature-development

Prevent tool call conflicts when making concurrent edits across a codebase. Establishes strict file ownership, interface contracts, and merge strategies. Use with parallel-agents when executing concurrent code changes.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md6.0 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Concurrent Feature Development

Overview

When making concurrent code edits (e.g. implementing the frontend and backend of a slice simultaneously), the #1 risk is file conflicts — trying to modify the same file from multiple streams, which causes the operation to fail. This skill prevents that with strict file ownership, typed interface contracts, and batched execution.

Core principle: One concurrent stream per file, always. No exceptions. If two streams need the same file, they're not independent — restructure the decomposition.

When to Use

  • Implementing multiple surfaces (e.g. BE and FE) in the same turn
  • A phase plan has slices that can be implemented concurrently
  • Multiple features touching different subsystems simultaneously
  • Any time parallel-agents is used for implementation (not analysis)

When NOT to Use

  • Single agent doing sequential work
  • Agents only analyzing/reviewing (no code changes)
  • All changes are in the same file or module

The Cardinal Rule

ONE OWNER PER FILE. NO EXCEPTIONS.

If Stream A owns src/auth/login.ts, no other stream may modify that file — not even to add an import.

The Protocol

1. Ownership Declaration

Before writing code concurrently, create an explicit ownership manifest:

## File Ownership Manifest

| Stream | Owned Files | Interface Files |
|--------|-------------|-----------------|
| Stream 1 (Auth) | `src/auth/*`, `src/middleware/auth.*` | `src/types/auth.*` |
| Stream 2 (API) | `src/api/*`, `src/middleware/api.*` | `src/types/api.*` |
| Stream 3 (UI) | `src/components/*`, `src/pages/*` | `src/types/ui.*` |

### Shared Files (Frozen)
- `src/types/shared.*` — modify only in synthesis step
- `src/config.*` — frozen during parallel work
- Package manifest — frozen during parallel work

Rules:

  • Every source file appears in exactly ONE workstream
  • Shared files are frozen — do not mutate concurrently
  • If a stream needs a change to a shared file, document it as a // BOUNDARY: stub
  • Interface files define the contract between streams

2. Interface Contracts

Before generating concurrent edits, define the typed interfaces they'll communicate through.

Example (pseudocode — adapt to your language):

// src/types/auth — Stream 1 PRODUCES, Stream 2 CONSUMES
AuthResult { userId: string, roles: string[], token: string }

// src/types/api — Stream 2 PRODUCES, Stream 3 CONSUMES
UserResponse { id: string, name: string, email: string }

Contract rules:

  • Interfaces defined BEFORE generating logic
  • Do NOT change interface files during the concurrent phase
  • Each interface has exactly one PRODUCER and one or more CONSUMERS
  • Develop against the interface, not assumptions

3. Batched Tool Execution

When generating concurrent tool calls:

## Stream: [Role]

### Your Owned Files
[Explicit list — you may ONLY create/modify these files]

### Frozen Files (DO NOT MODIFY)
[List of shared files — read but never write]

### Interface Contract
[The interfaces you produce and consume]

### Boundary Protocol
If you need something from another stream's domain:
1. Import the interface type (read-only)
2. Code against the interface, not the implementation
3. Add a `// BOUNDARY:` comment if you need a shared file change

4. Merge Protocol

Process dependencies in order:

1. Interface files (already defined, verify no changes)
2. Stream with fewest dependencies first
3. Stream with most dependencies last
4. Shared file modifications (from BOUNDARY stubs)

Execution checklist:

  • No file appears in multiple streams' edits
  • All interface contracts satisfied (types compile)
  • Shared file BOUNDARY stubs resolved in a sequential commit
  • Full test suite passes after the batched edit

5. Conflict Resolution

Conflict TypeResolution
Same file modifiedSeparate edits into sequential tool calls
Interface mismatchProducer's implementation doesn't match contract → fix producer
Missing dependencyAssumed something exists that doesn't → add BOUNDARY stub
Mutual dependencyA needs B's output AND B needs A's → can't go concurrent, code sequentially

Integration with Kit

  • With session-continuity Protocol 9 (Parallel Claim): Surface tags (BE, FE, QA) and claim markers ([!]) in progress files serve as your live ownership manifest.
  • With boundary-not-placeholder: Use // BOUNDARY: stubs for cross-stream dependencies. Resolve them sequentially afterward.
  • With implement-slice: When a slice enters parallel mode (step 1.5), claim all tags concurrently. The synthesis step (6.5) resolves BOUNDARY stubs on frozen files.

Example: Concurrent Vertical Slice

Slice: "User can view their profile"

StreamSurfaceOwned FilesProducesConsumes
DBSchemamigrations/003-profile.*, src/db/profile.*ProfileRecord type—
APIEndpointsrc/api/profile.*, src/api/profile.test.*GET /api/profileProfileRecord
UIComponentsrc/components/Profile.*, src/pages/profile.*Rendered pageGET /api/profile

Merge order: DB → API → UI (dependency chain)

Frozen files: src/types/shared.*, config, package manifest

Common Mistakes

MistakeConsequenceFix
Two streams mutate the same fileTool call conflict, lost editsONE STREAM PER FILE
No interface contractsMismatched assumptionsDefine types BEFORE editing
Skipping integration testsInterfaces match but behavior doesn'tFull suite after batch edits
Parallelizing tightly coupled codeConstant blocking, stubs everywhereCode sequentially

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Audit and improve web accessibility following WCAG 2.1 guidelines. Use when asked to "improve accessibility", "a11y audit", "WCAG compliance", "screen reader support", "keyboard navigation", or "make accessible".

中文简介正在准备中。当前显示原文说明。

RepairYourTech/cfsa-antigravity62026年8月16日 更新

Structured methodology for adversarial thinking — generating attack scenarios, abuse cases, race conditions, and security edge cases against specs and implementations. Produces spec-level gap items, not code-level fixes.

中文简介正在准备中。当前显示原文说明。

RepairYourTech/cfsa-antigravity62026年8月16日 更新

Orchestrate multiple Antigravity skills through guided workflows for SaaS MVP delivery, security audits, AI agent builds, and browser QA.

中文简介正在准备中。当前显示原文说明。

RepairYourTech/cfsa-antigravity62026年8月16日 更新

Master REST and GraphQL API design principles to build intuitive, scalable, and maintainable APIs that delight developers. Use when designing new APIs, reviewing API specifications, or establishing API design standards.

中文简介正在准备中。当前显示原文说明。

RepairYourTech/cfsa-antigravity62026年8月16日 更新

Manage API versioning and evolution with URL/header/query strategies, deprecation workflows, breaking change classification, sunset headers, and consumer-driven contract testing. Use when designing versioning strategy, deprecating endpoints, or evolving API contracts.

中文简介正在准备中。当前显示原文说明。

RepairYourTech/cfsa-antigravity62026年8月16日 更新

Analyzes codebase structure, data flow, module relationships, and key patterns to generate and maintain a living architecture document (ARCHITECTURE.md).

中文简介正在准备中。当前显示原文说明。

RepairYourTech/cfsa-antigravity62026年8月16日 更新

查看 RepairYourTech 的全部技能

报告此技能的问题