dyz-gongwen-skills
公文写作 Skills|AI 公文写作助手:防编造、守保密、GB/T 9704 一键排版,覆盖 22 种文书,支持 Claude Code / Codex / Cursor
翻译准备中
尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
Agent skills (Claude Code, Codex, Cursor), examples and n8n workflows for AI video and image generation with Revana
翻译准备中
正在加载完整 README。
查看完整 README ↗Agent skills, runnable examples and n8n workflows for Revana: one API key for 200+ image, video, music and chat models, including Seedance 2.5, Veo 3.1, Kling, Wan, Hailuo, MiniMax, Nano Banana Pro, GPT Image, Flux, Midjourney, Suno, and 90+ LLMs through an OpenAI-compatible endpoint.
POST /v1/generations with model and input, poll, download.max_cost_usd) and idempotent retries (Idempotency-Key).Works with Claude Code, Codex, Cursor and other agents that read the open Agent Skills format.
| Tool | Install |
|---|---|
| Any agent | npx skills add Aribk7/revana-skills |
| Claude Code | npx skills add Aribk7/revana-skills -a claude-code, or /plugin marketplace add Aribk7/revana-skills then /plugin install revana-skills@revana-skills |
| Codex | npx skills add Aribk7/revana-skills -a codex |
| Cursor | npx skills add Aribk7/revana-skills -a cursor |
| By hand | copy a folder from skills/ into your agent's skills directory (e.g. ~/.claude/skills/) |
| MCP instead | claude mcp add --transport http revana https://revana.si/api/mcp (other apps) |
Then set your key in the shell your agent runs in (create one at https://revana.si/dashboard):
export REVANA_API_KEY=sr_live_...
and ask: "make a 5 second video of a paper boat in the rain with seedance", "what's the cheapest veo api?", "make a UGC ad for this product photo".
| Skill | Use it for | Ask it like |
|---|---|---|
revana-video | Text or image to video: Seedance 2.5, Veo 3.1, Kling, Wan, Hailuo, MiniMax, Grok Imagine, Vidu | "make a video with seedance", "veo 3 api", "animate this image" |
revana-image | Make and edit pictures: Nano Banana Pro, GPT Image 2, Flux, Seedream, Imagen, Midjourney | "nano banana pro api", "edit this photo", "product shot" |
revana-ugc-ad | A short product ad: a still from your product photo, then a 9:16 talking video | "make a UGC ad", "TikTok ad for my product" |
revana-model-picker | The cheapest model for a job, ranked from live prices (bundled script, no key) | "cheapest veo api", "cheapest text to video" |
revana-music | Songs and instrumentals with Suno V6 | "make a song", "suno api" |
Every skill quotes the price (from the server where it can, else the live list) and waits for your OK before
spending, sends max_cost_usd at the agreed price, makes one Idempotency-Key per generation, never prints your
key, and works with the revana CLI or plain curl.
examples/: runnable scripts that call https://api.revana.si.
| curl | text to video, image to video with an upload, chat, free calls |
| Node | text to video, image to video, batch images, chat (plain fetch), and the revana SDK |
| Python | the same, standard library only, and the revana package |
| Next.js | route handlers: server-side key, model allowlist, spend cap, polling, file redirect |
| Vercel AI SDK | tools: list models, quote, generate (with approval), status |
| MCP | remote MCP config for Claude Code, Codex, Cursor, VS Code, ChatGPT |
n8n/: importable workflows, AI video generator with Seedance 2.5 via Revana and Product photo to UGC
video ad. Each one quotes from live prices, creates the job with a unique Idempotency-Key, polls with a Wait
node, and downloads the video.
How to import.
# Models, options and prices (no key)
curl https://api.revana.si/v1/models
# Make a video. One Idempotency-Key per video, made once: resend with the same $KEY after a timeout or a 5xx
KEY=$(uuidgen)
curl https://api.revana.si/v1/generations \
-H "Authorization: Bearer $REVANA_API_KEY" -H "Content-Type: application/json" -H "Idempotency-Key: $KEY" \
-d '{"model": "seedance-2.5", "input": {"prompt": "a paper boat drifting down a rainy street", "resolution": "720p", "duration": 5}, "max_cost_usd": 1.05}'
# Poll, then download
curl https://api.revana.si/v1/generations/$ID -H "Authorization: Bearer $REVANA_API_KEY"
curl -L https://api.revana.si/v1/generations/$ID/content -H "Authorization: Bearer $REVANA_API_KEY" -o out.mp4
Prices change, so read them from /v1/models when you need them. As a dated example, on 2026-10-31 that
5-second 720p Seedance 2.5 clip listed at $1.05 ($0.21 a second). With a start image (image_url) Seedance 2.5
costs more than the listed price; on API versions deployed after 2026-10-31, POST /v1/generations/quote prices
the exact request for free (an older server answers 404).
Retrying. After a timeout, a dropped connection, a 5xx or a 429 on the create, resend the same body with the
same Idempotency-Key: you get the generation already started, never a second charge. After a generation has
failed, start again with a new key: the old one keeps answering the failed generation. When asking for
help, quote the request_id from the error (or the X-Request-Id header, on API versions deployed after
2026-10-31).
Also on the same key:
POST /v1/uploads: a public link for a local file, to use as a reference (free)GET /v1/balance: what the key can spendPOST /v1/chat/completions: OpenAI-compatible chat. Point any OpenAI SDK at https://api.revana.si/v1.SDKs: npm i revana (npx revana generate seedance-2.5 "..." -o out.mp4), and pip install revana.
Docs: https://revana.si/docs · OpenAPI: https://revana.si/openapi.json · For LLMs: https://revana.si/llms.txt · Full reference: https://revana.si/llms-full.txt