一键导入
edit-lint
edit.json と任意の analysis.json / captions.json / メディアを決定的 CLI で検査し、PASS 後のフレーム視認とレポートまで QA を完了する。edit.json を書いた、または変更した直後、書き出し前、レビュー指摘を反映した後の再確認で使う。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
edit.json と任意の analysis.json / captions.json / メディアを決定的 CLI で検査し、PASS 後のフレーム視認とレポートまで QA を完了する。edit.json を書いた、または変更した直後、書き出し前、レビュー指摘を反映した後の再確認で使う。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
analyze-project が作る分析レポート(interpretation.json + analysis-report.html)を一次証拠として読み、方針・素材計画・実行をチャットの明示承認で確定したうえで edit.json v0 とオーバーレイ HTML へ落とすスキル。複数素材の編集計画、素材ゼロからの生成計画(質問対話 → plan.json の仮枠タイムライン確定)、分析結果からカットや BGM・SFX・B ロールを決める依頼で使う。
原稿テキストから VOICEVOX(ローカル・ゼロ円の既製声)または fal Qwen3-TTS(自声クローン)でナレーション音声を生成し、edit.json の audio.narration[] へ書き込むスキル。ナレーションを作ってほしいと頼まれたとき、仮ナレ(下書き試聴)が欲しいとき、声プロファイルを新規に作りたいとき、または既存のナレーションをエンジンや声で差し替えたいときに使う。
review.json の open チケット(annotation)を edit.json への実対応 → edit-lint → チケット更新まで型どおりに執行するスキル。「a-0002 と a-0003 に対応して」「open チケット全部に対応して」で発動する。状態機械(open → addressed + response 必須・resolved 不可侵・黙殺禁止)を bin/respond.mjs が原子的に守る QA ループの消費側。
動画素材 1 本から 720p プロキシ、ローカル既定の文字起こし(Mac は macOS SpeechAnalyzer / 共通は whisper.cpp・クラウドは承認制)、視認済みキーフレーム、編集イベント、人物関連トラックを作り、analysis.json v0 にまとめるスキル。新しい撮影素材を取り込むとき、素材単体の編集前分析を頼まれたとき、または edit-plan の前処理として素材ごとの分析が必要なときに使う。
プロジェクト内の素材群(analysis.json)と周辺プロジェクト文脈(intake.json・edit.json・planning/・README・過去 PJ)を読み合わせて interpretation.json(解釈層)を作り、事実 + 素材の読みに限定した読み取り専用の分析レポートを描画するスキル。複数素材プロジェクトの内容を素材横断で把握したいとき、analyze-footage が素材ごとの分析を終えたあとの統合、方向性を決める前に一次情報の欠落(取材質問)を洗い出したいときに使う。edit-plan は方針決めの前提としてこのスキルの出力を読む。
承認済み edit.json と edit-lint PASS を入力に、最終 MP4 の計画、明示承認、ローカル書き出し、ffprobe 検証、キーフレーム視認を完了する。編集が承認済みで、納品用動画の書き出しや最終レンダーを求められたときに使う。
| name | edit-lint |
| description | edit.json と任意の analysis.json / captions.json / メディアを決定的 CLI で検査し、PASS 後のフレーム視認とレポートまで QA を完了する。edit.json を書いた、または変更した直後、書き出し前、レビュー指摘を反映した後の再確認で使う。 |
Language: Respond in the user's language — 対話・質問・承認確認・レポートはユーザーの使用言語に合わせる(例: 英語で話しかけられたら英語で応答する)。
checked_at の記録は可・判定には使わない).akari/lint.json と .akari/reports/ のみ。edit.json を自動修正しない
(fix は人間/エージェントの編集として git diff に出す).akari/intake.json 不在をエラーにしない(skipped 報告。
プロジェクトの成長段階に関わらず常に走れる)--media なしの既定実行はメディアをデコードしない(起動・CI で常用できる速さを守る).akari/reports/、後者は .akari/work/ へ置く
(project-structure-v0 契約 §1)edit.json を保存した直後に、リポジトリルートから次を実行する。
node packages/edit-lint/bin/edit-lint.mjs <project-root|edit.json>
exit code と <project>/.akari/lint.json を確認する。0 は PASS、1 は FAIL、2 は入力や実行環境のエラーを表す。
FAIL なら findings[] を上から読み、指摘された edit.json、参照ファイル、overlay HTML、captions.json を手で修正する。CLI に自動修正させない。
同じコマンドを再実行し、error finding がなく verdict: "pass" になるまで繰り返す。analysis.json または captions.json が無い検査は skipped[] で確認する。
PASS 後に、カット境界と overlay の開始・終了フレームを実際に視認する。機械検査の PASS を意味的な品質確認の代わりにしない。
<project>/.akari/reports/edit-lint-report.html とフレーム視認結果を編集レポートへ反映し、checkpoint 状態と provenance を実態に合わせて閉じる。
音声も確認するときだけ --media を追加する。無音区間と音量値は既定で warning になり、次の明示閾値を指定した検査だけが FAIL になり得る。
node packages/edit-lint/bin/edit-lint.mjs <project> --media
node packages/edit-lint/bin/edit-lint.mjs <project> --media --silence-error-seconds 2 --max-volume-error-db -0.1
機械向けの標準出力が必要なら --json を追加する。状態の正本は常に .akari/lint.json とし、HTML は可視化にだけ使う。
.akari/intake.json(進め方フォームの保存先。契約: packages/schemas/intake.schema.json)が存在すれば、schema 検証と整合検査(未知の task ID・duration_s/keep_length の同時指定・status: submitted なのに submitted_at 欠落 等)を合わせて行う。不正値は error(FAIL)、status: "draft"(進め方が未確定)は warning に留める。
黒フレーム、フリーズ、ビート、シーン、フラッシュフレーム、ギャップ、重複クリップ、オフラインメディア、セーフゾーン、フレームレート不整合は将来候補であり、現在の PASS 条件へ推測で追加しない。
edit.json の検査対象は次の公開契約が定めるフィールドである。契約に無いフィールドの検査を推測で 足さず、契約が定めた検査(構造・id 一意性・範囲・参照整合)は既に実装済みである。
sources[] / cuts[].src
— version: 1 の必須形、source と sources[] の排他、sources[].id の一意性、cuts[].src の参照整合audio.narration[]
— id 形式と一意性、t の timeline 座標、gain_db 範囲、provenance と creditbeats[]
— id・t(source 秒)・kind・strength・src の参照整合(src は v1 のみ)direction
— preset の必須と intensity の範囲、overrides の型emphasis_words[]
— id 形式と一意性、t_end > t_start(source 秒)、src の参照整合(src は v1 のみ)