Files
obelisk/packaging/stage-skill-repo.sh
T
tommy0103 f963f14b10 fix: stabilize live session UI and skill publishing
Keep message navigation and progress state synchronized, and preserve
sequential split-flap count updates with a bounded queue.

Publish the Obelisk skill under skills/obelisk for npx skills, sharing
the same staging layout between CI and local releases with regression coverage.
2026-07-13 22:02:44 +08:00

35 lines
1.0 KiB
Bash

#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
TARGET_DIR="${1:-}"
ARTIFACT_DIR="${2:-$ROOT_DIR/dist/obelisk-skill}"
if [ -z "$TARGET_DIR" ]; then
echo "Usage: packaging/stage-skill-repo.sh <target-repo> [skill-artifact]" >&2
exit 1
fi
if [ "$TARGET_DIR" = "/" ] || [ "$TARGET_DIR" = "." ] || [ "$TARGET_DIR" = "$ROOT_DIR" ]; then
echo "Error: refusing to replace unsafe target directory: $TARGET_DIR" >&2
exit 1
fi
for required in SKILL.md package.json references scripts; do
if [ ! -e "$ARTIFACT_DIR/$required" ]; then
echo "Error: skill artifact missing $required at $ARTIFACT_DIR" >&2
exit 1
fi
done
mkdir -p "$TARGET_DIR"
find "$TARGET_DIR" -mindepth 1 \
! -path "$TARGET_DIR/.git" \
! -path "$TARGET_DIR/.git/*" \
-delete
mkdir -p "$TARGET_DIR/skills/obelisk"
cp -R "$ARTIFACT_DIR"/. "$TARGET_DIR/skills/obelisk/"
cp "$ROOT_DIR/packaging/skill-README.md" "$TARGET_DIR/README.md"
cp "$ROOT_DIR/packaging/skill-LICENSE" "$TARGET_DIR/LICENSE"