23 Commits
Author SHA1 Message Date
nite e9922c28c7 docs: make requirements questionnaire fully English 2026-07-14 18:12:22 +08:00
nite 01786e5732 docs: support alternative edit strategies 2026-07-14 18:08:28 +08:00
nite 4181323184 docs: remove unimplemented FunASR context mode 2026-07-14 17:45:10 +08:00
nite acfbd6d72a docs: clarify FunASR rolling context behavior 2026-07-14 17:18:17 +08:00
nite 73c8a3416b docs: document long outputs and FunASR hotwords 2026-07-14 17:00:27 +08:00
nite 666ac0c288 docs: warn ASR transcripts are not final copy 2026-07-14 16:38:26 +08:00
nite 98c478a1bb docs: use neutral audio language placeholder 2026-07-14 16:00:24 +08:00
nite 473e09a5a5 docs: require explicit ASR language in transcription commands 2026-07-14 15:57:37 +08:00
nite 23e0529461 fix: lock PyTorch CUDA builds for transcription 2026-07-14 15:30:53 +08:00
nite 790c775eac fix: pin transcription project to Python 3.12
- Set bundled FunASR transcription project to Python 3.12
- Restrict requires-python to >=3.12,<3.13 and refresh uv.lock
- Document Windows editdistance wheel issue on Python 3.13
- Update README/SKILL prerequisites to recommend Python 3.12
- Add Windows FunASR uv setup troubleshooting reference
2026-07-14 14:40:01 +08:00
nite 0005ba554e fix: distinguish setup vs long transcription handoff
- Match command syntax to execution environment: PowerShell for Windows, shell for WSL/Linux
- Choose execution by video locality, not merely where the agent runs
- Clarify that agents should perform lightweight setup themselves when possible
- Document WSL agents can use powershell.exe to run Windows host setup
- Hand off only long-running transcription/media commands to the user
2026-07-14 14:14:50 +08:00
nite 279d0a85d8 fix: choose transcription environment by video locality
- Choose Windows vs WSL execution based on where the video file lives
- Windows-host videos (/mnt/c, /mnt/d, C:, D:) should use PowerShell and Windows-local transcription project
- WSL/Linux videos (/home, /var, Linux mounts) should use Linux/WSL commands
- Keep Windows uv UNC-path warning, but only when Windows execution is chosen
- Add reference doc with Windows and WSL command templates
2026-07-14 14:11:04 +08:00
nite 3c4a0de8a5 docs: clarify Windows uv execution from WSL
- Document that Windows uv should not run from WSL UNC paths
- Recommend cloning the skill repo on Windows or copying scripts/transcription to C:\...
- Add PowerShell setup examples for Windows-local transcription directory
- Update long-running operations and pitfalls to require Windows local paths
2026-07-14 13:59:20 +08:00
nite 8b353c99bc fix: output paths, WSL/PowerShell transcription, grill-me hint
Step 4 — Transcribe audio:
- Explicit: all output goes in video's own directory, never ~/whisperx_output/
- Transcription commands given to user to execute, not run by agent
- WSL agents provide PowerShell commands with Windows paths
- VIDEO_DIR and SKILL_DIR placeholders explained

Long-running operations:
- Rewritten: generate command for user, not agent executes
- WSL → PowerShell with Windows paths
- Agent verifies output after user reports completion

Self-contained setup:
- uv sync also given to user; WSL → PowerShell variant

Step 3 — Ask editing requirements:
- Optional grill-me skill loading hint for structured interviewing

Pitfalls #11, #12:
- #11: never use ~/whisperx_output/ or separate output dirs
- #12: don't run transcription in agent's own environment
2026-07-14 13:28:46 +08:00
nite c771bdcfaf refactor: switch index from SQLite to JSON with relative paths
manage_index.py:
- Complete rewrite from SQLite to JSON file format
- All file paths stored as relative (relative to video directory)
- Moving the entire video directory does not break references
- Paths outside video dir stored as absolute (editable in text editor)
- Same 8 subcommands, same CLI interface

SKILL.md:
- Step 5: SQLite schema replaced with JSON structure example
- Verification checklist: .vedit.db → .vedit.json

