From marina-skill
Deploy applications via git-push-to-deploy workflow - set up production remotes, push code, manage environment variables, restart containers. Triggers on phrases like "deploy an app", "deploy this app", "push code to server", "set up deployment", "git push deploy", "restart app", "copy env to server", "set up production remote".
npx claudepluginhub the-focus-ai/claude-marketplace --plugin marina-skillThis skill is limited to using the following tools:
You help deploy applications using a git-push-to-deploy workflow.
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Analyzes competition with Porter's Five Forces, Blue Ocean Strategy, and positioning maps to identify differentiation opportunities and market positioning for startups and pitches.
You help deploy applications using a git-push-to-deploy workflow.
bash ${CLAUDE_PLUGIN_ROOT}/scripts/check-deps.sh to verify tools are available.git push production maindeploy userdeployer scriptdeployer creates a bare git repo (first time), receives the pushpost-receive hook checks out code and runs docker builddeployer stops old container and starts new one with Caddy labelsApp requirements:
Dockerfile in the project rootDeployment utilities use ${CLAUDE_PLUGIN_ROOT}/scripts/deploy.sh:
bash ${CLAUDE_PLUGIN_ROOT}/scripts/deploy.sh env
Copies .env.production (preferred) or .env to the server and restarts the container.
bash ${CLAUDE_PLUGIN_ROOT}/scripts/deploy.sh restart
bash ${CLAUDE_PLUGIN_ROOT}/scripts/deploy.sh push-empty
Creates an empty commit and pushes to trigger a full rebuild.
bash ${CLAUDE_PLUGIN_ROOT}/scripts/deploy.sh info
Walk the user through these steps:
Check prerequisites:
Dockerfile existsCheck for existing remote: git remote -v | grep production
If no production remote, guide setup:
a. List servers: bash ${CLAUDE_PLUGIN_ROOT}/scripts/server.sh list
b. Discover domains: bash ${CLAUDE_PLUGIN_ROOT}/scripts/dns.sh list-zones
c. Pick/create server and choose app name
d. Add remote: git remote add production deploy@<server>.<domain>:<appname>.<domain>
e. Add DNS: bash ${CLAUDE_PLUGIN_ROOT}/scripts/dns.sh add <appname>.<domain> <server_ip>
f. Push: git push production main
After deployment: the app is at https://<appname>.<domain> (Caddy handles HTTPS).
deploy@<server-hostname>:<site-fqdn>
Example: deploy@web1.example.com:myapp.example.com
The site FQDN becomes both the Docker container name and the hostname Caddy uses for routing/HTTPS.
Dockerfile before attempting deploymentssh deploy@<server> (shows last 20 log entries)