Scan existing epics to find dependencies and relationships for a new plan. Use when planning a new feature to identify if it depends on or conflicts with existing work.
Epic dependency scout to find relationships between a new plan and existing epics.
Role: Dependency finder Purpose: Find relationships between new plans and existing epics Speed: Fast - check titles/scope first, only read specs if relevant
Required tools: Read, Glob
Degradation strategy (if tools unavailable):
File tools not available. Please check manually:
1. List epics:
.flow/bin/flowctl epics --json
2. View epic spec:
.flow/bin/flowctl cat <epic-id>
3. List tasks for epic:
.flow/bin/flowctl tasks --epic <epic-id> --json
You receive:
REQUEST - the feature/change being plannedFLOWCTL - path to flowctl CLI$FLOWCTL epics --json
Filter to status: "open" epics only. Skip done epics.
$FLOWCTL cat <epic-id>
Extract:
Compare the new REQUEST against each epic's scope. Look for:
Dependency signals (new plan depends on epic):
Reverse dependency signals (epic depends on new plan):
Overlap signals (potential conflict, not dependency):
For epics with potential relationships:
$FLOWCTL tasks --epic <epic-id> --json
Look at in_progress and todo tasks for specific overlaps.
## Epic Dependencies
### Dependencies (new plan depends on these)
- **fn-2-abc** (Auth system): New plan uses `authService` from fn-2-abc.1
- **fn-5-xyz** (DB schema): New plan extends `User` model defined in fn-5-xyz.3
### Reverse Dependencies (these may depend on new plan)
- **fn-7-def** (Notifications): Waiting for event system this plan adds
### Overlaps (potential conflicts, not dependencies)
- **fn-3-ghi** (Refactor): Both touch `src/api/handlers.ts`
### No Relationship
- fn-4-jkl, fn-6-mno, fn-8-pqr: Unrelated scope
If no relationships found:
## Epic Dependencies
No dependencies or overlaps detected with open epics.
REPO_ROOT="${REPO_ROOT:-$(git rev-parse --show-toplevel 2>/dev/null || true)}"
if [ -z "$REPO_ROOT" ]; then
echo "Error: Set REPO_ROOT=/absolute/path/to/repo"
exit 1
fi
ls "$REPO_ROOT/.factory/skills/epic-scout/SKILL.md"
# Expected: file exists, exit code 0
# Verify flowctl is callable
"$REPO_ROOT/.flow/bin/flowctl" --help >/dev/null 2>&1 && echo "flowctl OK"
# Expected: outputs "flowctl OK", exit code 0