---
name: vara-skills-upgrade-6eaf405b5d3d
description: Use when asked to upgrade or update vara-skills to the latest version, or to check what version is installed. Do not use for Vara app development tasks.
---

# Vara Skills Upgrade

## Role

Upgrade the vara-skills pack to the latest version. Invoked automatically by the preamble when `UPGRADE_AVAILABLE` is detected, or manually via `/vara-skills-upgrade`.

## Standalone Usage

Run the update check with force (busts cache and snooze):

```bash
_VS_DIR=""
for _d in \
  "${VARA_SKILLS_DIR:-}" \
  "$HOME/.claude/skills/vara-skills" \
  ".claude/skills/vara-skills" \
  "$HOME"/.claude/plugins/cache/vara-skills/vara-skills/*; do
  if [ -n "$_d" ] && [ -f "$_d/bin/vara-skills-update-check" ]; then
    _VS_DIR="$_d"; break
  fi
done
VARA_SKILLS_DIR="${_VS_DIR:-${VARA_SKILLS_DIR:-}}"
export VARA_SKILLS_DIR
_UPD=$("$VARA_SKILLS_DIR/bin/vara-skills-update-check" --force 2>/dev/null || true)
[ -n "$_UPD" ] && echo "$_UPD" || echo "vara-skills is up to date ($(cat "$VARA_SKILLS_DIR/VERSION" 2>/dev/null || echo unknown))"
```

Then follow the routing below based on output.

## Inline Upgrade Flow

This section is called by the preamble when the update check outputs `UPGRADE_AVAILABLE <old> <new>`.

### Step 1: Check auto-upgrade

```bash
_AUTO="${VARA_SKILLS_AUTO_UPGRADE:-}"
```

If `_AUTO` is `true` or `1`, skip to Step 3 (upgrade silently).

### Step 2: Ask the user

Use AskUserQuestion:

> vara-skills **v{new}** is available (you have v{old}).
>
> A) Upgrade now
> B) Not now (snooze)
> C) Never ask again

**If A (Upgrade now):** proceed to Step 3.

**If B (Not now):** Write snooze state and continue with the original skill.

```bash
# Read current snooze level (default to 0 if no file)
_SNOOZE_LEVEL=0
_SNOOZE_FILE="${VARA_SKILLS_STATE_DIR:-$HOME/.vara-skills}/update-snoozed"
if [ -f "$_SNOOZE_FILE" ]; then
  _SNOOZE_LEVEL=$(awk '{print $2}' "$_SNOOZE_FILE" 2>/dev/null || echo 0)
fi
_SNOOZE_LEVEL=$(( _SNOOZE_LEVEL + 1 ))
mkdir -p "${VARA_SKILLS_STATE_DIR:-$HOME/.vara-skills}"
echo "{new} $_SNOOZE_LEVEL $(date +%s)" > "$_SNOOZE_FILE"
```

Tell the user the snooze duration (level 1: 24h, level 2: 48h, level 3+: 7 days) and continue.

**If C (Never ask again):** Tell the user to add `export VARA_SKILLS_UPDATE_CHECK=false` to their shell profile (e.g. `~/.bashrc`, `~/.zshrc`, or `~/.config/fish/config.fish`). Continue with the original skill.

### Step 3: Perform upgrade

Detect the install type:

```bash
# VARA_SKILLS_DIR is inherited from preamble or standalone block above
if [ -d "${VARA_SKILLS_DIR:-.}/.git" ]; then
  echo "INSTALL_TYPE: git"
elif echo "$VARA_SKILLS_DIR" | grep -q 'plugins/cache'; then
  echo "INSTALL_TYPE: plugin"
else
  echo "INSTALL_TYPE: non-git"
fi
```

**If git install:**

```bash
cd "$VARA_SKILLS_DIR"
git fetch origin
git reset --hard origin/main
```

**If plugin install:**

```bash
_MKT="$HOME/.claude/plugins/marketplaces/vara-skills"
if [ -d "$_MKT/.git" ]; then
  git -C "$_MKT" fetch origin 2>/dev/null && git -C "$_MKT" reset --hard origin/main 2>/dev/null
fi
claude plugin update vara-skills@vara-skills
```

**If non-git install:** Tell the user: "This is not a git install. Re-clone from https://github.com/gear-foundation/vara-skills or reinstall the Claude Code plugin."

### Step 4: Post-upgrade

After a successful git or plugin upgrade:

```bash
STATE_DIR="${VARA_SKILLS_STATE_DIR:-$HOME/.vara-skills}"
mkdir -p "$STATE_DIR"
echo "{old}" > "$STATE_DIR/just-upgraded-from"
rm -f "$STATE_DIR/last-update-check" "$STATE_DIR/update-snoozed"
```

**If git install**, show what changed:

```bash
git log --oneline "{old_tag}..HEAD" 2>/dev/null | head -20
```

If the tag lookup fails, just show: "Upgraded vara-skills from v{old} to v{new}."

**If plugin install**, just show: "Upgraded vara-skills from v{old} to v{new}. Restart Claude Code to apply changes."

Then continue with the original skill that triggered the preamble.


---
Source attribution: gear-foundation
Original project: https://github.com/gear-foundation/vara-skills/blob/44c1454141ececc8ef3a88903b625260f370c4de/skills/vara-skills-upgrade/SKILL.md
License: MIT
License information: https://opensource.org/license/mit
Original upstream instructions; downloaded from Mega AI Hub.

## Upstream license notice

MIT License

Copyright (c) 2026 Gear Foundation

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.



# Mega AI Hub resource metadata

Creator / publisher: gear-foundation
Original project: https://github.com/gear-foundation/vara-skills/blob/44c1454141ececc8ef3a88903b625260f370c4de/skills/vara-skills-upgrade/SKILL.md
Attribution basis: Source repository record

Fields of work: Development & Engineering, Product Management
Roles: Backend Developer, DevOps / SRE, Technical Product Manager
Specialties: Backend
Tools: Vara
Country applicability: Country not specified
Classification basis: Source catalog labels
Instruction SHA-256: cf243b2cdec45055aa3808fd07d98695dd88e5f4aef2082c890918ca81ca50f1
