Skip to content
Agentmart
Submit a tool

cpanel-node-ops

Use when deploying Node backends on cPanel hosting.

Skill by iberi22

IndexedMIT
Write a review

Chalk Labs

Need help deploying cpanel-node-ops?

Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.

Book a call

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/iberi22-cpanel-node-ops

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Use when deploying Node backends on cPanel hosting.

Use cases: devops

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/cpanel-node-ops

What's inside

Skill name
cpanel-node-ops
Description
Use when deploying Node backends on cPanel hosting.
License
MIT
Instructions
46 lines in SKILL.md · view on GitHub

Before installing

  • Instructions call the network

Files (1)

  • SKILL.md

SKILL.md (first lines)

# cPanel Node Ops

Deploy and debug Node.js backends on cPanel shared hosting (CloudLinux LVE, nodevenv, Passenger) via SSH plus panel clicks.

## One-time panel setup (per app, manual)

1. MySQL Database Wizard: database + user + ALL privileges. Record exact names for DATABASE_URL.
2. Setup Node.js App: Application root `~/<app>`, Startup file `dist/index.js`, Node major matching local engines, Mode Production.
3. Create `~/<app>/.env` on the server (DATABASE_URL, JWT_SECRET from `openssl rand -hex 32`, FRONTEND_URL, SMTP_*). Deploy scripts must NEVER touch this file.

## Automated deploy (SSH, scripted)

Tar `dist + package.json + prisma` (never node_modules/uploads/backups) → SFTP upload → swap dirs → `npm install --production` → `prisma generate` + `prisma db push` with a PINNED prisma CLI (npx latest can pull a breaking major) → restart per manager below → `curl` the local health port. Abort with a clear message if app dir, nodevenv, or server .env is missing.

## Process manager rule (never mix)

- Passenger-managed app: restart ONLY via `touch ~/app/tmp/restart.txt`. Never pkill/nohup alongside it or copies accumulate.
- Self-managed (nohup): restart by killing ONLY the worker whose CWD is the app dir (`readlink /proc/$p/cwd`), then `setsid nohup`. Never kill by bare process name.
- Accept hosting support's offer to register the app in the Node manager when given: it ends copy accumulation. Adapt the deploy script's restart step the same day.

## .htaccess proxy

Per-directory rules match the path WITHOUT leading slash: `RewriteRule ^api-prefix/(.*)$ http://<backend-host>:<port>/api/$1 [P,L]`. Keep a health passthrough (`^api-prefix/health$` → `/health`). Verify publicly with curl after every deploy; a 404 with a healthy backend means the proxy is not engaging (mod_proxy/AllowOverride), not an app bug.

## Secrets in deploy scripts

No credential fallbacks in tracked scripts: `password: process.env.DEPLOY_PASSWORD` plus a fail-fast guard (`Missing DEPLOY_PASSWORD in .env.deploy`, exit 1). Connection targets (host/user/port) may keep defaults; secrets never. `.env.deploy` stays gitignored. A burned credential means ROTATE on the server, not just delete from code: history keeps it.

## SSH failure ladder (in order, one probe each)

1. TCP connect to host:port. Closed/refused = network or firewall.
2. Auth-only connect + immediate clean disconnect. If auth fails everywhere, credentials are stale.
3. Auth OK but exec/SFTP channels never answer = SERVER-SIDE stall (stuck sessions, LVE limits), never a client bug. Repeated successful logins rule OUT rate limiting: cPHulk/fail2ban block pre-auth on FAILED logins, and a fresh auth+close succeeding proves no ban.
4. Never hammer: each killed local attempt can leave a lingering server-side session. Wait minutes between retries, one connection at a time.

## LVE essentials

- NPROC counts THREADS, not apps. A library spawning one worker thread per core (32-core host) pins NPROC at 100 with CPU near zero. Fix in app config: cap worker threads (e.g. 2), not by raising the limit.
- Resource Usage Snapshot tab only records limit-FAULT events; empty with zero faults is normal, not broken.
- On a fork-exhausted account only bash builtins work (for, read, echo, kill, `$(<file)`); every external binary (ps, grep, tr, pkill) fails. Triage via /proc with builtins only.

## Paste-safe shell for chat

Chat copy-paste strips paired `*text*` asterisks, silently turning `case *sshd*` into `case sshd` — a killer loop that matches nothing and reports success. In ANY one-liner the user will paste from chat, match with `[[ $var =~ regex ]]` instead of `case *glob*`. Bracket globs like `/proc/[0-9]*` survive; paired word-asterisks do not. After a kill loop with zero matches, distrust the pattern before distrusting the diagnosis.

From iberi22/skills, MIT.

More from iberi22/skills

Signals

Stars
0
Forks
0
Open issues
3
Last commit (this folder)
Oct 8, 2026 (22 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from iberi22

Done for you

Rather not set it up yourself?

Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.

See how we build AI agents →Read the case studies

Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.

launches shipped
50+
launches shipped
media placements
500+
media placements
founders on every account
2
founders on every account

Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block

Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.

Get cpanel-node-ops running in your business

Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.

Goes to the Chalk Labs founders, not the newsletter. Privacy

Need help deploying cpanel-node-ops?

CallGet help
Cite this page

cpanel-node-ops skill. Agent Mart. https://agentmart.dev/skills/iberi22-cpanel-node-ops (last updated 2026-10-24)