Production Desk
Finalizing a Local Production Desk
Production Desk is a local-first Electron workspace for moving animation work from source material to reviewable boards, generated candidates, and an editable animatic.

The current Production Desk source snapshot describes a local workflow for animation production. The Electron app brings source folders, managed project records, storyboard boards, generation candidates, review states, and an editable animatic into one workspace while keeping the authored production tree readable and protected.
The product requirement is clear from the production model. A production already has source material, naming, folders, and decisions that cannot be casually rewritten by a new interface. Production Desk therefore treats those folders as evidence. The app adds managed state around them, with stable identities, versions, provenance, and explicit actions for anything that would change source material.
A local workspace with a visible context
When the app opens, the native shell starts a loopback server and loads the interface in a sandboxed Electron window. The shell owns production folder selection, known productions, template creation, native credentials, preferences, and close or quit guards. Browser mode can inspect the interface, while native folder selection and shell actions stay with the desktop app.
Home is the managed project catalogue. It offers Create assets, Open folder, and New project, then shows project cards with search, display-name editing, cover selection, and removal from the catalogue. Removing a catalogue entry leaves the original files in place. Creating a project establishes a managed root with the expected character and screenplay or storyboard folders, together with a .production-desk.json identity record.


The main shell keeps the current production and cut visible while the user moves through the workspace. The header carries the production selector, Open, Home, New cut, Queue, Settings, and the ModelArk spend meter. The navigator groups Create, Cut work, Story, Library, Review, and Settings, with expandable scene and sequence groups, search, sequence overviews, cut links, and Advanced tools. Its collapsed state is remembered locally, and on a narrow window it becomes a drawer.
This context is part of the work itself. Navigation guards can stop a production switch, close, or quit while a save, job, generation preparation, or unsaved draft is active. Errors remain visible with retry and dismiss actions. Previous and next cut controls follow the production's ordered cuts.
Create begins with a clear task
Create is the primary creation surface. Its mode strip opens Character, Prop, Location, Storyboard, or Video work. Each mode keeps its draft when the user visits Library and returns, so a reference selection or candidate snapshot is not lost during the normal Create to Library to Create loop.
Character, Prop, and Location use the shared Asset Studio. A brief, source files, and references become a job and candidate package. Character work requires the canonical design reference when a known visible character is involved. Location work can produce a location plate package. The result remains a candidate until a separate review, approval, or publication action allows it to move forward. Private filesystem paths stay behind opaque job identifiers in the renderer.
Storyboard Tools supports Manual Sketch and Productionized Keyframe work. A prompt and scoped references can be combined with a rough or production reference and a saved style preset. The prepared package is immutable. A rough drawing can become a filled or productionized candidate while keeping its source version lineage. The interface makes queued, running, complete, failed, cancelled, stale, and deleted states explicit, with retry, cancel, and recover actions where the job supports them.

