mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 02:54:26 +00:00
Add the i8* terminal aliases (make install-alias) and ai8* agent conversation shortcuts (docs/.../agents/alias.md), move skill distribution to the external INFINITO_SKILLS_REPOSITORY (make install-skills), and add make cheat, make alias and make onboard. Introduce custom.env operator overrides (win over defaults and handlers) and pin INFINITO_ALIAS_MD / INFINITO_ALIAS_REPOSITORY / INFINITO_SKILLS_REPOSITORY in default.env. Drop the in-repo skills-lock.json and its update-skills CI job. AGENTS.md instructs agents to suggest the matching cli/prompt alias when an operator writes something an alias covers. Lints enforce alias sorting, i8/ai8 prefixes, no consonant clusters, full make-target coverage, and terminal/agent shortcut non-overlap. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
32 lines
1.1 KiB
Bash
Executable File
32 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Clone the skills repository (INFINITO_SKILLS_REPOSITORY) and copy its
|
|
# skills into this project via the repository's `make project` target.
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
REPO_ROOT="$(cd "${SCRIPT_DIR}/../.." && pwd)"
|
|
|
|
if [[ -z "${INFINITO_SKILLS_REPOSITORY:-}" ]]; then
|
|
# shellcheck source=/dev/null
|
|
source <(grep -hE '^INFINITO_SKILLS_REPOSITORY=' "${REPO_ROOT}/.env" 2>/dev/null)
|
|
fi
|
|
: "${INFINITO_SKILLS_REPOSITORY:?not set; run 'make dotenv' to generate .env}"
|
|
|
|
CLONE_DIR="$(mktemp -d /tmp/infinito-skills-install.XXXXXX)"
|
|
trap 'rm -rf "${CLONE_DIR}"' EXIT
|
|
|
|
echo ">>> Installing agent skills from ${INFINITO_SKILLS_REPOSITORY}"
|
|
git clone --depth 1 "${INFINITO_SKILLS_REPOSITORY}" "${CLONE_DIR}"
|
|
make -C "${CLONE_DIR}" project TARGET="${REPO_ROOT}" # nocheck:make-target
|
|
|
|
first_party="${REPO_ROOT}/skills"
|
|
if [[ -d "${first_party}" ]]; then
|
|
echo ">>> Layering project-local skills from skills/"
|
|
for dst in "${REPO_ROOT}/.agents/skills" "${REPO_ROOT}/.claude/skills"; do
|
|
mkdir -p "${dst}"
|
|
cp -a "${first_party}/." "${dst}/"
|
|
done
|
|
fi
|
|
|
|
echo ">>> Skills installed. Restart your agent to load them."
|