К основному содержанию
скилл CX Codex

catalyst-job-scheduling — скилл для Claude Code: обзор и установка

Управляет пулами задач, фоновыми вызовами и расписаниями кронов в Zoho Catalyst. Помогает настроить отложенную обработку и избежать ошибок SDK.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add catalystbyzoho/agent-skills --skill catalyst-job-scheduling -a claude-code
Открыть на GitHub

Что делает catalyst-job-scheduling

Скилл настраивает фоновые процессы в Zoho Catalyst через пулы задач, прямые вызовы и расписания. Он подсказывает правильную структуру обработчиков для Job functions, Webhook, Circuit и AppSail. Без заранее созданного пула задач запуск завершится ошибкой: встроенного дефолтного пула в сервисе нет.

Внутри заложены правила валидации параметров. Например, имя задачи job_name ограничено длиной от 1 до 20 символов, а интервал повторов retry_interval задаётся строго в секундах от 60 до 86400, а не в миллисекундах. Скилл также предостерегает от опечатки в SDK: перечисление CRON_TYPE.CALENDER отклоняется сервером, нужно передавать строку 'Calendar'.

Отдельное внимание уделено безопасности. Скилл напоминает не логировать целиком методы getJobDetails(), чтобы не раскрыть секретные ключи проекта в логах. При отслеживании он рекомендует проверять статус по записям конкретной задачи, так как счётчики успешных и провальных запусков у крон-триггеров всегда остаются нулевыми.

Какие задачи решает

  • настроить пул задач под функции с ограничением по памяти
  • создать периодический или календарный крон в Zoho Catalyst
  • написать обработчик Job function с корректным закрытием контекста
  • исправить ошибки валидации параметров retry_interval или cron_type

Примеры запросов агенту

  • Создай фоновый вызов через submitJob для отправки отчёта
  • Настрой календарный крон в Catalyst для списания подписок
  • Проверь функцию задачи на утечку секретов в логах

Как установить catalyst-job-scheduling

1Через Skills CLI (Vercel)

npx skills add catalystbyzoho/agent-skills --skill catalyst-job-scheduling -a claude-code

2Вручную: положить файлы

~/.claude/skills/catalyst-job-scheduling/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/catalyst-job-scheduling/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о catalyst-job-scheduling

Как установить catalyst-job-scheduling в Claude Code?

Выполните команду npx skills add catalystbyzoho/agent-skills --skill catalyst-job-scheduling -a claude-code в терминале.

Зачем нужен скилл catalyst-job-scheduling?

Он помогает агенту формировать корректные пейлоады для пулов задач, немедленных вызовов и расписаний в Zoho Catalyst. Это исключает частые ошибки валидации памяти, интервалов повторов и имён задач.

В каких единицах задаётся интервал повтора retry_interval?

Интервал retry_interval указывается исключительно в секундах в диапазоне от 60 до 86400. Если передать значение в миллисекундах, сервер отклонит запрос.

Исходный текст

SKILL.md · Apache-2.0
---
name: catalyst-job-scheduling
description: "Catalyst Job Scheduling — job pools, immediate/background jobs, and crons (Periodic, OneTime, Calendar, CronExpression) executing Job functions, Webhooks, Circuits, AppSail. Trigger on 'job scheduling', 'job pool', 'jobpool_id', 'submit a job', 'immediate job', 'cron job', 'scheduled function', 'submitJob', 'createCron', 'retry_interval', 'time_of_execution', or errors 'not a job function', 'job_name must contain only alphanumeric'. Replaces deprecated Cron."
metadata:
  version: "2.0.0"
---

# Catalyst Job Scheduling

Job Scheduling runs background work in three pieces: **job pools** (capacity containers), **jobs** (one execution each, submitted immediately via API/SDK/MCP), and **crons** (schedulers that submit jobs on a timetable). Every fact in this skill and its references is runtime-verified against a live Catalyst project (Aug 2026) unless marked otherwise.

