From 07588a86bc7dc66f6dbef7f87fbfaf9772cc0eda Mon Sep 17 00:00:00 2001 From: main Date: Thu, 19 Mar 2026 22:57:46 -0400 Subject: Install local CLI and skill links --- scripts/install-local.sh | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 scripts/install-local.sh (limited to 'scripts/install-local.sh') diff --git a/scripts/install-local.sh b/scripts/install-local.sh new file mode 100755 index 0000000..b087f70 --- /dev/null +++ b/scripts/install-local.sh @@ -0,0 +1,32 @@ +#!/usr/bin/env bash +set -euo pipefail + +ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +SKILL_SOURCE_ROOT="${ROOT_DIR}/assets/codex-skills" +LOCAL_ROOT="${1:-$HOME/.local}" +SKILL_DEST_ROOT="${2:-$HOME/.codex/skills}" +LOCAL_BIN_DIR="${LOCAL_ROOT}/bin" + +install_skill_link() { + local name="$1" + local source_dir="${SKILL_SOURCE_ROOT}/${name}" + local dest_dir="${SKILL_DEST_ROOT}/${name}" + mkdir -p "${SKILL_DEST_ROOT}" + rm -rf "${dest_dir}" + ln -s "${source_dir}" "${dest_dir}" + printf 'installed skill symlink: %s -> %s\n' "${dest_dir}" "${source_dir}" +} + +mkdir -p "${LOCAL_BIN_DIR}" + +cargo build --release -p fidget-spinner-cli --manifest-path "${ROOT_DIR}/Cargo.toml" +install -m 0755 \ + "${ROOT_DIR}/target/release/fidget-spinner-cli" \ + "${LOCAL_BIN_DIR}/fidget-spinner-cli" + +printf 'installed binary: %s\n' "${LOCAL_BIN_DIR}/fidget-spinner-cli" + +install_skill_link "fidget-spinner" +install_skill_link "frontier-loop" + +printf 'mcp command: %s\n' "${LOCAL_BIN_DIR}/fidget-spinner-cli mcp serve" -- cgit v1.2.3