원클릭으로
kf-update
Update Kiloforge skill definitions and CLI tools from the latest release
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Update Kiloforge skill definitions and CLI tools from the latest release
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Kiloforge CLI tools reference and shared documentation hub. Lists available tools, provides runtime environment info, and hosts reference docs used by other kf-* skills.
Receive a track ID, validate it is an active unclaimed track, then implement it following the kiloforge workflow.
Product strategy advisor: research the codebase and competitive landscape to provide product design, branding, feature prioritization, and competitive analysis advice. Produces actionable reports to .agent/kf/_reports/product-advisor/ designed for handoff to /kf-architect.
Project architect: research the codebase and distill feature requests into well-scoped kiloforge tracks with specs and implementation plans. Splits large work into multiple tracks (including BE/FE splits). Merges track artifacts to the primary branch so developer workers can claim them.
Resolve git merge conflicts during push or pull sync operations. Fetches remote changes, merges, resolves conflicts (or escalates), and completes the sync.
Interactive project bootstrapper with platform-aware defaults. Guides users through project creation decisions, generates a blueprint, scaffolds the project, and invokes kf-setup with pre-populated answers.
| name | kf-update |
| description | Update Kiloforge skill definitions and CLI tools from the latest release |
Update skill definitions in ~/.claude/skills/ and CLI tools in ~/.kf/bin/ from the latest GitHub release.
.agent/kf/ directory (use /kf-setup first)Check that ~/.kf/bin/ exists:
ls ~/.kf/bin/*.py
If not found, suggest /kf-setup instead. HALT.
Check the installed version:
CURRENT_VERSION=""
if [ -f ~/.kf/VERSION ]; then
CURRENT_VERSION=$(cat ~/.kf/VERSION)
fi
echo "Installed: ${CURRENT_VERSION:-unknown}"
Check the latest release version from GitHub:
LATEST_TAG=$(gh release view --repo Kiloforge/kiloforge-skills --json tagName -q '.tagName' 2>/dev/null)
if [ -z "$LATEST_TAG" ]; then
echo "ERROR: Could not fetch latest release. Check network and gh auth."
# HALT
fi
LATEST_VERSION="${LATEST_TAG#v}"
echo "Latest release: $LATEST_VERSION ($LATEST_TAG)"
If CURRENT_VERSION equals LATEST_VERSION, report that skills are already up to date and HALT (unless the user explicitly wants to force update).
Clone the release tag to a temporary directory:
KF_TMPDIR=$(mktemp -d)
git clone --depth 1 --branch "$LATEST_TAG" \
https://github.com/Kiloforge/kiloforge-skills.git \
"$KF_TMPDIR/kiloforge-skills"
If the clone fails, HALT — the update cannot proceed without the release source.
python3 "$KF_TMPDIR/kiloforge-skills/kf-bin/scripts/kf-install.py" --update
This replaces:
~/.claude/skills/~/.kf/bin/~/.kf/VERSION with the installed versionNo per-project changes are made in update mode.
rm -rf "$KF_TMPDIR"
If the current project has legacy per-project bin files at .agent/kf/bin/, clean them up:
if [ -d .agent/kf/bin ]; then
echo "Cleaning legacy per-project bin directory..."
rm -rf .agent/kf/bin
git add -A .agent/kf/bin
git diff --cached --quiet || git commit -m "chore(kf): remove legacy per-project bin/ (now global at ~/.kf/)"
fi
If running from a worktree (not the primary branch), merge using the standard protocol:
CURRENT_BRANCH=$(git branch --show-current)
PRIMARY_BRANCH=$(~/.kf/bin/kf-primary-branch.py 2>/dev/null || echo "main")
if [ "$CURRENT_BRANCH" != "$PRIMARY_BRANCH" ]; then
~/.kf/bin/kf-merge.py --holder "$(basename $(pwd))" --timeout 0
fi
This is a metadata-only merge (no --verify needed). If exit code 2 (lock held), report and retry. If exit code 3 (conflicts), resolve while locked and re-run.
Show the output from kf-install.py — it reports which skills were added/updated and which scripts were copied.
Report the version change:
Updated: ${CURRENT_VERSION:-unknown} -> $LATEST_VERSION ($LATEST_TAG)