## Prerequisites

Before any operation, load `references/job-scheduling-basics.md` — it covers the five setup rules that cause most failures: job pool must exist first (no default), targets must be JOB-type functions, all time values in seconds, `job_name` limits, and function-vs-pool memory constraints.

## How It Works

1. **Identify the target type**: Job function (most common), Webhook (any HTTP URL), Circuit, or AppSail. Create/verify a matching-type job pool (Function pools size by `memory` MB; the others by concurrent `number` 1–10).
2. **One-off work → submit an immediate job** (MCP `CatalystbyZoho_Create_Immediate_Job` or SDK `jobScheduling().job().submitJob()`). Recurring or delayed work → create a cron (`CatalystbyZoho_Create_Cron_Job` or SDK `cron().createCron()`) choosing Periodic / OneTime / Calendar / CronExpression. Load `references/job-scheduling-basics.md` for exact payloads for both paths.
3. **Write the Job function handler** `(jobRequest, context)`: initialize the SDK with `catalyst.initialize(context, { scope: 'admin' })`, read inputs via `jobRequest.getAllJobParams()` (all values arrive as strings), and ALWAYS end with `context.closeWithSuccess()` or `closeWithFailure()` — failure is what triggers the retry chain.
4. **For retries, dynamic scheduling, webhook targets, or monitoring**, load `references/job-scheduling-advanced.md` — retry semantics (new job records linked by `parent_job_id`), firing behaviors (Periodic crons fire immediately on create AND update; past-dated OneTime fires instantly; OneTime auto-disables after firing), and observability traps (success/failure counters stay 0; dynamic crons are hidden from list APIs).
5. **Verify by job records, not counters**: `CatalystbyZoho_Get_Job_By_Id` shows `job_status` (`PENDING → RUNNING → SUCCESS | FAILURE`), `execution_time`, `dispatch_delay`, `response_code`. Do not trust cron `success_count`/`failure_count` — they stay 0.

## Security Checklist

- **Never log `jobRequest.getJobDetails()` or `getJobMetaDetails()` wholesale** — at runtime their `headers` contain live credentials (`X-ZC-PROJECT-SECRET-KEY`, `X-ZC-Admin-Cred-Token`). Extract only the fields you need.
- Webhook-target jobs to your own project's function URLs carry those same credential headers; treat webhook receiver logs as sensitive.
- Job functions run with admin privileges — validate/whitelist anything you accept via `params` before using it in queries.
- **Never store secrets in job `headers`/`params`** — `Get_Job_By_Id` / `Get_Cron_Job_By_Id` / `List_All_Crons` return them in plaintext. Never paste a raw cron/job dump into chat, issues, or logs.

## Hallucination Guards

- The SDK enum `CRON_TYPE.CALENDER` ("Calender") is misspelled and **rejected by the server**. Use the string `'Calendar'`.
- `retry_interval` is NOT milliseconds. Seconds, 60–86400. `15 * 60 * 1000` is rejected.
- Immediate jobs and scheduled jobs share the same 15-minute timeout; `context.getMaxExecutionTimeMs()` returns the STRING `"900000"` (`parseInt` before math), while `getRemainingExecutionTimeMs()` returns a number.

## Triggers

- "job scheduling", "job pool", "jobpool", `jobpool_id`, "create a job pool"
- "submit a job", "immediate job", "background job", "run this function as a job", `submitJob`, `Create_Immediate_Job`
- "cron", "cron job", "scheduled function", "schedule a function", "recurring job", `createCron`, `Create_Cron_Job`, `cron_expression`, `time_of_execution`, "Periodic", "OneTime cron", "Calendar cron"
- "retry a job", `number_of_retries`, `retry_interval`, `parent_job_id`, "dunning", "billing schedule", "trial expiry job"
- `pauseCron`, `resumeCron`, `runCron`, `deleteCron`, "pause a cron", "trigger a cron manually", `Submit_Cron_Job`
- Errors: "The given function is not a job function", "job_name must contain only alphanumeric and underscore", "job_name should be within 1-20 char length", "retry interval should be within 60s", "Delete all associated Pre-defined Crons before deleting Job Pool", "memory allocated for the Job Function is higher"
- "webhook job", "call a URL on schedule", `notify_url`