README.md + README.zh.md:
- Features: 'SQLite database' → 'JSON file with relative paths'
- Project structure: 'SQLite index management' → 'JSON index management'
- 'Index Database' section → 'Index File' with relative path explanation

.gitignore:
- *.vedit.db → *.vedit.json
2026-07-14 13:12:54 +08:00
nite 39400e2bb1 refine: generalize workflow to support any subset of capabilities
SKILL.md:
- Workflow header: remove transcription-specific example, state generically
  that users may need any subset of capabilities
- When to Use: add 3 more standalone use cases (transcription, visual
  analysis, material search), with generalizing statement
- Verification checklist: replace specific skip conditions with generic
  'skip if not relevant to the user's request'
2026-07-14 12:23:01 +08:00
nite 5e844d17ec feat: emphasize non-mandatory workflow, support transcription-only use case
SKILL.md:
- Workflow header: explicit statement that every step is optional
  Example: transcription-only → Steps 1,2,4,5 and stop
- When to Use: add standalone transcription as valid use case
- Don't use for: remove 'pure audio-only transcription' exclusion
- Verification checklist: each item tagged with which step it belongs to
  and whether it can be skipped (e.g. Step 3/8 skip for transcription-only)
2026-07-14 12:21:51 +08:00
nite e56723a68f feat: multi-track transcription support
SKILL.md:
- Step 2: user can provide multiple track indexes (e.g. mic + Discord)
- Step 4: transcribe each track separately, cross-reference all transcripts
- Step 5: get-transcription supports --track filter

manage_index.py:
- get-transcription: optional --track flag to filter by track index
- Without --track, returns all transcription records (was: latest only)
2026-07-14 12:19:42 +08:00
nite 8fbb7f176e feat: preserve multi-track audio in clip extraction
SKILL.md:
- Step 6: two clip modes — video-only (frame extraction) vs all-streams (editor use)
- Pitfall #10: warn about dropping audio tracks with default -map 0:v:0
- Note on keyframe accuracy vs frame-exact re-encode

extract_frames.py:
- New --all-streams flag on clip subcommand
- -map 0 preserves video + all audio tracks + subtitles
- Default remains -map 0:v:0 for fast frame extraction
2026-07-14 12:16:17 +08:00
nite 5f9e96de19 refine: README simplification + Fun-ASR-Nano as explicit default
README (EN + ZH):
- npx skills add: use HTTPS URL instead of SSH
- Remove 'First use' uv sync section (agent handles setup, not user)
- Remove 'Stock Material Search' section (workflow detail, belongs in SKILL.md)
- Keep README focused on overview + workflow, not implementation details
- Fun-ASR-Nano marked as default in Features

SKILL.md:
- Step 4: explicitly state Fun-ASR-Nano as recommended default model
2026-07-14 12:05:49 +08:00
nite b60931913b feat: add stock material search section + npx skills add install
- SKILL.md: new 'Finding stock materials' section (on-demand, not mandatory)
  - 5 material sources: 爱给网, B站素材酷, Tenor, GIPHY, Klipy
  - Language-based priority (Chinese users → 爱给网 + B站素材酷)
  - Semantic search term expansion guidance
  - B站素材酷: bcut-resource-search userscript or direct API
  - Anti-bot fallback: browser-based tools
- README.md + README.zh.md: add 'npx skills add' install method
  - Compatible with open agent skills ecosystem (73+ frameworks)
  - git clone as fallback option
  - New 'Stock Material Search' section
2026-07-14 12:00:39 +08:00
nite f8ecbadf1d docs: add bilingual README (English + Chinese) 2026-07-14 11:09:15 +08:00
nite a565382a52 feat: video-edit-planner skill — transcribe, extract frames, plan edits
A conversational video-editing planning assistant. Provides tools for:
- Audio transcription via bundled funasr-script (Fun-ASR-Nano / SenseVoice)
- On-demand clip extraction and frame sampling (ffmpeg, hardware-accelerated)
- SQLite index to track all artifacts and avoid duplicate processing
- Vision analysis guidance with binary-search-style frame sampling
- Iterative Markdown-table edit plan output

Agent-agnostic: no platform-specific tool names, works with any agent runtime.
Dependencies checked at guidance level with OS package manager install hints.
2026-07-14 11:07:57 +08:00