Coordinate parallel feature development with file ownership strategies, conflict avoidance rules, and integration patterns for multi-agent implementation. Use this skill when decomposing features for parallel development, establishing file ownership boundaries, or managing integration between parallel work streams.
From agent-teamsnpx claudepluginhub ai-foundry-core/ril-agents --plugin agent-teamsThis skill uses the workspace's default tool permissions.
references/file-ownership.mdreferences/merge-strategies.mdSearches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Guides slash command development for Claude Code: structure, YAML frontmatter, dynamic arguments, bash execution, user interactions, organization, and best practices.
Strategies for decomposing features into parallel work streams, establishing file ownership boundaries, avoiding conflicts, and integrating results from multiple implementer agents.
Assign each implementer ownership of specific directories:
implementer-1: src/components/auth/
implementer-2: src/api/auth/
implementer-3: tests/auth/
Best for: Well-organized codebases with clear directory boundaries.
Assign ownership of logical modules (which may span directories):
implementer-1: Authentication module (login, register, logout)
implementer-2: Authorization module (roles, permissions, guards)
Best for: Feature-oriented architectures, domain-driven design.
Assign ownership of architectural layers:
implementer-1: UI layer (components, styles, layouts)
implementer-2: Business logic layer (services, validators)
implementer-3: Data layer (models, repositories, migrations)
Best for: Traditional MVC/layered architectures.
One owner per file. No file should be assigned to multiple implementers.
If a file genuinely needs changes from multiple implementers:
When implementers need to coordinate at boundaries:
// src/types/auth-contract.ts (owned by team-lead, read-only for implementers)
export interface AuthResponse {
token: string;
user: UserProfile;
expiresAt: number;
}
export interface AuthService {
login(email: string, password: string): Promise<AuthResponse>;
register(data: RegisterData): Promise<AuthResponse>;
}
Both implementers import from the contract file but neither modifies it.
Each implementer builds a complete feature slice (UI + API + tests):
implementer-1: Login feature (login form + login API + login tests)
implementer-2: Register feature (register form + register API + register tests)
Pros: Each slice is independently testable, minimal integration needed. Cons: May duplicate shared utilities, harder with tightly coupled features.
Each implementer builds one layer across all features:
implementer-1: All UI components (login form, register form, profile page)
implementer-2: All API endpoints (login, register, profile)
implementer-3: All tests (unit, integration, e2e)
Pros: Consistent patterns within each layer, natural specialization. Cons: More integration points, layer 3 depends on layers 1 and 2.
Mix vertical and horizontal based on coupling:
implementer-1: Login feature (vertical slice — UI + API + tests)
implementer-2: Shared auth infrastructure (horizontal — middleware, JWT utils, types)
Best for: Most real-world features with some shared infrastructure.
All implementers work on the same feature branch:
Each implementer works on a sub-branch:
feature/auth
├── feature/auth-login (implementer-1)
├── feature/auth-register (implementer-2)
└── feature/auth-tests (implementer-3)