← Cecil-IA Labs FFmpegCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Cecil-IA Labs FFmpeg
Snapshot Sep 30, 2026 · 23:17 UTC · version 2.0.0
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"name": "ffmpeg-onboarding",
"description": "Inspect and prepare an FFmpeg execution environment, routing capability checks and explicit installation guidance across ChatGPT, Work, Codex, and IDE hosts. Use before media work when the execution context or runtime availability is unknown.",
"included_files": [
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 225
},
{
"relative_path": "references/execution-contexts.md",
"size_in_bytes": 2971
},
{
"relative_path": "scripts/check.mjs",
"size_in_bytes": 2736
},
{
"relative_path": "scripts/install.mjs",
"size_in_bytes": 2782
}
],
"skill_md_contents": "---\nname: ffmpeg-onboarding\ndescription: Inspect and prepare an FFmpeg execution environment, routing capability checks and explicit installation guidance across ChatGPT, Work, Codex, and IDE hosts. Use before media work when the execution context or runtime availability is unknown.\n---\n\n# FFmpeg Onboarding\n\n## Activation scope\n\nUse this Skill when the host, Node.js/npm runtime, FFmpeg/FFprobe\ninstallation, toolkit CLI, codec/filter support, or hardware capability is\nunknown or needs explicit verification before media work.\n\nUse it first when a user asks whether the current environment can execute a\nworkflow, requests installation guidance, or reports that a command works on\none host but not another.\n\n## Do not use\n\nDo not use this Skill as the primary workflow for editing, conversion,\ncomposition, streaming, diagnosis, or pipeline authoring once the required\nenvironment facts are known. Hand off to the matching domain Skill or to\nffmpeg-workflow.\n\nDo not claim that a command ran when the host only supports copy/paste\ninstructions.\n\n## Required inputs\n\nCollect only what is needed:\n\n- the execution context, if known;\n- the requested media operation or required capability;\n- the operating system and shell only when installation or command syntax\n depends on them;\n- explicit authorization before installing packages or changing PATH/system\n configuration.\n\n## Preflight\n\n1. Identify which execution context is actually available. Do not infer local\n file or shell access from the conversation alone.\n2. Inspect Node.js, npm, FFmpeg, FFprobe, and cecilia-ffmpeg without mutation.\n3. Prefer toolkit capability and version inspection over parsing ad-hoc\n FFmpeg output.\n4. Separate observed facts from recommendations and installation steps.\n5. After an authorized installation, repeat the same checks and report the\n resolved executable paths and versions.\n\nThe onboarding script can complete the diagnostic while leaving the host\nunready. Use `output.status` as the readiness decision: only `ready` permits\nthe next media Skill. `warning` or `blocked` requires the listed remediation\nand a new check; the outer envelope uses `status: \"needs-input\"` for those\nstates and exposes the same warnings at the top level.\n\n## Toolkit surface selection\n\nUse the highest-level executable surface available:\n\n1. use a Skill-associated script when the requested onboarding action exists;\n2. otherwise use the global cecilia-ffmpeg binary;\n3. otherwise use the explicit npm package-runner fallback below;\n4. use native FFmpeg/FFprobe only when the toolkit lacks the required\n inspection or the user explicitly requests native commands.\n\nThis Skill is script/CLI-first and does not require a network service or an\nalternate agent protocol.\n\n## Associated scripts\n\nFrom a checkout or installed package, send one JSON request on stdin and keep\nthe single JSON response as the source of truth:\n\n printf '%s\\n' '{\"context\":\"codex\",\"input\":{}}' | node skills/ffmpeg-onboarding/scripts/check.mjs\n\nPlan an installation without changing anything:\n\n printf '%s\\n' '{\"context\":\"codex\",\"input\":{\"scope\":\"local\"}}' | node skills/ffmpeg-onboarding/scripts/install.mjs\n\nAn installation is only applied when the request contains both\n`input.apply: true` and `input.authorized: true`. Supported scopes are\n`global`, `local`, and `npm-exec`. The scripts never edit shell startup files,\ninterpolate shell commands, or claim that FFmpeg is ready from npm status alone.\n\n## Preferred toolkit commands\n\nFor a read-only baseline, use:\n\n cecilia-ffmpeg doctor\n cecilia-ffmpeg environment check --json\n cecilia-ffmpeg environment version --json\n cecilia-ffmpeg environment capabilities --json\n\nIf the global binary is unavailable, use:\n\n npm exec --yes --package=@cecilialabs/ffmpeg -- cecilia-ffmpeg doctor\n\nUse cecilia-ffmpeg probe INPUT --json when media metadata is part of the\nreadiness decision.\n\n## Native FFmpeg fallback\n\nUse native FFmpeg or FFprobe only when the required capability is not exposed\nby the toolkit or the user explicitly asks for native syntax. Preserve the\nobserved error and do not silently substitute a different codec, filter, or\nhardware path.\n\n## Output expectations\n\nReport:\n\n- the execution context and whether it was observed or assumed;\n- resolved paths for Node.js, npm, FFmpeg, FFprobe, and the toolkit CLI;\n- versions and the exact capability relevant to the requested workflow;\n- installation actions that were performed versus commands the user must run;\n- the next domain Skill or workflow step.\n\n## Validation\n\nValidate the capability that the requested media workflow actually needs.\nThe existence of an executable alone does not prove codec, filter, device, or\nhardware usability. After installation, repeat the checks from the same host.\n\n## Error recovery\n\n- If a binary is missing, distinguish PATH resolution from installation.\n- If the toolkit is unavailable, use the explicit package-runner fallback and\n preserve its error output.\n- If a codec/filter is missing, choose a supported workflow or explain the\n required FFmpeg build; do not invent an equivalent.\n- If hardware is compiled in but runtime probing fails, report those as\n separate facts and fall back only when the user permits it.\n- If the host cannot execute commands, stop at a reproducible guided flow.\n\n## Safety and determinism\n\nEnvironment inspection is read-only. Installation, shell startup changes,\npackage-manager actions, and device configuration require explicit\nauthorization. Never expose credentials or ask a regular chat host to expose\nlocal media through a public domain or proxy.\n\n## References\n\nSee references/execution-contexts.md for context routing, installation\nboundaries, and result-reporting examples.\n"
}SHA-256: 023dab5d1362db74a1f2ce234a7f33d758720a41c319c0121605d528d9504eb7