Video mode has a Reference video path and a Cut package path. Reference video accepts motion-compatible media and settings. The Cut package path retains the 5RPS and example source format, while an incompatible profile explains the boundary and offers Reference video. The form records ordered references and their roles, prompt, model, resolution, aspect ratio, duration, seed, audio, and watermark settings. Preparation creates an immutable snapshot and preflight report. Generation is a separate billable submission, and remains disabled until the preflight, draft, and prerequisites are ready.
Moving a cut through production
Cut work is the stage workspace for a selected production, scene, sequence, and cut. Its breadcrumb and duration stay in view with previous and next controls. The stage tabs are Storyboard, 原画 Genga, 動画 Douga, and 仕上 Shiage. A compact workbench holds candidates, source references, packages, evaluations, approvals, and handoffs for the active stage.
The source folders remain authoritative. Stage metadata and generated artifacts are additive sidecars under the Production Desk boundaries. An explicit Apply action is required before authored source content is replaced, and source hashes and revisions are checked before that can happen.
Story provides Screenplay and Direction stages. The editor shows authored source, a rich Markdown surface, preview, draft state, and save or apply controls. Drafts are revisioned against a source hash. Preview does not alter source material. If the source changes while a draft is open, the app reports a conflict and asks for reconciliation. Review comments can be anchored to text selections or storyboard images, shared or private, with sequence states for needs return and reviewed.
Library is a scoped catalogue for the current cut. Search and filters cover All, Characters, Props, Locations, Storyboards, Stage assets, and Other. A Current cut references option narrows the result to material used by the selected cut. Selecting an item opens its artifact details through an opaque token. The catalogue keeps reference finding focused on the selected cut and current task.
Review is the human evaluation surface. On 5RPS and example profiles it provides the anchored screenplay and storyboard reviewer with source blocks, sequence navigation, comments, image anchors, review status, and preservation of original local comments. Other profiles explain that the legacy reviewer expects the 5RPS sequence format and route the user to Cut work for stage candidate evaluation.
Settings makes the production's readiness legible. It reports mapped folders, required and optional directories, source and write boundaries, helper availability, runner status, and connection readiness. Missing folders, helpers, Codex, Seedance, or gcloud prerequisites are shown as gaps. The interface does not turn a missing credential into a claim that a provider is ready.
Queue collects active and historical local jobs with timestamps, tools, outputs, errors, cancel, retry, recover, and delete actions where supported. The ModelArk spend meter reports settled monthly video-generation spend only when billing data and conversion are available. Its unavailable and missing-key states do not expose the key or imply that an action can be submitted.
A project-first route to the animatic
The managed project workspace is a project-first surface from Home or the Project header. Its header carries the project name, save state, FPS, revision, New project, Preview, Tools, Home, and the spend meter. The Structure tree contains Act, Scene, Sequence, and Shot nodes. A node can be added, renamed, recoded, reordered, focused, deleted, or opened through breadcrumbs and parent, sibling, and child controls. Compare-and-swap conflicts offer an explicit Use remote choice.
Project contains Story, Boards, Generations, and Timeline tabs. Story edits the selected node's title, code, and screenplay Markdown. Boards keeps the canvas dominant while providing sheet and page navigation, 16:9 cells, zoom, checkerboard display, Pen, Eraser, bucket fill where available, size controls, undo and redo, and sheet or board management. Rough and filled variants share one shot identity. Missing variants are reported instead of being silently substituted.
Boards autosave with a debounce and structural changes use revisioned history. A board can become a generation parent and later become a timeline source. The video generation workspace keeps the prompt, inline @tag references, Browse assets, ordered references, style and video settings, identity confirmation, and Generate video action in the foreground. Its compact job area shows completed video candidates with Fullscreen, Details, Use in timeline, and Delete actions. Candidates can be reviewed before they become timeline versions.

Timeline is a frame-based editing surface. It provides layers and tracks, integer frame positions, clip thumbnails, a scoped media bin, child composition links, title editing, playback, trim and duration controls, undo and reset, layer deletion, and render or preview actions. Drag placement shows a live ghost, snap guide, and frame label, with gaps, snapping, same-layer ripple behavior, and pointer cancellation. Act, scene, sequence, and shot timelines nest through an acyclic graph.

The supplied example renders accompany the Production Desk record. They are presented as supplied production examples without assigning their creation to a particular runner or provider.
Project Assets is the managed version catalogue. It records asset kind, tags, selected version, variants, source lineage, hashes, and identity state. Import creates immutable content-addressed versions. Deletion is blocked when a version is referenced by a board, clip, or other managed record. World provides editable local blocks with position, size, rotation, camera, and prompt. Optional spatial parsing and World Labs generation remain capability-gated and receipt-backed. Tools contains Rough drawing and Production keyframe actions with the selected node and shot context.
Making a candidate a production decision
The workflow keeps preparation, generation, evaluation, approval, adoption, and publication separate. A provider finishing a job does not approve its result. A candidate must be compared with its source, identity, coverage, and stage requirements before it is approved. A handoff records the next stage, target revision, and approved input version IDs. It moves lineage forward without starting generation.
This separation also keeps paid actions visible. Local drafting, reference selection, preparation, and review can be understood before a billable submission is made. When a generated video, board, or asset is accepted, the resulting version retains its source, job, board, or lineage record.
Settings and the managed project workspace keep the remaining boundaries visible. Optional iCloud, private GCS, Supabase metadata, provider generation, World Labs, cloud CAS, and restore paths each have their own receipts and readiness conditions, and the source snapshot records several of those paths as unverified. The supported next step remains concrete: select an approved board or video version, place it in the frame-based Timeline, and build the animatic while preserving its source lineage.