Install
$ agentstack add skill-rahmanef63-si-coder-agent-sc-all ✓ 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.
About
/sc-all — Full-stack zero-human deployment
Use this skill when the user wants to ship a fresh project end-to-end in one command. This is the modular replacement for the legacy /use-si-coder monolith — both remain available in parallel.
flowchart LR
P1["1 · onboardingverify env"] --> P2["2 · GitHubrepo + push"]
P2 --> T{"--target"}
T -->|dokploy| D3["3 · Dokploy project"]
D3 --> D4["4 · Convex self-hostedadmin key + JWT"]
D4 --> D5["5 · Dokploy app"]
D5 --> D6["6 · DNS + poll"]
D6 --> Live["live URL ✅"]
T -->|vercel| V4["V4 · Convex Cloudcoupled build"]
V4 --> V5["V5 · Vercel project+ domain + DNS"]
V5 --> V6["V6 · verifycheck-cloud + readyState"]
V6 --> Live
Pre-requisites
Required env (see /sc-onboarding if any are missing):
GITHUB_TOKENDOKPLOY_API_URL,DOKPLOY_API_KEYHOSTINGER_API_TOKEN(optional but recommended)
For --target vercel (online path): requires VERCEL_TOKEN + CONVEX_DEPLOY_KEY instead of DOKPLOY_* (route to /sc-onboarding --domains vercel,convex-cloud if missing). DOKPLOY_* is not required for this target. HOSTINGER_API_TOKEN stays optional for DNS.
The user's project directory must contain:
- A
Dockerfile(for the frontend) —ARG NEXT_PUBLIC_CONVEX_URL=...pattern - A
docker-compose.yml(for Convex backend) — only if self-hosted Convex convex/_generated/committed (runnpx convex dev --oncefirst)
CORE MANDATES
All mandates from sc-convex and sc-dokploy apply. Specifically:
- Self-Hosted Convex by default —
@convex-dev/auth, never Clerk unless requested. - Build Safety —
convex/_generatedcommitted; no codegen inside Dockerfile. - No prompts —
npm install --yes --legacy-peer-deps. - Idempotency — duplicate domain creation = no-op; do not recreate existing services.
- Exact cloning — if user wants a clone of an existing site, fetch and replicate layout.
- Admin Key Sync — Dokploy env + repo env file always match.
- Preserve your Dokploy control host (the one in
DOKPLOY_API_URL) — never rename it inside any script. - Clerk MCP for Clerk apps — if target uses Clerk, preserve it; use Clerk MCP (
clerkathttps://mcp.clerk.com/mcp).
Umbrella semantics
/sc-all is the umbrella command. Invoking it automatically pulls in every sub-skill below (sc-onboarding, GitHub repo create+push via lib/github.js, sc-dokploy, sc-convex, sc-git hook install). The user never needs to invoke /sc-convex separately — if docker-compose.yml is present, sc-convex is run as Phase 4. If a convex/ dir is present without compose (existing self-hosted), sc-git's pre-push hook is installed so all subsequent pushes auto-deploy Convex without any manual command.
Concretely:
- Existing self-hosted project:
/sc-allinstalls/refreshes the sc-git pre-push hook with Convex auto-deploy guard. After that,git pushalone handles everything — backend deploys to Convex self-hosted first, then frontend rebuilds via Dokploy webhook. Never instruct the user to runnpx convex deploy,pnpm convex:deploy, or any Convex CLI command by hand. - Fresh deploy:
/sc-allruns the full Phase 1–6 sequence below.
Target selection (--target dokploy|vercel, default dokploy)
--target dokploy(default): the existing Phase 1–6 flow (self-hosted Convex on Dokploy + Dokploy frontend app).--target vercel(online): skips Phase 3 Dokploy project, Phase 4 self-hosted Convex, and Phase 5 Dokploy application.
Instead runs: Phase V4 — Convex Cloud: sc-convex-cloud/scripts/deploy-cloud.js (or let Vercel's coupled build do it). Phase V5 — Vercel frontend: sc-vercel/scripts/deploy.js --project --app --domain --git-owner --git-repo --prod. This binds the GitHub repo, sets CONVEX_DEPLOY_KEY, sets the coupled build command, adds the domain, writes Hostinger DNS (CNAME for subdomain / A for apex from Vercel's required config), and polls the deploy. Phase V6 — Verify: sc-convex-cloud/scripts/check-cloud.js + the Vercel deployment readyState + custom-domain alias.
Phase 2 (GitHub) is shared across both targets.
Orchestration
/sc-all walks through these phases. Each phase delegates to a sub-skill or shared library:
Phase 1 — Onboarding gate
If any required env var missing → run /sc-onboarding first.
Phase 2 — GitHub
lib/github.js→ensureRepo()(create private repo if missing)lib/github.js→pushLocalRepo()(init/commit/push via SSH)
Phase 3 — Dokploy project
lib/dokploy.js→findOrCreateProject(project)- Detect
Dockerfile/docker-compose.ymlto choose Application vs Compose path
Phase 4 — Convex backend (if docker-compose.yml exists OR convex/ dir exists)
Delegate to sc-convex AUTOMATICALLY — never wait for the user to type /sc-convex:
- Fresh project (compose):
scripts/deploy-convex.js --project --app --domain --with-auth-keys - Existing self-hosted (just convex/):
node skills/sc-git/scripts/hook.js install --repo— installs the pre-push hook that auto-deploys Convex on every push that touchesconvex/. After install, the user justgit pushand the hook doespnpm exec convex deploy --yesagainst the self-hosted backend (CLI auto-detects from.env.local). Zero manual Convex commands forever.
Phase 5 — Frontend application (if Dockerfile exists)
lib/dokploy.js→createApplicationif missing- Bind to Dokploy GitHub provider if available, else raw Git URL
- Set
env+buildArgsto injectNEXT_PUBLIC_CONVEX_URL - Create main `
vialib/dokploy.js→createDomain` lib/dokploy.js→cleanupApplicationDomainsto remove stale duplicates /traefik.melib/dokploy.js→deployApplication+ poll untilapplicationStatus === 'done' | 'error'
Phase 6 — Verify
sc-convex→scripts/check-backend.jsto probeapi-/site-/dash-subdomains- Print final URLs
Quick run (legacy-compatible script)
The original monolith remains at scripts/deploy.js. It is still functional and parallel-supported:
# export DOKPLOY_API_URL / DOKPLOY_API_KEY / GITHUB_TOKEN (and optional
# HOSTINGER_API_TOKEN) in the environment first — secrets are read ONLY from
# env (never argv) so `ps aux` cannot leak them. Only non-secret
# project/app/domain go on the command line.
cd ~/projects/
node ~/projects/opensource/si-coder-agent/scripts/deploy.js \
--project "" --app "" --domain ""
Failure modes (where to look)
| Symptom | Where | |---|---| | applicationStatus: error | Dokploy dashboard → service → Deployments (logs are dashboard-only) | | Convex auth crash | sc-convex SKILL — "Connection lost while action was in flight" table | | DNS not resolving | lib/hostinger.js log output; check Hostinger portfolio coverage | | Domain rejected | already exists, treat as no-op | | -- parsing breaks CLI | use skills/sc-convex/scripts/set-auth-env.js (REST), not npx convex env set |
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: rahmanef63
- Source: rahmanef63/si-coder-agent
- License: MIT
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.