Kantor
Ubah halaman riset menjadi presentasi
Ekstrak halaman, simpan sebagai konteks LiveDoc, biarkan PPT Task API membangun deck, dan tanyakan sampai tautan selesai.
Salin prompt
Ganti kolom dalam kurung siku lalu tempel ke Claude Code, Codex, atau AI dengan akses terminal. Ia memasang skill Felo, bertanya sebelum memakai kredit, dan menjalankan alur kerja.
Ubah sumber ini menjadi dek slide: [URL publik atau path PDF]. Audiens: [siapa yang melihat]. Slide: [6–10]. Bahasa: [bahasa]. Tema: [nama tema atau “default”]. Gunakan Web Fetch pada halaman publik (atau berkas yang diunggah), simpan sumber sebagai konteks LiveDoc, buat tugas PPT, dan polling sampai dek siap. Hasilkan: 1. Outline satu baris per slide. 2. Tautan dek yang dihasilkan. 3. Tautan LiveDoc yang dipakai sebagai konteks. Aturan: - Jangan mengarang fakta yang tidak ada di sumber. Celah ditulis “Tidak disebutkan di sumber”. - Tugas PPT memakai kredit; tanya sebelum mengirim. - Simpan URL sumber, outline, dan tautan dek bersama-sama. - Jangan menerbitkan atau membagikan dek di luar workspace. - Tulis outline ke ./deck-outline.md dan ringkas di chat.
Salinan juga menyertakan langkah pemasangan dan aturan keamanan.
Yang Anda dapatkan
Contoh keluaran dari satu eksekusi. Bukan pembuatan langsung.
Sumber -> kerangka deck
- Mengapa laporan ini penting
- Apa yang berubah kuartal ini
- Tiga segmen pelanggan
- Di mana bukti tipis
- Apa yang diuji berikutnya
Deck: https://felo.ai/slides/... Konteks: https://felo.ai/livedoc/...
Panggilan persisnya
Untuk developer: alur kerja yang sama sebagai kode, sesuai urutan eksekusi.
Tampilkan panggilan API asli
Ekstrak halaman sumber
Dengan Web Fetch ubah halaman publik menjadi Markdown dengan judul dan isi.
deck.ts const BASE = "https://openapi.felo.ai"; const headers = { Authorization: `Bearer ${process.env.FELO_API_KEY}`, "Content-Type": "application/json", }; async function felo<T>(path: string, body?: unknown): Promise<T> { const res = await fetch(`${BASE}${path}`, { method: body ? "POST" : "GET", headers, body: body ? JSON.stringify(body) : undefined, }); if (!res.ok) throw new Error(`${res.status}: ${await res.text()}`); return res.json() as Promise<T>; } type ExtractData = { data: { content: string } }; const page = await felo<ExtractData>("/v2/web/extract", { url: "https://example.com/research", output_format: "markdown", with_readability: true, });Simpan sebagai konteks LiveDoc
Buat LiveDoc, tambahkan sumber sebagai dokumen, dan dapatkan short_id.
deck.ts type LiveDocData = { data: { short_id: string } }; type ResourceData = { data: { id: string } }; const doc = await felo<LiveDocData>("/v2/livedocs", { name: "Quarterly research deck", description: "Source material for the next deck", }); const resource = await felo<ResourceData>( `/v2/livedocs/${doc.data.short_id}/resources/doc`, { title: "Source page", content: page.data.content, }, );Kirim tugas slide
Panggil PPT Task API dengan konten dan LiveDoc short_id untuk mendapat task_id.
deck.ts type PptTaskData = { data: { task_id: string; livedoc_short_id: string }; }; const task = await felo<PptTaskData>("/v2/ppts", { query: "Six slides for a product review: findings, evidence, next steps", livedoc_short_id: doc.data.short_id, }); console.log(task.data.task_id);Contoh keluaran
{ "data": { "livedoc_short_id": "PvyKouzJirXjFdst4uKRK3", "ppt_business_id": "BfLPuQKmChk9SPmyQawxgr", "task_id": "019cad6d-e874-55ef-d577-686344b5a7e9" } }Tanya sampai selesai
Periksa status sampai selesai dan baca tautan slide.
deck.ts type TaskState = { data: { task_status: string; ppt_url?: string; live_doc_url?: string }; }; async function waitForDeck(taskId: string) { for (let attempt = 0; attempt < 40; attempt++) { const state = await felo<TaskState>(`/v2/tasks/${taskId}/historical`); if (state.data.task_status === "COMPLETED") return state.data; if (["FAILED", "EXPIRED", "CANCELED"].includes(state.data.task_status)) { throw new Error(`Deck task ${state.data.task_status}`); } await new Promise((resolve) => setTimeout(resolve, 3000)); } throw new Error("Deck task timed out"); } const result = await waitForDeck(task.data.task_id); console.log(result.ppt_url);Contoh keluaran
{ "task_status": "COMPLETED", "ppt_url": "https://felo.ai/slides/oM8A9iJHg8dT4ZKgHThQTx", "live_doc_url": "https://felo.ai/livedoc/oM8A9iJHg8dT4ZKgHThQTx" }
Termasuk
- Ekstraksi halaman sumber yang bersih dalam Markdown
- LiveDoc sebagai konteks yang bisa dipakai ulang
- Tugas PPT asinkron dan tautan selesai
- Kerangka slide untuk ditinjau sebelum dibagikan
Yang tidak dilakukan
- Hanya halaman publik atau file yang diunggah; halaman login bisa gagal
- Slide mengikuti sumber dan tidak mencakup seluruh sistem merek
- Satu deck per eksekusi; beberapa deck butuh loop
- Tidak mengedit deck yang ada dan tidak menjamin kecocokan visual
- Tidak menerbitkan atau membagikan deck
Pertanyaan
Bisa pakai PDF alih-alih URL?
Bisa. Kirim tugas PPT sebagai multipart form data dengan file; platform menyimpannya sebagai resource LiveDoc dan membuat deck.
Bisa memilih tema?
Bisa. Daftar tema lalu berikan id tema saat membuat tugas.
Berapa lama satu deck?
Ini tugas asinkron. Tanyakan riwayat sampai selesai; deck panjang lebih lama.
Apakah mengedit deck saya?
Tidak. Ia membuat deck baru dari sumber; mengedit deck yang ada adalah alur lain.
Berapa biaya satu deck?
Pembuatan slide ditagih sesuai pemakaian; tarif saat ini di halaman harga dan prompt meminta persetujuan sebelum mengeluarkan biaya.
Bisa memakai ulang sumber?
Bisa. LiveDoc menyimpan sumber; deck atau mindmap berikutnya bisa memakai short_id.
Alur kerja terkait
Ubah satu pertanyaan menjadi brief riset bersumber
Tanya web, simpan halaman di balik jawaban sebagai Markdown, tambahkan apa yang dikatakan praktisi di X, dan simpan bukti dalam LiveDoc yang bisa ditelusuri lagi.
Buka alur kerjaKontenTerbitkan ringkasan berita AI harian yang benar-benar dibaca tim
Dapatkan ringkasan bersumber, tambahkan diskusi praktisi di X, ambil transkrip video, susun edisi Markdown, dan arsipkan di LiveDoc.
Buka alur kerjaDukunganJawab pertanyaan dukungan dari dokumentasi Anda sendiri
Buat LiveDoc, muat pusat bantuan dan runbook internal, ambil bagian yang menjawab tiket, dan biarkan model menjawab hanya dari bukti itu.
Buka alur kerjaSesuaikan
Resep yang sama, disesuaikan dengan cara Anda benar-benar mengirim.
Sumber PDF
Unggah PDF lewat multipart; platform menyimpannya dulu sebagai resource LiveDoc.
Atur tema
Daftar tema yang tersedia dan berikan id saat membuat tugas.
Pakai ulang di deck berikutnya
Buat tugas PPT baru dengan LiveDoc short_id yang sama.
Lanjut
Halaman referensi di balik resep ini dan langkah berikutnya.