
catalyst-by-zoho
Expert coding assistant for Catalyst by Zoho — Zoho's full-stack serverless cloud platform. Use for any question about Catalyst services, CLI, SDKs, architecture, pricing, or Zoho MCP tool-based infrastructure management.
- Installs
- 1K
- Last 24h
- +12
- Trending rank
- #7859
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/catalystbyzoho/agent-skills --skill catalyst-by-zoho- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads catalyst-by-zoho automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Catalyst by Zoho — Skill Index
This is the routing layer. Load the most specific matching skill — do not answer from this file alone.
Philosophy
- Prefer MCP over asking. If
CatalystbyZoho_*tools are available, use them. Never ask the user to copy IDs from the console. - Default to Development. Always target the Development environment unless the user explicitly says "production" or "deploy to prod".
- "Build an app" means Slate + Function by default. When a user says "build an app", "create an app", or "make a simple app" without specifying backend-only, the default output is a Slate frontend + Advanced I/O function backend. Do NOT build only a function and call it an app. If the user's intent is clearly backend-only (e.g. "build an API", "write a function"), skip Slate.
- Prefer Functions over AppSail for simple HTTP. Functions are cheaper (per-invocation billing), simpler to deploy, and require no infrastructure management. Reach for AppSail only when the use case genuinely requires a persistent process, or a custom runtime.
- Show cost before building. For any new infrastructure (functions, AppSail, Stratus buckets), load
catalyst-pricingand give a brief estimate before writing code. Most small projects stay within free tier — say so when true. - Recommend the current service, not the deprecated one. File Store → Stratus. Event Listeners → Signals. Cron → Job Scheduling. Never mention the deprecated name in generated code or config.
- Warn before the region bites. Circuits and Integration Functions do not work in most data centers. Check the user's DC before suggesting them.
How It Works
- Pre-flight — Check that
.catalystrcandcatalyst.jsonexist. If missing, use MCP to get org/project IDs and runcatalyst init --org <orgId> -p <projectId> -ni. Never use interactivecatalyst init. - MCP check — Look for
CatalystbyZoho_*tools. If available, use MCP to fetch org/project IDs instead of asking the user. - Route — Match the query to the most specific service in the routing table below.
- Load lazily — Read ONLY the single reference file needed for the current step. Do NOT preload multiple skills upfront. For "build an app" requests: (a) assume Slate frontend + AIO function unless the user says backend-only, (b) sketch the architecture briefly and confirm with the user before building, (c) then load one reference file per service as you write each part —
catalyst-slatefor the frontend,catalyst-functionsfor the backend. - Cost check — Only load
catalyst-pricingif the user specifically asks about cost, or if the plan includes AppSail, Stratus, or other paid-tier services. Skip for basic Functions + DataStore projects (likely free tier). - Answer — Provide code examples using the user's platform (Node.js, Python, Java, Web, or Mobile).
Triggers
Use this skill for queries containing: Catalyst, zcatalyst, AppSail, Data Store, ZCQL, Cache, Stratus, Slate, NoSQL, Zia Services, QuickML, API Gateway, Connections, Zoho MCP, CatalystbyZoho, catalyst init, catalyst deploy, catalyst serve, zcatalyst-sdk-node, catalyst-config.json, Catalyst pricing, "build on Zoho's platform", or "deploy to Catalyst". Do NOT use for generic Zoho CRM questions unless Catalyst is the target.
Pre-flight gate (project-mutating tasks only)
Step 1 — MCP check (do this before anything else for infrastructure tasks):
Look for CatalystbyZoho_* tools in your tool list.
- If present — use MCP to fetch org/project IDs. Never ask the user to copy IDs from the console.
How to call MCP tools correctly:
ZohoMCP_getSchematakesquery_params, NOTbody:ZohoMCP_getSchema({ query_params: { tool_name: "CatalystbyZoho_List_All_Projects" } })- Always call
ZohoMCP_getSchemafirst for anyCatalystbyZoho_*tool — never guess the argument shape. Many tools requirepath_variables(e.g.project_id) that are invisible without the schema. ZohoMCP_executeTooltakes abodywith this shape:ZohoMCP_executeTool({ body: { tool_name: "CatalystbyZoho_List_All_Functions", arguments: { path_variables: { project_id: "31594000000127002" }, headers: {}, body: {} } }})- Tools with no required path variables (e.g.
List_All_Organizations,List_All_Projects) can be called witharguments: {}.
- If NOT present and the task creates resources, writes files, deploys, or reads project IDs — HARD STOP. Do NOT write any code or create any files. Tell the user:
"Zoho MCP needs to be connected before I can work with your Catalyst project. Load the
catalyst-zoho-mcpskill to set it up — it takes under a minute." Do not proceed untilCatalystbyZoho_*tools are visible.
This gate applies only when the task writes Catalyst project files, deploys, reads project/environment IDs, or performs MCP project operations. Skip it for informational questions (pricing, architecture advice, service selection, "what is Catalyst?", install help, SDK usage, or any question that doesn't require an initialized project).
For project-mutating tasks: verify .catalystrc and catalyst.json exist in the working directory.
- If missing → use MCP tools to get the org ID and project ID, then run:
Never ask the user to run
catalyst init --org <orgId> -p <projectId> -nicatalyst initinteractively. Never create.catalystrcorcatalyst.jsonyourself — they must be generated by the CLI. Note: NI mode can only link an existing project. If no project exists yet, tell the user to create one in the Catalyst console, then come back — you'll link it withcatalyst init -ni.
Catalyst at a Glance
New to Catalyst? Here's what each service does in one line:
| Service | What it is |
|---|---|
| Functions | Serverless functions — Basic I/O (HTTP), Advanced I/O, Event, Cron, Job, Integration, Browser Logic. Per-invocation billing. |
| AppSail | PaaS for long-running web apps — Node.js, Java, Python managed runtimes, or any Docker container. |
| Data Store | Relational tables (rows + columns, foreign keys). Queried via ZCQL (SQL-like) or SDK. |
| Stratus | Object/file storage (like S3). Buckets, folders, objects. Up to 250 GB per object. |
| Slate | Frontend hosting (like Vercel). Deploys React, Next.js, Vue, Angular, Svelte, Preact, Astro, SolidJS, static HTML. |
| Cache | In-memory key-value store. Divided into segments. TTL in hours, max 48 h. |
| NoSQL | Document storage with flexible schema (no fixed columns). For unstructured/polymorphic data. |
| Authentication | Built-in user sign-up/login (ZAID). OAuth Connections for third-party APIs. |
| SmartBrowz | Headless browser automation, PDF/screenshot generation, Browser Logic functions, Browser Grid (parallel browsers), and Dataverse (web scraping). |
| Zia Services | Pre-trained AI/ML: OCR, Face Analytics, Text Analytics, Object Detection, Barcode, Moderation. |
| QuickML | No/low-code ML platform — ML pipelines, AutoML, LLM Serving, RAG, Knowledge Base, prediction endpoints. (Prediction models: all DCs. Generative AI: not in AU/SA/CA. Zia Model Library: IN only.) |
| Circuits | Serverless workflow orchestration (step functions). (Not in EU/AU/IN/JP/SA/CA) |
| Signals | Event-driven triggers / pub-sub (replaces legacy Event Listeners). |
| Job Scheduling | Job pools + immediate jobs + crons — scheduled/background execution of Job functions, Webhooks, Circuits, AppSail (replaces legacy Cron). |
| Zoho MCP | AI tool integration — lets AI agents manage Catalyst infrastructure via CatalystbyZoho_* tools. |
| ZCQL | SQL-like query language for Data Store. SELECT, INSERT, UPDATE, DELETE. Max 300 rows per SELECT. |
| ZAID | Zoho Account ID — the built-in auth identity layer. Used with Web SDK for user auth flows. |
Skill Routing Table
| When the query is about… | Load this skill |
|---|---|
| Which service to use, architecture decisions, DC restrictions | catalyst-basics (load ../catalyst-basics/references/architecture.md) |
Project setup, .catalystrc, environments, orgs, IDs, CLI commands | catalyst-basics |
Functions — types, signatures, catalyst-config.json, API Gateway, file uploads | catalyst-functions |
| AppSail — backend PaaS, Docker, managed runtimes, PORT variable | catalyst-appsail |
Slate — frontend hosting, frameworks, slate-config.toml, Git deploy | catalyst-slate |
| Data Store — CRUD, ZCQL queries, permissions, column types | catalyst-datastore |
| Stratus — object storage, upload/download, signed URLs, multipart | catalyst-stratus |
| NoSQL — document storage, flexible schema, collections | catalyst-nosql |
| Authentication — user login/signup, ZAID, Web SDK auth, Connections/OAuth | catalyst-authentication |
| Cache — in-memory key-value, TTL, segment operations | catalyst-cache |
| Pricing — free tier, pay-as-you-go, GB-seconds, cost estimation | catalyst-pricing |
| SDKs — Node.js, Web, Python, Java, Android, iOS, Flutter | catalyst-sdk |
| Zia Services — OCR, face/text analytics, moderation | catalyst-zia |
| QuickML — ML pipelines, AutoML, LLM Serving, RAG, model endpoints | catalyst-quickml |
| Signals — event-driven triggers, publish/subscribe, event listeners, custom publisher, webhook target, dispatch policy | catalyst-signals |
| SmartBrowz — headless browser, Puppeteer, Playwright, Selenium, Browser Logic, PDF generation, screenshot, Browser Grid, Dataverse | catalyst-smartbrowz |
Job Scheduling — job pools, immediate/background jobs, crons (Periodic/OneTime/Calendar/CronExpression), submitJob, createCron, retries | catalyst-job-scheduling |
Zoho MCP — MCP setup, CatalystbyZoho_* tools, infra-as-conversation | catalyst-zoho-mcp |
| Skill gave wrong or outdated guidance — user reporting an error | load references/skill-feedback.md |
Never Use (deprecated + regionally restricted)
Deprecated services — do not use for new projects
Users who signed up after August 27, 2025 cannot access these components at all.
| Do not use | Use this instead |
|---|---|
| Stratus (object storage) | |
| Signals (event-driven architecture) | |
| Job Scheduling (scheduled execution) |
Regionally restricted services — check DC before recommending
These services are unavailable in the listed data centers. Building with them for users in those regions results in runtime failures.
| Service | Not available in |
|---|---|
| Circuits | EU, AU, IN, JP, SA, CA |
| Integration Functions | EU, AU, IN, JP, SA, CA |
| QuickML — Generative AI (LLM Serving, RAG, Knowledge Base) | AU, SA, CA (prediction/ML models available in ALL DCs; Zia Model Library in the QuickML console is IN only) |
| Identity Scanner (Zia) — Document Processing (Aadhaar, PAN, etc.) | Available in IN DC only, API included |
| Identity Scanner (Zia) — Facial Comparison | Works from ANY DC via API/SDK; only console testing is IN DC only |
| Mobile Device Management | EU, AU, IN, JP, SA, CA |
How to check: Ask the user which data center their Catalyst account uses, or look for the DC code in their console URL (e.g., catalyst.zoho.in → IN, catalyst.zoho.eu → EU).
Non-Interactive Mode
CLI v1.27.0+ supports non-interactive (NI) mode — the CLI takes all answers from flags and sensible defaults instead of prompting.
Enable: Add -ni (or --non-interactive) to any supported command, or set ZCATALYST_NON_INTERACTIVE=1 in the environment.
Disabled commands: functions:setup → use functions:add -ni; functions:shell → use functions:execute
Blocked options: --remote on functions:delete and client:delete is not allowed in NI mode.
Tip: catalyst <command> -ni --help shows the NI-specific help for that command.
.catalystrc — Reading org and project context
After catalyst init, a .catalystrc file is written to the project root. Read it at the start of any session to identify the active project without asking the user.
Actual format:
{
"defaults": { "project": 1, "env": 1 },
"actives": { "project": 1, "env": 1 },
"projects": [
{
"idx": 1,
"id": "<projectId>",
"name": "<projectName>",
"domain": { "id": "<domainId>", "name": "<projectName>-<orgId>.development" },
"env": [{ "idx": 1, "id": "<orgId>", "name": "Development", "type": 3 }]
}
]
}
How to read the active project ID and org ID:
- Read
defaults.project→ this is the active project'sidxvalue - Find the entry in
projectswhereidxmatches → get itsid→ this is the project ID to use with-p - From the same entry, read
env[0].id→ this is the org ID to use with--org
Quick-reference: Top gotchas
- TERMINOLOGY: always say "organization" or "org", NEVER "portal" — the
catalyst initCLI prompt says "Select a default Catalyst portal" but this is the CLI's legacy wording; the correct term is organization .catalystrc/catalyst.jsonmissing → runcatalyst init --org <orgId> -p <projectId> -ni(get IDs from MCP); never create these files manually, never use interactivecatalyst init- All Catalyst CLI commands default to non-interactive (CLI v1.27.0+) — always use
-niwith--org,-p,--name,--type,--stackflags; never fall back to interactive/arrow-key menus in agent context catalyst functions:addnon-interactive —catalyst functions:add --name <n> --type <type> --stack <stack> -ni- ZCQL result rows are wrapped →
rows.map(r => r.TableName)to unwrap - ZCQL max 300 rows/query → use
LIMIT offset, countfor pagination - ZAID differs between Dev and Prod → #1 auth issue in production
- AppSail PORT →
process.env.X_ZOHO_CATALYST_LISTEN_PORT(notPORT) - Cache values are strings only → serialize/deserialize JSON yourself
- Stratus bucket names are globally unique → use
{app-name}-{project-id-prefix} - Slate → function calls are cross-domain → use full URL +
generateAuthToken()+ CORS whitelist - DataStore App User permissions OFF by default → enable in Console → Table → Scopes & Permissions
catalyst-config.jsonformat →deployment+executionkeys only; NOTfunctionorentry_point- Advanced I/O node20
req→ rawhttp.IncomingMessage; usesendJson(res, ...)helper, notres.json() signOut()requires a redirect URL →catalyst.auth.signOut(redirectURL)
Documentation
- Main docs: https://docs.catalyst.zoho.com/en/llms.txt
- Node.js SDK (complete, ~420 KB): https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/llms-full.md
- Web SDK (complete, ~116 KB): https://docs.catalyst.zoho.com/en/sdk/web/v4/llms-full.md
- Python SDK (complete, ~489 KB): https://docs.catalyst.zoho.com/en/sdk/python/v1/llms-full.md
- Java SDK (complete, ~407 KB): https://docs.catalyst.zoho.com/en/sdk/java/v1/llms-full.md
The per-SDK
llms-full.mdfiles are complete references — download and grep for the method you need rather than reading them whole. Theoverview/index.mdpages are thin landing stubs; do not rely on them for API details.
- CLI reference: https://docs.catalyst.zoho.com/en/cli/v1/cli-command-reference/index.md
- Pricing: https://catalyst.zoho.com/pricing.html
Fetching docs:
llms.txtis the markdown index of every page. Appendindex.mdto any docs page URL to get its markdown instead of HTML. A response starting with<!DOCTYPE html>means the page does not exist.
FAQ
What does the catalyst-by-zoho skill do?
Expert coding assistant for Catalyst by Zoho — Zoho's full-stack serverless cloud platform. Use for any question about Catalyst services, CLI, SDKs, architecture, pricing, or Zoho MCP tool-based infrastructure management.
How do I install catalyst-by-zoho?
Run npx skills add https://github.com/catalystbyzoho/agent-skills --skill catalyst-by-zoho in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/catalyst-by-zoho/ (personal) or .claude/skills/catalyst-by-zoho/ (project).
Which AI agents can use catalyst-by-zoho?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is catalyst-by-zoho safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains catalyst-by-zoho?
It is published by catalystbyzoho in catalystbyzoho/agent-skills. It has 1,049 recorded installs.
More from catalystbyzoho/agent-skills
catalyst-basics
catalystbyzoho/agent-skills
Core Catalyst project setup — directory structure, environments, CLI commands, and all Catalyst IDs (Project ID, ZAID, Table ID, Segment ID, Org ID). Trigger on 'start a Catalyst project', 'what is .catalystrc', 'where do I find my Table ID', 'difference between Development and Production', or any Catalyst ID or CLI question.
catalyst-functions
catalystbyzoho/agent-skills
Catalyst serverless functions — all 7 types (Basic I/O, Advanced I/O, Event, Cron, Job, Integration, Browser Logic), handler signatures, catalyst-config.json, Security Rules, API Gateway routing, file uploads, busboy, Express middleware, environment variables, function URL, and function testing. Requires MCP connection — check for CatalystbyZoho tools before any operation. Trigger on 'write a function', 'catalyst function', 'API Gateway', 'Security Rules', 'function not found', 'function returns 401', 'busboy', 'middleware', 'function URL', 'environment variable in function', 'duplicate CORS headers', 'CORS error in browser', 'Access-Control-Allow-Origin multiple values', 'function URL 404', 'execute suffix', 'function timeout', 'function hangs', or any function type question. Do NOT use for persistent servers, long-running processes, or Docker deployments — use catalyst-appsail instead.
catalyst-appsail
catalystbyzoho/agent-skills
Catalyst AppSail — persistent backend PaaS with managed runtimes (Node.js, Java, Python) and custom Docker containers. Trigger on 'AppSail', 'persistent server', 'Docker on Catalyst', 'XZOHOCATALYSTLISTENPORT', or 'long-running process on Catalyst'. Do NOT use for stateless request/response handlers, event-driven functions, or scheduled jobs — use catalyst-functions instead.
catalyst-sdk
catalystbyzoho/agent-skills
Catalyst SDKs — initialization patterns, service access, and method reference for Node.js, Web (browser), Python, Java, Android, iOS, and Flutter. Trigger on 'SDK', 'zcatalyst-sdk-node', 'Node.js SDK', 'Web SDK', 'Python SDK', 'Java SDK', 'Android SDK', 'iOS SDK', 'Flutter SDK', or 'initialize SDK'.
catalyst-datastore
catalystbyzoho/agent-skills
Catalyst Data Store — relational cloud database with ZCQL, CRUD operations, table permissions, and result pagination. Requires MCP connection — check for CatalystbyZoho tools before any operation. Trigger on 'Data Store', 'ZCQL', 'create table', 'executeZCQLQuery', 'table permissions', 'ROWID', 'boolean column', 'boolean always true', 'truthy string', 'boolean stored as string', or 'DataStore data types'. You MUST load this skill whenever writing code that reads or writes Data Store data — ZCQL result wrapping, boolean-as-string behavior, and App User permissions are non-obvious and cause silent bugs if skipped.
catalyst-zoho-mcp
catalystbyzoho/agent-skills
Catalyst Zoho MCP — manage Catalyst infrastructure (tables, buckets, cache) via CatalystbyZoho MCP tools using natural language. Trigger on 'Zoho MCP', 'MCP tools', 'catalyst MCP', 'CatalystbyZoho', 'create table with AI', 'MCP setup', 'MCP config', 'global MCP server', 'infrastructure as conversation', 'MCP first', 'avoid Catalyst console', or 'use MCP instead of console'.
Popular ai & agents skills
google-agents-cli-publish
google/agents-cli
This skill should be used when the user wants to "publish an agent", "publish my ADK agent", "register an agent with Gemini", "publish to Gemini" (formerly Gemini Enterprise), or needs guidance on the agents-cli publish gemini command. Also use when the user wants to "manage agents in Agent Registry", "list/update/delete registered agents", or "register an MCP server". Covers ADK vs A2A registration modes, programmatic and interactive usage, flag reference, auto-detection from deployment metadata, Agent Registry fleet management, and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment (use google-agents-cli-deploy).
google-agents-cli-eval
google/agents-cli
This skill should be used when the user wants to "run an evaluation", "evaluate my agent", "evaluate my ADK agent", "write an eval dataset", "analyze eval failures", "compare eval results", "optimize agent", or needs guidance on the Gemini platform eval methodology and the Quality Flywheel. Covers eval metrics, dataset schema, LLM-as-judge scoring, and common failure causes. Applies to any agents-cli project, whatever framework the agent is written in. Do NOT use for agent API code patterns (ADK: use google-agents-cli-adk-code), deployment (use google-agents-cli-deploy), or project scaffolding (use google-agents-cli-scaffold).
skill-creator
anthropics/skills
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
codex-pet
prime-skills/runcomfy-agent-skills
Codex Pet generator on RunComfy. Build a Codex-compatible Codex Pet spritesheet.webp + pet.json from a single reference image, drop it into ${CODEXHOME:-$HOME/.codex}/pets/ / and Codex picks it up as a custom Codex Pet next to the 8 built-ins. This skill produces the exact Codex Pet atlas Codex expects (1536x1872 PNG/WebP, 8 cols x 9 rows, 192x208 cells, 9 animation states — idle, running-right, running-left, waving, jumping, failed, waiting, running, review). Calls OpenAI GPT Image 2 edit ONCE via the local RunComfy CLI as runcomfy run openai/gpt-image-2/edit to produce a canonical Codex Pet pose, then assembles all 9 animation rows programmatically with ImageMagick micro-transforms — no Codex Pro, no $imagegen, no OPENAIAPIKEY required, only RUNCOMFYTOKEN. Triggers on "codex pet", "create codex pet", "make codex pet", "hatch codex pet", "/hatch image", "desktop pet codex", "codex pets", "spritesheet.webp", or any explicit ask to build a custom pet for OpenAI Codex.
full-output-enforcement
leonxlnx/taste-skill
Overrides default LLM truncation behavior. Enforces complete code generation, bans placeholder patterns, and handles token-limit splits cleanly. Apply to any task requiring exhaustive, unabridged output.
executing-plans
obra/superpowers
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available