No project selected
Create a project from a brief, or pick one from the list on the left.
Loading preview…
| Stage | Status | Model | In / Out | Est | Actual | Created |
|---|
Create a project from a brief, or pick one from the list on the left.
Loading preview…
| Stage | Status | Model | In / Out | Est | Actual | Created |
|---|
Có 3 cách bắt đầu — chọn theo mức độ bạn đã có sẵn:
metadata + story + questions (tối thiểu). Các stage còn thiếu (bible, expansion) sẽ chờ AI pipeline chạy. Dùng khi bạn đã có sẵn chủ đề + câu hỏi.samples/brief.json). Dùng khi bạn muốn kiểm soát tuyệt đối mọi trường.Muốn tái sử dụng case cũ đã ship? Bấm ↓ Import → From Leakit repo để nạp case_<N>.json có sẵn từ Android repo về làm gốc chỉnh sửa/regen.
Backend gọi OpenAI 1 lần, trả về 3 candidate concept khác nhau (khác premise/tone/twist). Bấm View xem chi tiết, Approve cái muốn dùng. Candidate bị reject vẫn nằm trong history, không mất.
Chỉ concept đã approve mới mở khóa Stage 2. Đây là "chốt sáng tạo" quan trọng nhất — tất cả stage sau đều dựa trên đây.
Sinh ra: danh sách nhân vật + quan hệ, ground truth (sự thật thật sự xảy ra), timeline theo thứ tự thời gian, red herrings (manh mối giả), ending, budget số lượng entity/app. Approve để "khóa cứng" — các stage sau phải tôn trọng.
Sinh ra bảng phẳng liệt kê mọi entity cần tạo (từng message, note, email, photo, transaction…) với app tương ứng và câu hỏi liên quan. Chưa viết nội dung — chỉ là danh sách "sẽ làm gì".
Approve plan trước khi expand để tránh tốn token vào entities không cần.
Nhân bản plan thành payload chi tiết theo từng batch nhỏ để prompt không quá dài. Bấm Run batch → chọn nhóm entity từ plan (đã group theo app) → chạy → bấm Accept output để merge vào case version. Lặp lại cho đến khi expand hết.
Entity đã expand rồi sẽ bị disable trong danh sách chọn để tránh trùng lặp và tốn tiền.
Sinh 10–14 câu hỏi theo độ khó tăng dần. Mọi câu hỏi phải trả lời được từ content đã expand — AI phải "chứng minh" dùng entity nào (evidenceEntityKeys).
Câu hỏi cuối phải giải quyết trung tâm mystery, không được để dở.
Sinh spec cho từng ảnh case cần (prompt + negative prompt + must-show + aspect ratio + character reference). Không sinh ảnh — chỉ prompt. Ảnh có chữ (vé, receipt, screenshot) chỉ sinh nền, chữ overlay bằng UI khi runtime.
AI kiểm tra toàn bộ case đã assemble để phát hiện mâu thuẫn timeline, thiếu evidence, dialogue lộ truth quá sớm. Trả về issue list — không tự sửa. Bạn quyết định regen stage nào hoặc sửa tay.
Tab Export ghi case_<N>.json vào <LEAKIT_REPO_PATH>/app/src/main/assets/content/<locale>/cases/ và update catalog.json. App Android load ngay.
Bỏ check Write to Leakit repo để chỉ xem trước JSON trong response body, không ghi file.
Nút 📋 Template trên topbar mở modal 3 tab:
Nút Use in Import auto-paste template vào Import modal.
Tab Preview trong project view hiển thị case đã assemble ở 3 format:
CASE_DATA_STRUCTURE.mdcase_N.json sẽ ghiRefresh sau khi approve stage mới để thấy update. Nút Copy để copy JSON ra clipboard.
Mỗi stage ước lượng chi phí trước khi gọi OpenAI, từ chối chạy nếu vượt budget cap. Default cap: $0.30/case (chỉnh trong .env qua DEFAULT_CASE_BUDGET_USD).
Nút $ Cost trên topbar mở bảng breakdown per stage cho 1 case hoàn chỉnh. Header project hiện Cost so far (actual + estimated) và Full case ≈ (forecast).
Mỗi stage card cũng hiện badge cost inline (vd ≈ $0.0035–$0.0180) — nhìn 1 phát biết stage tốn bao nhiêu trước khi bấm Run.
Dropdown locale ở đầu sidebar filter project theo ngôn ngữ (en/fr/de/…). Nút ↓ Import → From Leakit repo scan folder assets/content/ của Android repo, hiện danh sách locale × cases, cho phép import 1 hoặc all.
Case imported có badge imported màu xanh, mọi stage pre-approved, có thể regenerate stage bất kỳ hoặc export ngay.
Không stage nào tự ghi vào case version. Mọi thứ đi qua POST /jobs/candidates/:id/approve. AI chỉ đề xuất — bạn quyết định. Reject candidate → history giữ lại, có thể regen với input khác.
Idempotent: chạy lại stage với cùng input (cùng hash) sẽ trả về job cũ, không tốn token thêm.
Loading…
Paste a full brief JSON (see samples/brief.json) or start from the sample.
Describe the case in a sentence or two. AI will fill in every brief field so you can jump straight to the pipeline.
Paste a case in the LeakStructure format
(see E:/ClaudeCode/LeakStructure/CASE_DATA_STRUCTURE.md).
Minimal input is metadata + story + questions;
any missing stage (bible, expansion, assets) is left open for the AI pipeline.
Paste a resolved Leakit CasePack (schemaVersion 2).