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. Κάντε commit με το 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. Ποτέ δεν εκτυπώνεται στην έξοδο. |