Keep live registry lookups out of the default make test flow.
Add a dedicated external suite, workflow, and docs so the check stays opt-in but still gates code CI when enabled.
- Add scripts/install/skills/install.sh to restore skills from
skills-lock.json via npx skills experimental_install
- Add scripts/install/skills/update.sh to update all skills by
re-running skills add for each source in skills-lock.json
- Add make install-skills and make update-skills targets
- Add .github/workflows/update-skills.yml for daily automated updates
matching Dependabot schedule (00:00 UTC), opens PR on lock changes
- Add docs/agents/meta/caveman.md as SPOT for caveman mode, startup
notification, and token-budget tier progression
- Update AGENTS.md with RFC 2119-compliant skills installation check
- Update docs/agents/action/commit.md: replace ALWAYS with MUST
- Update pyproject.toml: respect-gitignore = true, exclude .agents
- Track skills-lock.json and add .agents to .gitignore
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds scripts/lint/autoformat.sh that checks tool availability before
running ruff, shfmt, and shellcheck autofixes. Updates Makefile with
the new autoformat target, documents it in makefile.md, and adds a
commit.md rule requiring autoformat to be run before every commit.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Consolidates into one target. FULL_CYCLE defaults to false (deploy only);
set FULL_CYCLE=true for deploy + update pass. Extracts run_pass function
in fresh-purged-app.sh to eliminate duplicated init+deploy logic. Updates
makefile.md, playwright.md, iteration.md, and environment.sh with correct
FULL_CYCLE usage.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- deploy.py: use find_provider_roles() to map service names (e.g. 'matomo')
to provider app IDs (e.g. 'web-app-matomo') before filtering deploy_ids;
forward SERVICES_DISABLED into the container via extra_env
- container.sh: rename INSPECT_CMD to CMD for consistency; fix indentation
- Makefile: expose CMD variable on exec target for non-interactive use
- environment.sh: source scripts/meta/env/all.sh for INVENTORY_DIR; add
inventory verification after SERVICES_DISABLED deploy using make exec
- variables.md: document CMD variable
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add scripts/meta/resolve/image/local.sh as SPOT for the local Docker
image tag (<repo-basename>/<distro>). Wire it into Makefile build
targets (IMAGE_TAG), compose.py (_base_env sets INFINITO_IMAGE), and
compose.yml (no default fallback). Fix build.sh to accept a pre-set
IMAGE_TAG without requiring REPO_PREFIX. Add make build + build-no-cache
to environment.sh test flow with correct section ordering.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Update all Make targets, comments, docs, and scripts to use the plural
form, reflecting that APPS can specify more than one application.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Makes clear that multiple space- or comma-separated app ids are
supported. Renames the env var, CLI flag (--app → --apps), and all
references in scripts, workflows, and documentation.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
DNS setup now encapsulates both platform-specific steps internally.
dev-environment-bootstrap no longer needs to know about WSL2 DNS.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The guard is already handled inside wsl.sh via IS_WSL2 from runtime.sh.
Inline check in the Makefile was inconsistent with all other wsl2 targets.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
More precise naming — these scripts target WSL2 specifically,
not Windows natively. Update all README and Makefile references.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Reorganize for consistency: action before platform in the path.
- scripts/administration/systemd/windows/enable.sh
→ scripts/administration/systemd/enable/windows.sh
Update README files and Makefile reference accordingly.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Move scripts/administration/wsl2/enable-systemd.sh to
scripts/administration/systemd/windows/enable.sh for a more consistent
and platform-neutral directory structure.
Add README.md for both systemd/ and systemd/windows/ and update
Makefile reference accordingly.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Move CA trust scripts into a dedicated subdirectory for better structure:
- scripts/administration/trust_ca.sh → scripts/administration/tls/trust/linux.sh
- scripts/administration/wsl2/trust-ca-windows.sh → scripts/administration/tls/trust/windows.sh
Update Makefile references and add README.md for both tls/ and tls/trust/.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Move platform-specific DNS setup scripts into a dedicated subdirectory
for better structure and discoverability:
- scripts/administration/wsl2/setup-dns.sh → scripts/administration/network/dns/setup/wsl.sh
- scripts/administration/network/dns/setup.sh → scripts/administration/network/dns/setup/linux.sh
Update Makefile references accordingly and add README.md documenting
the purpose of each script.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- add cross-distro dev-python installer script and wire it into role + Dockerfile
- regenerate dockerignore from gitignore on make build and ignore logs/
- harden sys-pip-install break-system-packages support probe
- raise project requires-python to >=3.11
* Replace ONLY_APP with space-separated WHITELIST across CI and local/act deploy tests
* Rename build-test-matrix.sh to scripts/meta/resolve/apps.sh and apply optional whitelist filter
* Add manual CI entry workflow to run orchestrator with distros/whitelist inputs
https://chatgpt.com/share/698c406c-0968-800f-ae84-1bcca023363c