refactor(cli): 엔진 전역화(.yakcloud 다운로드 소스) + 스캐폴드 최소화 + shared 기본 — 0.18.0

엔진(deploy/ctl/dev.py)은 install.sh 가 ~/.config/yakcloud/lib 로 설치, CLI 가 전역 실행.
project init 스캐폴드 = 앱+매니페스트+얇은 .gitea CI 만. 데이터소스 기본 shared.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-08-29 13:08:21 +09:00
parent d8874eaed7
commit fbdf8f68df
7 changed files with 91 additions and 68 deletions

View File

@ -14,16 +14,27 @@ curl -fsSL -H 'Cache-Control: no-cache' -H 'Pragma: no-cache' \
"$REPO/raw/branch/$BRANCH/bin/yakcloud?nocache=$BUST" -o "$DEST/yakcloud"
chmod +x "$DEST/yakcloud"
# Claude Code 전역 슬래시 명령(/yakcloud) 설치 — opt-out: YAKCLOUD_NO_CLAUDE_CMD=1
# 전역 엔진(deploy/ctl/dev.py) → ~/.config/yakcloud/lib — 프로젝트에 복제하지 않는다(전역 1벌).
LIB_DIR="${YAKCLOUD_LIB_DIR:-$HOME/.config/yakcloud/lib}"
mkdir -p "$LIB_DIR"
for n in deploy ctl dev; do
curl -fsSL -H 'Cache-Control: no-cache' -H 'Pragma: no-cache' \
"$REPO/raw/branch/$BRANCH/.yakcloud/$n.py?nocache=$BUST" -o "$LIB_DIR/$n.py" 2>/dev/null \
|| echo " ⚠ 엔진 $n 다운로드 실패(무시 가능 — CLI 가 자동 재시도)"
done
echo "✓ 엔진 설치 → $LIB_DIR (deploy/ctl/dev.py)"
# Claude Code 전역 스킬 + 슬래시 명령(/yakcloud) 설치 — opt-out: YAKCLOUD_NO_CLAUDE_CMD=1
if [ -z "${YAKCLOUD_NO_CLAUDE_CMD:-}" ]; then
SKILL_DIR="${CLAUDE_SKILLS_DIR:-$HOME/.claude/skills}/yakcloud-deploy"
CMD_DIR="${CLAUDE_COMMANDS_DIR:-$HOME/.claude/commands}"
if mkdir -p "$CMD_DIR" 2>/dev/null && \
curl -fsSL -H 'Cache-Control: no-cache' -H 'Pragma: no-cache' \
"$REPO/raw/branch/$BRANCH/.claude/commands/yakcloud.md?nocache=$BUST" -o "$CMD_DIR/yakcloud.md" 2>/dev/null; then
echo "Claude Code 전역 슬래시 명령 설치 → $CMD_DIR/yakcloud.md"
else
echo " ⚠ /yakcloud 슬래시 명령 설치 건너뜀(무시 가능) — 터미널 yakcloud 는 정상"
fi
mkdir -p "$SKILL_DIR" "$CMD_DIR" 2>/dev/null || true
curl -fsSL -H 'Cache-Control: no-cache' -H 'Pragma: no-cache' \
"$REPO/raw/branch/$BRANCH/.claude/skills/yakcloud-deploy/SKILL.md?nocache=$BUST" -o "$SKILL_DIR/SKILL.md" 2>/dev/null \
&& echo "배포 스킬 설치 → $SKILL_DIR/SKILL.md" || echo " ⚠ 스킬 설치 건너뜀(무시 가능)"
curl -fsSL -H 'Cache-Control: no-cache' -H 'Pragma: no-cache' \
"$REPO/raw/branch/$BRANCH/.claude/commands/yakcloud.md?nocache=$BUST" -o "$CMD_DIR/yakcloud.md" 2>/dev/null \
&& echo "✓ /yakcloud 슬래시 명령 설치 → $CMD_DIR/yakcloud.md" || echo " ⚠ 슬래시 명령 설치 건너뜀(무시 가능)"
fi
echo "✓ 완료. PATH 에 $DEST 가 있는지 확인하세요:"