• Film: Call my AI. Don't read my portfolio, call it: it listens, answers in my voice, shows you around, and emails what you ask for.
  • Say “What do you actually do?”: it answers in my voice.
  • Say “Show me the support agent”: it opens projects for you.
  • Say “Take me to your About page”: it switches pages for you.
  • Say “Scroll to how you measured it”: it scrolls to the right part.
  • Say “What's the headline number?”: it points at what matters.
  • Say “Email me your résumé”: it sends it once you confirm.

Sankai

Tap the call button below to talk to my AI voice clone. #VoiceAgent #AIAgents

Launch Reel · sankai

Luna film: a dark moon turns full over a field of data bars; a founder asks why revenue dropped, Luna shows its work and answers, minus 18 percent because Meta CPC doubled on Tuesday (illustrative data)

Sankai

My company’s analytics agent: nine brands ask it instead of waiting for an analyst. #AIAgents #Ecommerce

The Answer Clicks · sankai

TwitCanva film: six generation nodes, one per model, each retyping the same prompt and waiting, collapse into one point; the canvas turns dark and a ring of light runs across it. One character photo branches into a whole desert story on its real workflow, one shot per beat, wires merging where scenes combine. A still becomes a Kling 2.6 video of a superbike ride; the laptop closes and the job keeps rendering on the server; it reopens on a finished video of a camera bursting apart and reassembling. The camera flies down the whole story as the six providers appear as chips on one canvas. TwitCanva, open-source AI video canvas, 293 stars on GitHub, Apache-2.0.

Sankai

One photo becomes a whole video shoot, every model on one canvas. Built solo in a month. #OpenSource #AIAgents

Clean Ringing Tail · sankai

Bidtopus film: an agency invoice is stamped paid anyway, and a blue octopus tentacle yanks it away to reveal a Bidtopus contract: target ROAS 2.0x, 7 days, 500 dollars minimum spend, 100 USDC fee. A brass gauge settles on a 65.1 percent chance of success. The 100 USDC coin drops into a locked glass box; the octopus reaches for it and bonks on the glass: the agent cannot touch it. It runs Meta Ads through MCP while a board tracks seven days of spend and ROAS (the daily path is illustrative). On day 7 three lamps turn green: ROAS 2.25x, spend 545 dollars, 7 of 7 days, settled by code, not by the LLM. The lid blows off, the coin flies and the octopus catches it. Bidtopus. Paid only when it delivers. Demo contract on Arc testnet.

Sankai

An ad agent that negotiates the goal, runs the campaign and only gets paid when it hits it. #AIAgents #Hackathon

The New Standard · sankai

Sankai

You may want to talk to Sankai

Follow

Hand-painted cartoon of Sankai’s path: an engineering student in Shanghai fixes a machine (USST, 2014); at Alibaba in 2017 he matches a forecast to the real parcels; in Boston in 2019 he turns a muddle of asks into a route (Northeastern, MS); in Phoenix, 2021 to 2024, he turns two people’s conflicting rules into a working machine; in Bellevue in 2024 he founds SanLuna, builds Luna, nine customers light up, and he keeps building more agents; he walks them to the next door and knocks. Forward deployed.

Sankai

How I became forward deployed: one tool from every stop, Shanghai to Bellevue. #MyStory #ForwardDeployed

A Brighter Tomorrow · sankai

Typed on black: The films on this site were made with AI: the code, the 3D, the paint, the music. Thank you, Claude Fable 5.2. Call my AI, the voice agent you can ring here, runs on LiveKit Agents, with RAG and a Gmail MCP server. Its voice is a clone of my own. Thank you for watching to the end. If my work interests you, message me any time. I am open to Forward Deployed Engineer and Applied Data Scientist roles. Sankai.

Sankai

How this site was made, and what I am looking for. #MadeWithAI #OpenToWork

Typewriter · sankai

You're all caught up

