Skill: verify-setup
Purpose
This skill validates a Longhorn developer workspace after initialization. It checks toolchain readiness (Go version, Docker daemon, Dapper/make availability), git remote configuration, and workspace hygiene before development begins.
Usage
bash
bash .opencode/skills/verify-setup/verify_setup.sh [options]
Options
| Flag | Description |
|---|---|
--execute | Run checks and perform commands (default) |
--dry-run | Describe planned checks without executing |
--json-log | Emit JSON log entries (useful for automation) |
--no-color | Disable ANSI colors |
--force | Reserved (no effect; included for interface consistency) |
-h, --help | Show help message |
Checks Performed
- •Go toolchain
- •Verifies
gobinary exists and prints version (expects Go ≥ 1.21; configurable via envMIN_GO_VERSION).
- •Verifies
- •Docker daemon
- •Runs
docker infoto ensure Docker daemon is reachable.
- •Runs
- •Dapper/make
- •Verifies
makeis available (required for Dapper builds) and warns ifdapperbinary is missing.
- •Verifies
- •Git remotes
- •Warns (instead of failing) if
upstreamremote or its HEAD reference is missing, so the script can run in freshly cloned workspaces. - •Warns if
originremote is missing (since PRs normally push toorigin).
- •Warns (instead of failing) if
- •Workspace cleanliness
- •Fails if the workspace has uncommitted changes (
git status --porcelain), unlessSKIP_CLEAN_CHECK=trueis set.
- •Fails if the workspace has uncommitted changes (
- •Optional PATH sanity
- •Warns if
$GOPATH/binis not in PATH when Go is installed.
- •Warns if
Output
- •Logs are emitted via the shared defensive prelude (ISO timestamps, optional JSON).
- •Exit codes:
0success,2argument errors,3environment/tooling issues. - •On failure, the script prints remediation guidance (e.g., instructions to install Docker or configure
upstream).
Example
bash
# Standard run (default is execute) bash .opencode/skills/verify-setup/verify_setup.sh # Dry-run preview bash .opencode/skills/verify-setup/verify_setup.sh --dry-run # JSON logs for automation bash .opencode/skills/verify-setup/verify_setup.sh --json-log > verify.log
Notes
- •Requires the shared
.opencode/skills/lib/defensive_prelude.sh. - •Does not modify any files unless future enhancements require caching.
- •Intended to run before major plan execution (e.g., immediately after
repo-init).