find_islands
Find groups of files that are isolated from the rest of the codebase to identify disconnected subsystems and potential code splitting opportunities.
Instructions
Find disconnected components (islands) in the dependency graph.
Purpose: Identify groups of files that are isolated from the rest of the codebase (no dependencies between groups).
Pagination: Default limit of 200 results per page. Check response.pagination.has_more to fetch more pages.
Sorting: Default order is descending (largest islands first). Use sort parameter to change.
Returns: Object with pagination metadata and array of islands, where each island contains multiple file paths that depend on each other.
Use this when:
Identifying isolated subsystems
Understanding codebase modularity
Finding potential code splitting opportunities
Detecting disconnected feature modules
IMPORTANT: Only considers static imports (string literals). Dynamic imports are filtered. See CLAUDE.md section "Dependency/Import Extraction" for details.
Size filtering: Use min_island_size and max_island_size to filter by component size. Default: 2-500 files (or 50% of total files).
Example output: {"pagination": {...}, "results": [{"island_id": 1, "size": 5, "paths": ["a.rs", "b.rs", "c.rs", "d.rs", "e.rs"]}]}
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of islands per page (default: 200) | |
| max_island_size | No | Maximum files in an island to include (default: 500 or 50% of total files) | |
| min_island_size | No | Minimum files in an island to include (default: 2) | |
| offset | No | Pagination offset (skip first N islands). Use with limit for pagination. | |
| sort | No | Sort order: 'asc' (smallest islands first) or 'desc' (largest islands first, default) |