CLI и SDK
Клиентот TypeScript @sketchie/sdk и командната линија sketchie се тенки, типизирани обвивки над истиот HTTP API. Двете го читаат вашиот клуч од SKETCHIE_API_KEY и стандардно одат на https://sketchie.ai/api.
SDK и CLI се испорачуваат како дел од алатките на Sketchie. Ако вашиот регистар сè уште не го разрешува пакетот, можете да ги извршите од репозиториумот на Sketchie со bun. Суровото HTTP API денес работи од кој било јазик.
TypeScript SDK
Создајте клиент, генерирајте објаснување со пријателските полиња и почекајте го рендерирањето.
import { SketchieClient } from '@sketchie/sdk';
const client = new SketchieClient({
apiKey: process.env.SKETCHIE_API_KEY, // Bearer sk_...
// baseUrl defaults to https://sketchie.ai/api
});
// Friendly fields: input (the topic) and length ("M:SS", a multiple of 30).
const created = await client.createExplainer({
input: 'Explain how DNS resolves a domain name',
length: '0:30',
aspect: '16:9',
});
// Poll until the render finishes (or fails).
const done = await client.waitForExplainer(created.id, {
onUpdate: (e) => console.log(e.status),
});
console.log(done.videoUrl); // the rendered MP4
console.log(done.sceneGraph); // the editable scene graph Циклусот на уредување и повторно рендерирање
Клинот на уредливост: завршено објаснување го враќа сопствениот sceneGraph. Потврдете го со editExplainerGraph за да додадете верзија без да потрошите друг бесплатен слот за создавање видео, или испратете инструкција на едноставен јазик. Првото повторно рендерирање на секое видео е бесплатно. Подоцнежните повторни рендерирања користат минути од платен план.
// After a video is ready you get back its editable sceneGraph.
// Edit it, then append a new version to the existing explainer.
const edited = editScenes(done.sceneGraph!); // your UI edits the graph
const rerender = await client.editExplainerGraph(done.id, edited);
await client.waitForVersion(done.id, rerender.id);
// Or apply a plain-language instruction (a targeted re-render):
const version = await client.editExplainer(done.id, 'make scene 2 shorter');
await client.waitForVersion(done.id, version.id); Наведување гласови
const voices = await client.listVoices();
// [{ id: 'sketchie:sulafat', name: 'Nora', isDefault: true, preview_url, ... }] Други методи: getExplainer, listExplainers, revertExplainer, duplicateExplainer, и deleteExplainer.
Командна линија
# Discover voices
sketchie voices
# Generate (returns the queued record immediately)
sketchie generate "Explain how DNS resolves a domain name" --length 0:30 --aspect 16:9
# Generate and wait for the finished render
sketchie generate "Explain how DNS resolves" --length 1:00 --wait
# Status of an existing explainer
sketchie status <id>
# Conversational edit (a targeted re-render)
sketchie edit <id> "make the title scene shorter" --wait
# List your explainers
sketchie list --limit 20 Знамиња и околина
| Знаменце | Значење |
|---|---|
--length <M:SS|sec> | Целна должина, на пр. 0:30, 1:00, или секунди. Позитивен множител на 30. Изостаете за автоматско. |
--aspect <ratio> | 16:9 (стандардно), 9:16, или 1:1. |
--voice <ref> | Референца за глас (видете sketchie voices). Опционално; стандардно Nora. |
--limit <n> | Максимален број редови за list, 1 до 100 (стандардно 50). |
--wait | Испитува додека рендерирањето не заврши или не пропадне. |
--json | Излез читлив од машина на stdout. |
--api-url <url> | Основен URL на API вклучувајќи го префиксот /api. Env: SKETCHIE_API_URL. |
--api-key <key> | Вашиот API клуч. Env: SKETCHIE_API_KEY. Никогаш не се печати во излезот. |