Skip to main content
frame-ingest: video in, citable Markdown out

Turn any video, a local file or a URL, into a structured document you can cite.

status license


Install

frame-ingest needs uv, a small tool that sets up Python and the CLI for you. Skip this step if you already have it (uv --version). Otherwise it takes about ten seconds:

brew install uv                                    # macOS
curl -LsSf https://astral.sh/uv/install.sh | sh    # Linux and macOS

Then install the skill:

npx skills add lavondev/frame-ingest

Then ask your agent to run it:

Agent Command
Claude Code /frame-ingest <video file or URL>
Codex $frame-ingest <video file or URL>
Gemini CLI, Cursor, Copilot, OpenCode, Cline say "frame-ingest this video"
Claude Code plugin
/plugin marketplace add lavondev/frame-ingest
/plugin install frame-ingest@frame-ingest
Clone the repo (Claude Code and Codex)
git clone https://github.com/lavondev/frame-ingest ~/.frame-ingest-src
~/.frame-ingest-src/scripts/install.sh

The repo ships the skill as skills/frame-ingest/ and .agents/skills/frame-ingest. Codex and other .agents/skills readers can also copy skills/frame-ingest into ~/.agents/skills/.

Command line only
uv tool install "frame-ingest[url,local] @ git+https://github.com/lavondev/frame-ingest"
frame-ingest doctor
Manual download

Download frame-ingest-<version>.skill from a release (a zip; verify it against SHA256SUMS) and unzip it into your agent's skills directory.

What you get

  • A corrected transcript, with speech-to-text errors fixed using what was on screen
  • Chapters with summaries, plus a glossary and an entity index
  • Stable anchors (ch-01, t-000125) and timestamps, with a JSON sidecar, so every claim is citable

When it finishes, the agent gives you the document path, a TL;DR, the chapters and a coverage line:

audio yes · transcript asr · frames 8/8 analysed

How the data flows

Data flow: video, ingest on your machine, your agent's model writes, finish checks and builds the document

Videos without captions are transcribed on your own machine, and nothing is uploaded for that. Frames and transcript go to whichever model runs your agent, and nothing goes to a cloud provider without your consent. If a video has audio but no transcript can be made, it stops and asks you instead of quietly dropping the sound.

Learn more

Development
uv sync
uv run pytest && uv run ruff check . && uv run ruff format --check . && uv run mypy

Regenerate the artwork (logo, banner, flow diagram, both themes): python3 scripts/gen_assets.py docs/assets

License

MIT, see LICENSE.

Metadata

Release files for frame-ingest 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for frame-ingest 0.2.0
File Size Uploaded
frame_ingest-0.2.0.tar.gz 394.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for frame-ingest 0.2.0
File Interpreter ABI Platform
frame_ingest-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 571.0 kB

Release files / frame_ingest-0.2.0.tar.gz

Download URL frame_ingest-0.2.0.tar.gz
Size 394.3 kB
Tags Source
SHA-256 checksum
How to use checksums
f5eaae2ec21624c8c4b8168c6c12f357b809caa406d924423fc912e15b5ba642
BLAKE2b-256 checksum
How to use checksums
13c578589e4bd955ae87b498c0c31ccf1cfbb8c9b49f8fc82f3efd52a7a66328
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.

Transparency log

Release files / frame_ingest-0.2.0-py3-none-any.whl

Download URL frame_ingest-0.2.0-py3-none-any.whl
Size 176.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1b7e95ae85f8a87f72567629001077fe30daf12b0c5ad7d792aa55bcd69b0fca
BLAKE2b-256 checksum
How to use checksums
0b2b3e93ce1c1cb32ccce12aa99f8e87c983112f84b0096681db575d56235e2d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page