Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/tomevault-io/skills-registry --skill install-dependency명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SKILL.md 표시 중
| name | install-dependency |
| description | > Use when this capability is needed. |
Monorepo-aware dependency installation using bundled scripts.
CRITICAL: After EVERY AskUserQuestion call, check if answers are empty/blank. Known Claude Code bug: outside Plan Mode, AskUserQuestion silently returns empty answers without showing UI.
If answers are empty: DO NOT proceed with assumptions. Instead:
Types: python (pip), js (bun), system (apt/brew/dnf)
SKILL_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "$SKILL_DIR/scripts/setup-env.sh" # 1. Setup env
"$SKILL_DIR/scripts/scan.sh" <pkg> <type> # 2. Check existing
# 3. Prompt user if needed (see below)
"$SKILL_DIR/scripts/install-{python,js,system}.sh" <pkg> [shared|local] # 4. Install
"$SKILL_DIR/scripts/verify.sh" <pkg> <type> # 5. Verify
"$SKILL_DIR/scripts/cleanup.sh" # 6. Cleanup (optional)
SKILL_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "$SKILL_DIR/scripts/setup-env.sh"
Sets $LOCAL_TMP, $GIT_ROOT, overrides $TMPDIR to avoid /tmp/claude conflicts.
if "$SKILL_DIR/scripts/scan.sh" <package> <type>; then
echo "✓ Package already installed"
exit 0
fi
Exit codes: 0=found, 1=not found, 2=usage error.
Decision tree:
if_found_in_parent:
action: Report "✓ <package> already at <path>"
install: false
if_at_git_root:
action: Install locally (no prompt)
mode: local
if_in_subproject_not_found:
action: Use AskUserQuestion
options:
- "Shared at {GIT_ROOT} (recommended)" → mode=shared
- "Local at {PWD} (isolated)" → mode=local
AskUserQuestion example:
question: "Where should {package} be installed?"
header: "Location"
options:
- label: "Shared at {GIT_ROOT} (recommended)"
description: "Install once, available to all subprojects"
- label: "Local at {PWD} (isolated)"
description: "Install only for this project"
Python:
"$SKILL_DIR/scripts/install-python.sh" <package> [shared|local]
JavaScript:
"$SKILL_DIR/scripts/install-js.sh" <package> [shared|local]
System (requires approval):
# First check needs approval
"$SKILL_DIR/scripts/install-system.sh" <package>
# Output: NEEDS_APPROVAL:<package> via apt/brew/dnf
# After AskUserQuestion approval:
APPROVED=1 "$SKILL_DIR/scripts/install-system.sh" <package>
"$SKILL_DIR/scripts/verify.sh" <package> <type> [module_name]
Optional module_name for Python packages where import name differs (e.g., PIL vs pillow).
"$SKILL_DIR/scripts/cleanup.sh"
Removes $LOCAL_TMP (.tmp/) directory.
✓ Installed <package>
Location: <path>
Method: <pip/bun/apt/brew/dnf>
| Script | Args | Exit Codes | Output |
|---|---|---|---|
| setup-env.sh | (none, source it) | - | Sets env vars |
| scan.sh | pkg type | 0=found, 1=not found | FOUND:path or NOT_FOUND |
| install-python.sh | pkg [shared|local] | 0=success | INSTALLED:path |
| install-js.sh | pkg [shared|local] | 0=success | INSTALLED:path |
| install-system.sh | pkg | 0=success | NEEDS_APPROVAL or INSTALLED:system |
| verify.sh | pkg type [module] | 0=success, 1=failed | VERIFIED:path or FAILED |
| cleanup.sh | (none) | 0=success | CLEANED:path |
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
SOC 직업 분류 기준