| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- #!/usr/bin/env bash
- # Validate the Antigravity (agy) integration. agy installs the existing plugin
- # directly (`agy plugin install <repo-url>`): it loads the bundled skills and
- # runs the SessionStart hook for bootstrap, so there is no agy-specific scaffold
- # to test. What IS agy-specific is the tool mapping — agy has no `Skill` tool and
- # loads skills by reading SKILL.md with view_file — and SKILL.md pointing at it.
- #
- # Mirrors tests/pi/test-pi-extension.mjs's "tools reference documents
- # harness-specific mappings" check. CI-safe: does not require `agy` installed.
- set -euo pipefail
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
- REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
- MAPPING="$REPO_ROOT/skills/using-superpowers/references/antigravity-tools.md"
- SKILL="$REPO_ROOT/skills/using-superpowers/SKILL.md"
- fail() { echo "FAIL: $*" >&2; exit 1; }
- echo "test-antigravity-tools: checking Antigravity tool mapping"
- # --- Mapping exists ---------------------------------------------------------
- [ -f "$MAPPING" ] || fail "tool mapping missing at $MAPPING"
- # --- Skill-load mechanism: view_file on SKILL.md (IsSkillFile), no Skill tool -
- grep -qiE "view_file" "$MAPPING" \
- || fail "mapping does not document view_file as the file/skill-read tool"
- grep -qiE "SKILL\.md" "$MAPPING" \
- || fail "mapping does not document reading SKILL.md as the skill-load path"
- grep -q "IsSkillFile" "$MAPPING" \
- || fail "mapping does not document setting IsSkillFile when loading a skill"
- # --- Core action→tool mappings are documented -------------------------------
- for tool in write_to_file replace_file_content run_command grep_search invoke_subagent; do
- grep -q "$tool" "$MAPPING" \
- || fail "mapping does not document the '$tool' tool"
- done
- # --- Subagents use the built-in self/research types -------------------------
- grep -q '`self`' "$MAPPING" \
- || fail "mapping does not document the built-in 'self' subagent type"
- grep -q '`research`' "$MAPPING" \
- || fail "mapping does not document the built-in 'research' subagent type"
- # --- Task tracking documents the 'task' artifact mechanism ------------------
- grep -qE 'ArtifactType.*task|task. artifact' "$MAPPING" \
- || fail "mapping does not document task tracking as a 'task' artifact"
- # --- SKILL.md Platform Adaptation links the mapping -------------------------
- grep -q "antigravity-tools.md" "$SKILL" \
- || fail "SKILL.md Platform Adaptation does not reference antigravity-tools.md"
- echo "PASS: Antigravity tool mapping valid (view_file skill-load, agy tools, SKILL.md link)"
|