Install
$ agentstack add skill-gfargo-skills-strut ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
strut — VPS Stack Management
strut is a Bash CLI for managing Docker Compose stacks on VPS infrastructure. Commands follow the shape:
strut [--env ] [options]
--env selects the environment file ..env (e.g. --env prod reads .prod.env). Most commands run against a VPS over SSH; some run locally.
Command Quick Reference
# Deploy & release
strut release --env prod # update repo → migrate → deploy → verify (on VPS)
strut deploy --env prod # deploy containers (local, or VPS if VPS_HOST set)
strut rebuild --env prod # build images on target + deploy
strut stop --env prod # stop containers
strut rollback --env prod # restore previous deploy snapshot
# Inspect
strut status --env prod # container status
strut health --env prod --json # health checks
strut logs --follow --env prod
strut diff --env prod # preview pending changes vs VPS
strut fleet status # git sync state across all [hosts]
# Data
strut backup all --env prod # backup all databases
strut restore --dry-run # rehearse a restore (non-destructive)
strut db:pull --env prod # pull prod data to local
# Drift & secrets
strut drift detect --env prod # config drift vs git
strut drift images --env prod # stale container image digests
strut secrets push --env prod # sync .env to VPS
strut keys db:rotate postgres --env prod
# Infrastructure
strut domain example.com admin@example.com --env prod
strut audit [user] [ssh-key] # discover what's running on a VPS
strut migrate # interactive migration wizard
When to Read Each Reference
Load the relevant reference file for detailed, step-by-step procedures:
| Task | Reference | |------|-----------| | Deploying, releasing, updating, stopping services | [references/deployment.md](references/deployment.md) | | Diagnosing production issues, 502s, crashes, disk/DB problems | [references/debugging.md](references/debugging.md) | | Backing up or restoring databases, pulling prod data | [references/backups.md](references/backups.md) | | Detecting or fixing config drift, auto-fix, drift history | [references/drift.md](references/drift.md) | | Rotating SSH keys, API keys, DB passwords, env secrets | [references/secrets.md](references/secrets.md) | | Setting up Prometheus/Grafana/Alertmanager monitoring | [references/monitoring.md](references/monitoring.md) | | Configuring custom domains and SSL/TLS certificates | [references/domains-ssl.md](references/domains-ssl.md) | | Validating stack structure and config before deploy | [references/validation.md](references/validation.md) | | Auditing an existing VPS and migrating to strut | [references/migration.md](references/migration.md) |
Core Principles
- Always
--dry-runfirst for destructive commands (deploy, restore, drift fix, stop). - Back up before major changes:
strut backup all --env prod. - Use
releasefor VPS (runs remotely over SSH), notdeploy(runs locally). - Make changes in git, not on the VPS — let deployments propagate; drift detection catches manual edits.
- Health checks gate success — driven by
services.conf; keep it current.
Environment Files
Per-environment .env files live at the project root (.prod.env, .staging.env). They contain literal KEY=VALUE pairs — shell expansion ($VAR, $(cmd)) is not evaluated (strut reads them with a safe parser, not source). Files are written mode 0600.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: gfargo
- Source: gfargo/skills
- License: MIT
- Homepage: https://griffen.codes
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.