CLI và SDK
Client TypeScript @sketchie/sdk và dòng lệnh sketchie là các lớp bọc mỏng, có kiểu dữ liệu trên cùng một HTTP API. Cả hai đọc khóa của bạn từ SKETCHIE_API_KEY và mặc định đến https://sketchie.ai/api.
SDK và CLI được phát hành như một phần của bộ công cụ Sketchie. Nếu registry của bạn chưa phân giải được gói, bạn có thể chạy chúng từ kho lưu trữ Sketchie bằng bun. HTTP API thô hoạt động từ bất kỳ ngôn ngữ nào ngày nay.
SDK TypeScript
Tạo một client, tạo một video giải thích với các trường thân thiện, và chờ kết xuất.
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 Vòng lặp chỉnh sửa và kết xuất lại
Nêm khả năng chỉnh sửa: một video giải thích hoàn thành trả lại sceneGraph của nó. Commit nó bằng editExplainerGraph để thêm một phiên bản mà không tiêu tốn thêm một suất tạo video miễn phí, hoặc gửi một chỉ dẫn bằng ngôn ngữ đơn giản. Lần kết xuất lại đầu tiên của mỗi video là miễn phí. Các lần kết xuất lại sau đó sử dụng phút của gói trả phí.
// 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); Liệt kê giọng đọc
const voices = await client.listVoices();
// [{ id: 'sketchie:sulafat', name: 'Nora', isDefault: true, preview_url, ... }] Các phương thức khác: getExplainer, listExplainers, revertExplainer, duplicateExplainer, và deleteExplainer.
Dòng lệnh
# 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 Cờ và môi trường
| Cờ | Ý nghĩa |
|---|---|
--length <M:SS|sec> | Độ dài mục tiêu, ví dụ 0:30, 1:00, hoặc giây. Bội số dương của 30. Bỏ qua để tự động. |
--aspect <ratio> | 16:9 (mặc định), 9:16, hoặc 1:1. |
--voice <ref> | Một tham chiếu giọng đọc (xem sketchie voices). Tùy chọn; mặc định Nora. |
--limit <n> | Số hàng tối đa cho list, 1 đến 100 (mặc định 50). |
--wait | Kiểm tra cho đến khi kết xuất hoàn tất hoặc thất bại. |
--json | Đầu ra có thể đọc được bằng máy trên stdout. |
--api-url <url> | URL cơ sở API bao gồm tiền tố /api. Env: SKETCHIE_API_URL. |
--api-key <key> | Khóa API của bạn. Env: SKETCHIE_API_KEY. Không bao giờ được in trong đầu ra. |