feat(editor): integrate advanced workflows with kadr v0.4 - #8
Open
reg2005 wants to merge 41 commits into
Open
Conversation
Скрыть временные проекты, служебный граф кодовой базы и локальные вспомогательные файлы. Ignore temporary projects, the local code graph, and workspace-only helper files.
Разрешить задавать Python для faster-whisper через конфигурацию или переменную окружения и документировать воспроизводимую локальную установку. Allow selecting the faster-whisper Python through configuration or an environment variable and document a reproducible local setup.
Добавить локальный TTS-воркер, проверку готовности бэкенда и редактор версий озвучки с прослушиванием, повторной генерацией и выбором активного дубля. Add a local TTS worker, backend readiness checks, and a voice-take editor with preview, regeneration, history, and active-version selection.
Добавить естественную прокрутку и pinch-масштабирование на macOS, вертикальную прокрутку дорожек, изменяемую ширину заголовков и безопасное обрезание элементов таймлайна. Add native macOS scrolling and pinch zoom, vertical track scrolling, resizable track headers, and proper clipping for timeline overlays.
Добавить выбор текста, изображений, видео и Remotion-фрагментов кликом по превью, а также синхронное перемещение и масштабирование через гизмо. Select text, image, video, and Remotion layers directly in the preview and keep gizmo movement and scaling synchronized with project state.
Разрешить длинным подписям переноситься и ограничить ширину строк, чтобы настройки экспорта не выходили за границы диалога. Wrap long labels and constrain row contents so export settings remain inside the dialog.
Разрешить выносить превью с транспортом на второй монитор, освобождать центральную колонку и сохранять геометрию окна. Вернуть аудиометр и резервировать его ширину без скачков интерфейса. Detach the preview and transport controls to a second display, reclaim the center column, and persist window bounds. Keep the audio meter while reserving its width to prevent layout shifts.
Использовать Command на macOS и Control на Windows/Linux во всех командах редактора, подсказках и документации. Передавать единую обработку клавиш в отдельное окно превью. Use Command on macOS and Control on Windows/Linux across editor actions, hints, and documentation. Share the same keyboard handler with the detached preview window.
Показывать целевую дорожку, точку вставки и карточки будущих клипов при перетаскивании из медиатеки. Растянуть линейку времени до доступного правого края на малом масштабе. Highlight the target track, insertion point, and pending clip cards while dragging from the media bin. Extend the time ruler to the available right edge at low zoom.
Держать кнопку сохранения неактивной, когда текущий снимок проекта уже записан на диск, и сохранять корректное состояние после открытия или создания проекта. Disable Save when the current project snapshot is already on disk and keep the state correct after opening or creating a project.
Добавить переносимую папку с index.html, JSON таймлайна и относительными медиа. Воспроизводить композицию в реальном времени, собирать Remotion-фрагменты один раз и не рендерить видео покадрово. Export a portable index.html with timeline JSON and relative media. Play the composition live, bundle Remotion fragments once, and avoid frame-by-frame video rendering.
Добавить параметры таймлайна, перемотки и кнопок управления. Загружать ассеты адаптивными параллельными батчами, менять приоритет после seek и поддерживать звук при открытии через file:// без CORS. Add timeline, seeking, and control visibility options. Preload assets in adaptive parallel batches, reprioritize after seeks, and support file:// audio without CORS failures.
Добавить порционную упаковку визуальных ассетов для режима file:// и создавать origin-safe Blob URL перед передачей кадров в WebGL. Сохранить обычные относительные файлы и потоковую загрузку при размещении экспорта на сайте. Package visual assets in chunks for file:// playback and create origin-safe Blob URLs before uploading frames to WebGL. Keep regular relative assets and streaming behavior for hosted exports.
Run and package Kadr on Apple Silicon, with Mac-native UX and a local
ad-hoc-signed .app/.dmg.
Bring-up
- node-pty rebuilds cleanly on Node 25 / Electron 31 (no version pin).
Mac-native (electron/)
- main.ts: fixUserPath() adopts the user's login-shell PATH on packaged
macOS launches before anything spawns. Finder gives GUI apps a minimal
PATH, which made the Claude PTY exit instantly ("session ended") and
would also break node (MCP bridge), ffmpeg/ffprobe and python3.
- main.ts: VAAPI hardware-codec switches are now Linux-only (macOS uses
native VideoToolbox; the flags only risked the GPU sandbox off-platform).
- menu.ts: real macOS application menu. File/Undo/Redo forward to the
renderer over menu:command with CmdOrCtrl accelerators (fixes the
missing Cmd shortcuts — the old keydown handler only checked ctrlKey);
clipboard/selection keep native roles so text fields and the Claude
terminal behave correctly.
- preload.ts + shared/types.ts: onMenuCommand IPC bridge.
- App.tsx: dispatch menu commands to the existing toolbar handlers
(undo/redo defer to native text undo when an input is focused); drop the
Save/Undo/Redo keydown branches the menu now owns.
Packaging
- electron-builder.yml: asar:false (the app spawns mcp-bridge.cjs and
transcribe.py by absolute path), arm64 dmg+zip, ad-hoc signing.
- build/make-icon.mjs: generates the placeholder icon + .icns.
- package.json: icon and package:mac scripts; electron-builder devDep.
Note: installs need an Electron mirror on GitHub-throttled networks
(ELECTRON_MIRROR). See docs/superpowers/specs for full design + evidence.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Скрыть временные проекты, служебный граф кодовой базы и локальные вспомогательные файлы. Ignore temporary projects, the local code graph, and workspace-only helper files.
Разрешить задавать Python для faster-whisper через конфигурацию или переменную окружения и документировать воспроизводимую локальную установку. Allow selecting the faster-whisper Python through configuration or an environment variable and document a reproducible local setup.
Добавить локальный TTS-воркер, проверку готовности бэкенда и редактор версий озвучки с прослушиванием, повторной генерацией и выбором активного дубля. Add a local TTS worker, backend readiness checks, and a voice-take editor with preview, regeneration, history, and active-version selection.
Добавить естественную прокрутку и pinch-масштабирование на macOS, вертикальную прокрутку дорожек, изменяемую ширину заголовков и безопасное обрезание элементов таймлайна. Add native macOS scrolling and pinch zoom, vertical track scrolling, resizable track headers, and proper clipping for timeline overlays.
Добавить выбор текста, изображений, видео и Remotion-фрагментов кликом по превью, а также синхронное перемещение и масштабирование через гизмо. Select text, image, video, and Remotion layers directly in the preview and keep gizmo movement and scaling synchronized with project state.
Разрешить длинным подписям переноситься и ограничить ширину строк, чтобы настройки экспорта не выходили за границы диалога. Wrap long labels and constrain row contents so export settings remain inside the dialog.
Разрешить выносить превью с транспортом на второй монитор, освобождать центральную колонку и сохранять геометрию окна. Вернуть аудиометр и резервировать его ширину без скачков интерфейса. Detach the preview and transport controls to a second display, reclaim the center column, and persist window bounds. Keep the audio meter while reserving its width to prevent layout shifts.
Использовать Command на macOS и Control на Windows/Linux во всех командах редактора, подсказках и документации. Передавать единую обработку клавиш в отдельное окно превью. Use Command on macOS and Control on Windows/Linux across editor actions, hints, and documentation. Share the same keyboard handler with the detached preview window.
Показывать целевую дорожку, точку вставки и карточки будущих клипов при перетаскивании из медиатеки. Растянуть линейку времени до доступного правого края на малом масштабе. Highlight the target track, insertion point, and pending clip cards while dragging from the media bin. Extend the time ruler to the available right edge at low zoom.
Держать кнопку сохранения неактивной, когда текущий снимок проекта уже записан на диск, и сохранять корректное состояние после открытия или создания проекта. Disable Save when the current project snapshot is already on disk and keep the state correct after opening or creating a project.
Добавить переносимую папку с index.html, JSON таймлайна и относительными медиа. Воспроизводить композицию в реальном времени, собирать Remotion-фрагменты один раз и не рендерить видео покадрово. Export a portable index.html with timeline JSON and relative media. Play the composition live, bundle Remotion fragments once, and avoid frame-by-frame video rendering.
Добавить параметры таймлайна, перемотки и кнопок управления. Загружать ассеты адаптивными параллельными батчами, менять приоритет после seek и поддерживать звук при открытии через file:// без CORS. Add timeline, seeking, and control visibility options. Preload assets in adaptive parallel batches, reprioritize after seeks, and support file:// audio without CORS failures.
Добавить порционную упаковку визуальных ассетов для режима file:// и создавать origin-safe Blob URL перед передачей кадров в WebGL. Сохранить обычные относительные файлы и потоковую загрузку при размещении экспорта на сайте. Package visual assets in chunks for file:// playback and create origin-safe Blob URLs before uploading frames to WebGL. Keep regular relative assets and streaming behavior for hosted exports.
Типизировать команды меню и синхронизировать создание проекта с состоянием сохранения. Сохранить нативное редактирование текста и скрыть инструменты разработчика в сборке. Type menu commands and keep new-project actions in sync with the saved state. Preserve native text editing and hide developer tools from packaged builds. Co-Authored-By: Claude <noreply@anthropic.com>
Обновить Electron 42 и electron-builder, включить явную ad-hoc подпись. Добавить в пакет HTML-плеер, MCP-инструкции и Python-воркеры. Update Electron 42 and electron-builder, and enable explicit ad-hoc signing. Include the HTML player, MCP instructions, and Python workers in the package. Co-Authored-By: Claude <noreply@anthropic.com>
Зарегистрировать .kadr в macOS и открывать документы из Finder без пустого окна. Добавить «Новое окно» в меню приложения и Dock, а фоновые операции привязать к окну исходного проекта. Register .kadr documents on macOS and open Finder files without an empty window. Add New Window to the application and Dock menus, and route background work to its originating project window. Co-Authored-By: Claude <noreply@anthropic.com>
Объяснить установку DMG, ассоциацию .kadr и команды создания окна. Уточнить поведение автосохранения для нескольких несохранённых проектов. Document DMG installation, .kadr associations, and window creation commands. Clarify autosave behavior for multiple unsaved projects. Co-Authored-By: Claude <noreply@anthropic.com>
Не добавлять Finder-файлы .DS_Store в рабочее дерево. Keep Finder .DS_Store metadata out of the working tree. Co-Authored-By: Claude <noreply@anthropic.com>
Синхронизировать отдельную горизонтальную полосу с основной областью таймлайна. Учитывать текущую ширину панели дорожек и сохранять жесты трекпада. Align the horizontal scrollbar with the track content area. Keep it synchronized with timeline gestures and the resizable track header. Co-Authored-By: Claude <noreply@anthropic.com>
Заканчивать позиционный указатель на нижней границе последней дорожки. Не рисовать маркер ключевого кадра в пустой части таймлайна. End the position indicator at the bottom edge of the final track. Keep the keyframe marker out of the empty timeline area. Co-Authored-By: Claude <noreply@anthropic.com>
Оставить единственный индикатор после панели названий дорожек. Передавать ему горизонтальные и диагональные жесты трекпада. Keep one scrollbar aligned after the track header panel. Forward horizontal and diagonal trackpad gestures to the timeline. Co-Authored-By: Claude <noreply@anthropic.com>
Add non-rendering timeline annotation tracks with stable task IDs, status history, editing UI, and one-step undo semantics.\n\nExpose annotation task listing and lifecycle tools through MCP while preserving concurrent user timing changes.\n\nCo-Authored-By: Claude <noreply@anthropic.com>
Open annotation cards only on double-click so pointer dragging remains available from the whole task block.\n\nKeep the timeline viewport and playhead stable when saving or closing the first annotation in an existing project.\n\nCo-Authored-By: Claude <noreply@anthropic.com>
Добавить проектную инструкцию для коммитов после завершённых изменений.\nЗакрепить двуязычный формат и изоляцию файлов текущей задачи.\n\nAdd project guidance for commits after completed changes.\nRequire bilingual messages and isolate files belonging to the current task.\n\nCo-Authored-By: Codex <noreply@openai.com>
Собрать завершённые изменения задач Codex в единый проверенный слепок. - Добавить переносимые проекты с зависимостями и ZIP. - Расширить F5-TTS, запись, клонирование и библиотеку голосов. - Добавить главы, вырезание, переименование и улучшения таймлайна. - Добавить раскадровку MCP, адаптивную плёнку и надёжные 720p-прокси. - Синхронизировать возможности MCP и сохранение сессии Claude. - Исправить вставку PNG, уведомления и отмену транскрипции. Consolidate completed Codex task changes into one verified snapshot. - Add portable projects with dependencies and ZIP archives. - Expand F5-TTS, recording, voice cloning, and the voice library. - Add chapters, cut, track rename, and timeline usability improvements. - Add MCP storyboards, adaptive filmstrips, and reliable 720p proxies. - Synchronize MCP capabilities and Claude session persistence. - Fix PNG paste, notifications, and transcription cancellation. Co-Authored-By: Codex <noreply@openai.com>
Объединить upstream/main с многоконными и монтажными улучшениями kadr-custom. Сохранить главы, аннотации, голосовые инструменты, раскадровки и надёжные 720p-прокси. Добавить маркеры, ускоренный alpha-экспорт, звуковое уведомление и переносимые фрагменты v0.4. Исправить диапазон alpha-матта на macOS и обновить безопасные транзитивные зависимости. Merge upstream/main with the multi-window and editing improvements from kadr-custom. Preserve chapters, annotations, voice tools, storyboards, and reliable 720p proxies. Add v0.4 markers, fast alpha export, export chime, and portable fragment sources. Fix alpha-matte range on macOS and refresh safe transitive dependencies.
Зафиксировать исходную ветку PR как родителя без повторного применения уже перенесённых правок. Сохранить проверенное дерево kadr-custom и обеспечить обычное fast-forward обновление без force-push. Record the original PR branch as a parent without reapplying changes already carried forward. Keep the verified kadr-custom tree and allow a normal fast-forward update without force-push.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Русский
Этот PR объединяет расширенный
kadr-customс актуальнымupstream/mainи релизом v0.4.0. История исходной ветки PR сохранена, обновление выполнено обычным fast-forward без force-push.Changelog
npm audit --omit=devсообщает 0 уязвимостей.Проверки
npm run typechecknpm run buildnpm audit --omit=devEnglish
This PR merges the extended
kadr-customwork with the currentupstream/mainand the v0.4.0 release. The original PR branch history is retained, and the update was published as a normal fast-forward without a force-push.Changelog
npm audit --omit=devat 0 vulnerabilities.Validation
npm run typechecknpm run buildnpm audit --omit=dev