## References

| File | Load when the query is about… |
|------|-------------------------------|
| `references/job-scheduling-basics.md` | Core concepts, job pools, immediate jobs, all 4 cron types, MCP tool workflows, Node SDK calls, Job function handler template, CLI setup |
| `references/job-scheduling-advanced.md` | Retry semantics, dynamic (in-code) cron creation, firing/timing behaviors, webhook-target jobs, notify_url, monitoring/observability, security guardrails, pool capacity rules |

© catalystbyzoho · Apache-2.0 · catalystbyzoho/agent-skills

Похожие скиллы

Все скиллы по теме «Бэкенд и API» →
mcp-builder официальный anthropics Скилл проводит через создание MCP-сервера на TypeScript или Python: от изучения протокола до тестов и оценки качества. 130 949установок claude-api официальный anthropics Справочник по Anthropic SDK и API Claude для генерации кода без устаревших параметров и выдуманных методов. 74 198установок lark-im larksuite Скилл подключает Lark IM к агенту: он отправляет сообщения, ищет историю, управляет чатами и файлами. Подойдёт для задач вокруг командных коммуникаций. CX Codex +1 472 900установок lark-event larksuite Слушает события Lark/Feishu и отдаёт их потоком NDJSON. Подходит для ботов, обработчиков сообщений и долгих подписчиков. CX Codex +1 466 800установок caveman-discover JuliusBrussee Находит точки вызова LLM в репозитории и размечает их воркфлоу для Caveman Cloud, чтобы расходы на токены не сливались в одну общую кучу. CX Codex +1 104 400установок migration JuliusBrussee Скилл задаёт правила безопасных миграций схем, данных и API с обязательным откатом. Пригодится при изменениях, где нельзя терять данные или ломать совместимость. CX Codex +1 103 900установок

Из того же набора17

catalyst-slate Помогает агенту развернуть фронтенд на Catalyst Slate: создать приложение, настроить slate-config.toml и выкатить сборку. Полезен, когда React или Next.js надо хостить на Catalyst. CX Codex +1 1 000установок catalyst-cache Скилл для работы с Catalyst Cache: кладёт временные данные в сегменты кэша, читает их и следит за TTL. Пригодится, когда агенту нужно хранить сессионные значения. CX Codex +1 997установок catalyst-stratus Скилл для работы с объектным хранилищем Catalyst Stratus: загрузка файлов, подписанные ссылки, составная загрузка. Пригодится, если проект хранит файлы в Stratus. CX Codex +1 994установок catalyst-nosql Скилл подсказывает агенту, как работать с NoSQL-таблицами Catalyst: собирать элементы через NoSQLItem, вставлять, читать и обновлять записи. CX Codex +1 991установок catalyst-zia Подключает к агенту готовые API Zia: распознавание текста, анализ лиц, детекция объектов, штрихкоды и модерация контента. Пригодится, когда нужен OCR или разбор изображений без обучения своей модели. CX Codex +1 987установок catalyst-pricing Рассчитывает расходы на Catalyst, проверяет лимиты бесплатного тарифа и считает GB-секунды для бессерверных функций. CX Codex +1 973установок catalyst-signals Скилл для работы с Catalyst Signals: помогает настроить издателей, правила, вебхуки и политики доставки событий прямо из консоли. CX Codex +1 938установок catalyst-smartbrowz Скилл учит агента автоматизировать браузеры и генерировать PDF через облачную платформу Catalyst SmartBrowz. Помогает настроить скрипты для Puppeteer, Playwright и Selenium. CX Codex +1 924установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой