本文へ移動
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(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

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

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

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 のスキルをすべて見る

このスキルの問題を報告する