소스 정보
- 저장소
- tools-only/X-Skills
- 최근 소스 활동
- 2026년 3월 1일 03:37
- 감지된 SKILL.md 언어
- 영어
- 스타
- 7
- 포크
- 1
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/tools-only/X-Skills --skill workflow-beads-dependency-management명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | workflow-beads-dependency-management |
| description | bd dep add bd-15 bd-10 --type blocks |
Use this skill when: Creating relationships between issues, managing blockers, or organizing work hierarchies
Beads supports four dependency types that create a directed graph of issue relationships. Understanding when to use each type is critical for effective issue tracking.
blocks - Hard BlockerPurpose: Prevents an issue from being "ready" until the blocker is closed
Use when: Implementation of X literally cannot proceed without Y being done first
# bd-15 cannot start until bd-10 is complete
bd dep add bd-15 bd-10 --type blocks
# bd-15 won't appear in `bd ready` until bd-10 is closed
Example Use Cases:
Graph Representation:
bd-10 --> bd-15 (bd-10 blocks bd-15)
related - Soft AssociationPurpose: Creates context link without blocking
Use when: Two issues share context but don't block each other
# bd-20 and bd-18 are contextually related
bd dep add bd-20 bd-18 --type related
# Both can be worked on independently
Example Use Cases:
Graph Representation:
bd-18 <--> bd-20 (bidirectional soft link)
parent-child - HierarchyPurpose: Creates epic/subtask relationships
Use when: Organizing work into epics and subtasks
# bd-25 is a subtask of epic bd-22
bd dep add bd-25 bd-22 --type parent-child
# Parent: bd-22 (epic)
# Child: bd-25 (subtask)
Example Use Cases:
Graph Representation:
bd-22 (epic)
├─ bd-25 (subtask)
├─ bd-26 (subtask)
└─ bd-27 (subtask)
discovered-from - Discovery TrailPurpose: Tracks issues discovered during work on another issue
Use when: You find new work during execution and want to maintain the discovery chain
# bd-30 was discovered while working on bd-28
bd dep add bd-30 bd-28 --type discovered-from
# Preserves discovery context
Example Use Cases:
Graph Representation:
bd-28 (working on) --> bd-30 (discovered)
# General syntax
bd dep add <target-issue> <source-issue> --type <type>
# Examples
bd dep add bd-5 bd-3 --type blocks
bd dep add bd-10 bd-8 --type related
bd dep add bd-15 bd-12 --type parent-child
bd dep add bd-20 bd-18 --type discovered-from
bd dep remove bd-5 bd-3 --type blocks
# Show all dependencies for an issue
bd dep tree bd-42
# Show specific dependency type
bd dep tree bd-42 --type blocks
# Detect circular dependencies
bd dep cycles
# Beads prevents invalid cycles when adding dependencies
Create a feature epic with dependencies between subtasks:
# Create epic
bd create "Implement user authentication" -t epic -p 0 --json
# Returns: bd-100
# Create subtasks
bd create "Design auth schema" -t task -p 0 --json # bd-101
bd create "Implement JWT tokens" -t task -p 1 --json # bd-102
bd create "Add login endpoints" -t task -p 1 --json # bd-103
bd create "Add auth middleware" -t task -p 2 --json # bd-104
# Link to epic
bd dep add bd-101 bd-100 --type parent-child
bd dep add bd-102 bd-100 --type parent-child
bd dep add bd-103 bd-100 --type parent-child
bd dep add bd-104 bd-100 --type parent-child
# Chain dependencies
bd dep add bd-102 bd-101 --type blocks # JWT depends on schema
bd dep add bd-103 bd-102 --type blocks # Endpoints depend on JWT
bd dep add bd-104 bd-103 --type blocks # Middleware depends on endpoints
# Result: Linear workflow within epic
# bd ready will show: bd-101 (first unblocked)
Track discovered work during execution:
# Working on refactoring
bd update bd-50 --status in_progress --json
# Discover issues during work
bd create "Fix user validation bug" -t bug -p 0 --json # bd-51
bd dep add bd-51 bd-50 --type discovered-from
bd create "Add missing user tests" -t task -p 2 --json # bd-52
bd dep add bd-52 bd-50 --type discovered-from
bd create "Update user documentation" -t task -p 3 --json # bd-53
bd dep add bd-53 bd-50 --type discovered-from
# Now you have discovery trail: bd-50 -> bd-51, bd-52, bd-53
# Can work on any discovered issue independently
Multiple features depend on same foundation:
# Foundation
bd create "Build base API client" -t task -p 0 --json # bd-200
# Dependent features
bd create "User profile feature" -t feature -p 1 --json # bd-201
bd create "Settings feature" -t feature -p 1 --json # bd-202
bd create "Dashboard feature" -t feature -p 1 --json # bd-203
# All features blocked by foundation
bd dep add bd-201 bd-200 --type blocks
bd dep add bd-202 bd-200 --type blocks
bd dep add bd-203 bd-200 --type blocks
# Result: Complete bd-200, then all features become ready
Group related issues without blocking:
# Create related issues
bd create "Frontend: User profile UI" -t task -p 1 --json # bd-300
bd create "Backend: User profile API" -t task -p 1 --json # bd-301
bd create "Docs: User profile guide" -t task -p 3 --json # bd-302
# Link as related (no blocking)
bd dep add bd-300 bd-301 --type related
bd dep add bd-300 bd-302 --type related
bd dep add bd-301 bd-302 --type related
# Result: All show as ready, can be worked on in any order
# But context is preserved between related issues
# List issues that are blocked
bd list --status blocked --json
# Show what's blocking an issue
bd dep tree bd-50 | grep "blocks"
# Ready work = no blocking dependencies
bd ready --json --limit 10
# Ready work for specific priority
bd ready --priority 0 --json
# Find all issues discovered from bd-X
bd dep tree bd-50 --type discovered-from
# Show all subtasks of epic
bd dep tree bd-100 --type parent-child
# Filter by status
bd list --json | jq '.[] | select(.parent == "bd-100")'
SITUATION → DEPENDENCY TYPE
─────────────────────────────────────────────────────────────
X must complete before Y can start → blocks
X and Y are related but independent → related
Y is subtask of epic X → parent-child
Y was discovered while working on X → discovered-from
Beads prevents cycles in blocks dependencies, but be mindful:
# INVALID - creates cycle
bd dep add bd-10 bd-5 --type blocks
bd dep add bd-5 bd-10 --type blocks # Error: would create cycle
# VALID - use related instead
bd dep add bd-10 bd-5 --type related
bd dep add bd-5 bd-10 --type related
blocks only when truly necessarybd dep cycles periodicallyblocksProblem: Everything blocks everything, nothing is ready
Solution: Reserve blocks for hard dependencies. Use related for soft associations.
Problem: Lose context of why work was created
Solution: Always link discovered work with discovered-from
Problem: Subtasks not linked to parent epic
Solution: Always create parent-child link when breaking down epics
beads-workflow.md - Core bd CLI commandsbeads-multi-session-patterns.md - Using dependencies in long-horizon tasksbeads-context-strategies.md - Preserving dependency contextbeads-context/references/beads_cli_reference.md for full bd dep command reference