catalyst-slate — скилл для Claude Code: хостинг фронтенда на Slate
Помогает агенту развернуть фронтенд на Catalyst Slate: создать приложение, настроить slate-config.toml и выкатить сборку. Полезен, когда React или Next.js надо хостить на Catalyst.
npx skills add catalystbyzoho/agent-skills --skill catalyst-slate -a claude-codeЧто делает catalyst-slate
Скилл ведёт агента по шагам работы с Catalyst Slate — Git-хостингом фронтенда с preview-деплоями. Поддержаны React, Next.js, Vue, Angular, Svelte, Astro, SolidJS, Preact и другие фреймворки. Агент сначала проверяет, активирован ли Slate в проекте, потом создаёт приложение командой catalyst slate:create, подгружает references/slate-basics.md с настройкой фреймворка и форматом slate-config.toml, а затем деплоит через catalyst deploy slate <name> -ni.
Главная засада — активация. slate:create проходит локально и без неё, а первый вызов бэкенда случается уже на деплое и падает с HTTP 400. Поэтому перед деплоем нужно один раз открыть консоль Catalyst, зайти в проект → Slate в левой панели → нажать Start Exploring. Проверка идёт через MCP-вызов CatalystbyZoho_List_All_Slate_Apps: если вернулся INVALID_URL_PATTERN, сервис ещё не включён. Скилл прямо запрещает откатываться на устаревший Web Client из-за этого.
Второй момент — вызовы функций из Slate-приложения. Приложение живёт на *.onslate.com, а функции на *.catalystserverless.com, поэтому относительные пути вида /server/fn/execute молча ломаются. Каждый вызов нужно переписать на абсолютный URL и добавить заголовки с generateAuthToken(), плюс прописать домен в CORS-whitelist. Для бэкенд-API и серверной логики этот скилл не подходит — там нужны catalyst-appsail или catalyst-functions.
Какие задачи решает
- развернуть React-приложение на Catalyst Slate
- создать Slate-приложение командой
catalyst slate:create - настроить
slate-config.tomlи baseUrl - починить относительные пути при вызове функций из Slate
- разобраться с ошибкой
HTTP 400при деплое
Примеры запросов агенту
- Задеплой мой Next.js на Slate
- Создай Slate-приложение и настрой
slate-config.toml - Переведи вызовы функций из Slate на абсолютные URL с
generateAuthToken()
Как установить catalyst-slate
1Через Skills CLI (Vercel)
npx skills add catalystbyzoho/agent-skills --skill catalyst-slate -a claude-code2Вручную: положить файлы
~/.claude/skills/catalyst-slate/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/catalyst-slate/
1Через Skills CLI (Vercel)
npx skills add catalystbyzoho/agent-skills --skill catalyst-slate -a codex2Вручную: положить файлы
.agents/skills/catalyst-slate/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add catalystbyzoho/agent-skills --skill catalyst-slate -a cursor2Вручную: положить файлы
.cursor/skills/catalyst-slate/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install catalystbyzoho/agent-skills catalyst-slate2Вручную: положить файлы
.github/skills/catalyst-slate/SKILL.md1Через Skills CLI (Vercel)
npx skills add catalystbyzoho/agent-skills --skill catalyst-slate -a gemini-cli2Командой платформы
gemini skills install https://github.com/catalystbyzoho/agent-skills --path skills/catalyst-slateВручную: положить файлы
.devin/skills/catalyst-slate/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add catalystbyzoho/agent-skills --skill catalyst-slate -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора14
Похожие
Рядом в теме «DevOps и инфраструктура»
Всё по теме «DevOps и инфраструктура» →Вопросы о catalyst-slate
Как установить catalyst-slate в Claude?
Выполните npx skills add catalystbyzoho/agent-skills --skill catalyst-slate -a claude-code. Скилл окажется в ~/.claude/skills/catalyst-slate/SKILL.md.
Что делает catalyst-slate?
Проводит агента по работе с Catalyst Slate: проверка активации, создание приложения, настройка фреймворка и slate-config.toml, деплой с preview-URL.
Почему деплой падает с HTTP 400?
Slate не активирован в консоли. Откройте проект → Slate в левой панели → Start Exploring, это разовый шаг. slate:create при этом проходит локально без ошибок.
Исходный текст
SKILL.md · Apache-2.0
---
name: catalyst-slate
description: "Catalyst Slate — Git-based frontend hosting for React, Next.js, Vue, Angular, Svelte, Astro, SolidJS, Preact and other frameworks with preview deploys. Trigger on 'Slate', 'frontend hosting', 'slate-config.toml', 'deploy React app', or 'cross-domain Slate to function'. Do NOT use for backend APIs or server-side logic — use catalyst-appsail or catalyst-functions instead."
metadata:
version: "2.0.1"
---
> **⚠️ PRE-FLIGHT CHECK — Slate activation (one-time, per project):**
> Before any Slate command, confirm Slate is activated in the console.
> Open the Catalyst console → your project → **Slate** (left sidebar) → click **Start Exploring**.
> This is a one-time step. Skipping it means `catalyst deploy slate` fails with `HTTP 400` even though `slate:create` succeeds locally.
## How It Works
1. **Check if Slate is activated** — Use MCP: call `CatalystbyZoho_List_All_Slate_Apps` with the project ID.
- **If it returns apps or an empty list** → Slate is activated. Proceed.
- **If it returns `INVALID_URL_PATTERN`** → Slate is not yet activated. This is NOT an MCP bug — it means the service needs a one-time console activation. Tell the user:
> "Please open the Catalyst console, go to your project → Slate (left sidebar) → click **Start Exploring**. This is a one-time step that takes 5 seconds. Let me know when done and I'll continue."
Wait for confirmation, then proceed.
- **Never fall back to Web Client (legacy) because Slate isn't activated yet.** Web Client is deprecated — Slate is always the right choice for frontend hosting. The one-time activation is not a reason to change the approach.
> If Slate was not selected during `catalyst init`, run `catalyst slate:create --name <name> --framework <framework> --default` immediately after init. This command updates `catalyst.json` and prompts for the source directory automatically — it is faster than manual setup and should be the default recommendation.
2. **Check if Slate app exists** — If no app exists yet, run `catalyst slate:create --name <name> --framework <framework> -ni` to scaffold one. If Slate was not selected during `catalyst init`, run this immediately after init.
3. **Load `references/slate-basics.md`** — for framework setup, `slate-config.toml` format, and baseUrl configuration.
4. **Cross-domain calls** — If the query involves calling functions from a Slate app, apply the full URL + `generateAuthToken()` + CORS whitelist pattern.
> ⚠️ **Migrating from basic client hosting?** Relative paths like `/server/fn/execute` that worked in basic client **silently break on Slate** — Slate is served from `*.onslate.com` while functions are on `*.catalystserverless.com`. Every function call must become an absolute URL. Find and replace all relative `/server/...` paths with the full `https://<project>.catalystserverless.com/server/...` URL and add `generateAuthToken()` headers.
5. **Deploy** — Before deploying, confirm Slate is activated in the console (Console → Slate). `slate:create` runs locally and succeeds without activation — the first backend call happens at deploy time, which fails with `HTTP 400: Please access the Slate service in your project's console before deploying` if not activated. Once confirmed: `catalyst deploy slate <name> -ni` deploys to the current environment. Preview URLs are available after the build completes.
## Triggers
Use this skill for: "Slate", "frontend hosting", `catalyst slate`, `slate-config.toml`, "deploy React app", "Slate framework", `slate:create`, `slate deploy`, "frontend on Catalyst", "Slate vs Vercel", "cross-domain Slate to function", "Slate baseUrl", "Next.js on Catalyst", or "static frontend on Catalyst".
## References
| Reference | Load when the query is about… |
|-----------|-------------------------------|
| `references/slate-basics.md` | Framework setup, `slate-config.toml` gotchas, baseUrl config, CORS for Slate→function calls, Git deploy, CLI commands |
© catalystbyzoho · Apache-2.0 · catalystbyzoho/agent-skills