$npx -y skills add catalystbyzoho/agent-skills --skill catalyst-appsailCatalyst AppSail — persistent backend PaaS with managed runtimes (Node.js, Java, Python) and custom Docker containers. Trigger on 'AppSail', 'persistent server', 'Docker on Catalyst', 'X_ZOHO_CATALYST_LISTEN_PORT', or 'long-running process on Catalyst'. Do NOT use for stateless r
| 1 | ## How It Works |
| 2 | |
| 3 | 1. **Identify the runtime** — Managed runtime (Node.js, Java, Python) or custom Docker container. |
| 4 | 2. **Load `references/appsail-basics.md`** — for PORT config, environment variables, Dockerfile requirements, and deploy commands. |
| 5 | 3. **PORT rule** — Always use `process.env.X_ZOHO_CATALYST_LISTEN_PORT`, never hardcode `PORT` or `3000`. |
| 6 | 4. **AppSail vs Functions decision** — If the user is unsure which to use, apply this matrix: |
| 7 | |
| 8 | | | Catalyst Functions | AppSail | |
| 9 | |---|---|---| |
| 10 | | Code structure | Catalyst-specific templates required | Any framework, any format, fully independent | |
| 11 | | Use case | HTTP handlers, events, cron, Zoho integrations | Persistent servers, long-running processes, Docker | |
| 12 | | Billing | Per API call | Per instance uptime | |
| 13 | | Dependency management | Handled by Catalyst | You manage all libraries and frameworks | |
| 14 | |
| 15 | ## Triggers |
| 16 | |
| 17 | Use this skill for: "AppSail", "persistent server", "Docker on Catalyst", "backend hosting", `X_ZOHO_CATALYST_LISTEN_PORT`, `appsail:add`, "catalyst managed runtime", "deploy Express app", "AppSail vs Functions", "long-running process on Catalyst", or "containerized app on Catalyst". |
| 18 | |
| 19 | ## References |
| 20 | |
| 21 | | Reference | Load when the query is about… | |
| 22 | |-----------|-------------------------------| |
| 23 | | `references/appsail-basics.md` | Runtimes, Docker setup, PORT env var, env variables, deploy commands, AppSail vs Functions decision table | |