Your shortlist

    Hire meReply within 24h

    Sankai

    Forward Deployed Engineer · AI Agents

    6Agents in production

    I work with customers to turn messy problems into AI agents running in their own systems, then measure whether they actually help.

    Experience

    My work history is in my resume, shared with recruiters on request.

    Skills

    Customer deliveryDiscovery & shadowing · Scoping to one metric · Live demos on customer data · Stakeholder updates · Handoff & runbooks
    IntegrationREST APIs & webhooks · Auth & SSO · Help desk / CRM connectors · Feature-flag rollouts · CI/CD
    Agents & LLMsTool-use agents · RAG · Prompt & context design · LLM-as-judge
    MeasurementOffline eval sets · Human-label calibration · A/B testing · CUPED
    EngineeringPython · SQL · dbt · FastAPI · Docker

    Projects

    Sankai

    Forward Deployed Engineer · AI Agents

    Follow
    6 Agents in production3 Projects
    Follow
    One photo branching into a two-column workflow of generated images and videos
    A video node: a frame-to-frame prompt for Veo 3.1 and its result
    The canvas assistant reading two frames and writing the video prompt
    Sankai · Open Source
    Open to work · Open to US / Remote
    ★ 29364 forks

    GitHub stars · live from GitHub

    Open source · Apache-2.0 · one-command Docker setup

    Start to public release: 1 month

    TwitCanva: Open-Source AI Video Workflow Canvas

    293 stars · 64 forks on GitHub2025 – 2026

    Open sourceApache-2.0Docker

    Who uses it: Creators who make AI images and video (open source, Apache-2.0)

    My part: Built it solo: product, frontend, backend, every provider integration, docs

    More projects

    Highlights

    See all

    Proof you can open. Each link is the real artifact.

    GitHub repositoryThe code, the setup guide and example workflows.
    Open
    Demo videosFrom one photo to a finished video, motion control, storyboards.
    Watch

    The problem

    People making AI video were juggling a separate app for every model, and paying for expensive canvas tools to tie them together. Every provider has its own API, its own rules for what you can feed it, and its own way of running jobs that take minutes. Friends of mine now use TwitCanva instead of paying for those tools.

    What I built

    1. An infinite canvas where every step is a node (prompt, image, video), joined by typed connections (text to image, image to video), so a whole shoot is one workflow you can see, rerun and share.
    2. One backend that talks to six providers (OpenAI, Google Gemini and Veo, Kling, Hailuo, Fal.ai) and to local GPU models. API keys stay on the server; the browser never sees them.
    3. A model picker that knows what each of the 13 video models accepts (text, an image, a first and last frame), so you can only connect what will actually run.
    4. A LangGraph chat assistant that can see the images on the canvas and writes the prompt for the next step.

    How people run it

    1. Docker Compose for a one-command setup; setup scripts for Windows and Linux for the optional local GPU models.
    2. Camera angle control deployed on Modal for people without a big GPU. It scales to zero after 5 idle minutes, so it costs nothing when no one is using it.
    3. One-click publishing to X and TikTok through their OAuth flows, with a setup guide for each integration.

    Integrated with

    OpenAI GPT ImageGoogle Gemini & Veo 3.1Kling AIHailuo (MiniMax)Fal.aiLocal GPU models (Stable Diffusion, ControlNet, Qwen)ModalX (Twitter) OAuthTikTok OAuth

    The hardest problem I solved

    • The problem: a video takes up to five minutes, and every provider runs it differently (Kling, for one, is a task you create and then poll every five seconds). If a creator refreshed the page or closed the laptop, the result of a paid generation was lost.
    • The fix: the server owns the job. It keeps working when the browser goes away and saves the result under the node’s id. When the canvas opens again, it finds the nodes still marked as generating and collects their results.
    • The subtle part: a node can be run again while an older run is still out. A result is only accepted if it was created after the node’s latest run started, so an old video never replaces a new request.

    Results

    MetricValue
    GitHub stars293
    Forks64
    AI providers integrated6 + local GPU
    Video models supported13
    Start to public release1 month

    Stack

    TypeScriptReactViteExpressLangGraph.jsPythonDockerModal
    Hire meReply within 24h