Skip to main content

Agent-first harness for editing Kdenlive projects

Project description

harness-kdenlive

Agent-first Python package for safe, scriptable edits to .kdenlive project files.

  • JSON-first CLI for LLM/tooling use
  • Bridge-first architecture (no direct CLI fallback)
  • Position-aware timeline editing (add, move, trim, remove)
  • Validation, diffing, and snapshot history

Install

pip install harnessgg-kdenlive

Quick Start

harness-kdenlive bridge start
harness-kdenlive doctor --include-render
harness-kdenlive create-project edit.kdenlive --title "Agent Edit" --overwrite
harness-kdenlive import-asset edit.kdenlive C:\path\to\clip.mp4 --producer-id clip1
harness-kdenlive add-text edit.kdenlive "Intro Title" --duration-frames 75 --track-id playlist0 --position 0
harness-kdenlive stitch-clips edit.kdenlive playlist0 clip1 clip1 --position 75 --gap 10
harness-kdenlive inspect project.kdenlive
harness-kdenlive validate project.kdenlive
harness-kdenlive add-clip project.kdenlive producer1 playlist0 120 --output edited.kdenlive
harness-kdenlive diff project.kdenlive edited.kdenlive
harness-kdenlive render-project edited.kdenlive output.mp4
harness-kdenlive list-effects edited.kdenlive producer1
harness-kdenlive apply-effect edited.kdenlive producer1 brightness --effect-id fx1 --properties-json "{\"gain\":\"0.5\"}"
harness-kdenlive list-transitions edited.kdenlive
harness-kdenlive bridge soak --iterations 100 --duration-seconds 5
harness-kdenlive bridge verify --iterations 25

All commands print one JSON object to stdout. All editing commands require a running bridge.

Python API

from harness_kdenlive import KdenliveProject, TransactionManager
from harness_kdenlive.api import TimelineAPI

project = KdenliveProject("project.kdenlive")
timeline = TimelineAPI(project)
txn = TransactionManager(project)

with txn.transaction("Add intro clip"):
    timeline.add_clip("producer1", "playlist0", position=0, in_point="0", out_point="49")

project.save("edited.kdenlive")

Docs

  • Human commands: docs/human/commands.md
  • LLM quickstart: docs/llm/quickstart.md
  • LLM command spec: docs/llm/command-spec.md
  • LLM bridge protocol: docs/llm/bridge-protocol.md
  • LLM response schema: docs/llm/response-schema.json
  • LLM error codes: docs/llm/error-codes.md

Publishing

python -m pip install -e ".[dev]"
python -m build
twine check dist/*

GitHub Actions workflow for trusted publishing is in .github/workflows/publish.yml.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

harnessgg_kdenlive-0.3.0.tar.gz (36.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

harnessgg_kdenlive-0.3.0-py3-none-any.whl (36.0 kB view details)

Uploaded Python 3

File details

Details for the file harnessgg_kdenlive-0.3.0.tar.gz.

File metadata

  • Download URL: harnessgg_kdenlive-0.3.0.tar.gz
  • Upload date:
  • Size: 36.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for harnessgg_kdenlive-0.3.0.tar.gz
Algorithm Hash digest
SHA256 85b7ea56209decb20f92c17267740942c504643e41f155e7c63d788a338b1e66
MD5 25b9ed7a4f1cdf5415e77d1236b6f409
BLAKE2b-256 497f37456c96ece2a854f7816cc611a08af69225f7232cdd1ca5608c64aaea3e

See more details on using hashes here.

Provenance

The following attestation bundles were made for harnessgg_kdenlive-0.3.0.tar.gz:

Publisher: publish.yaml on Harnessgg/Harness-kdenlive

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file harnessgg_kdenlive-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for harnessgg_kdenlive-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4659080de039b15702ace152d6a81d1a057fd3a5218c14ea095f68a7171ce698
MD5 3f9183e463d2ebdf4cf4101813800d09
BLAKE2b-256 9c962dfd3c6eed1fdead2d443d754a409c69ce2f175ce0be01a50f87dfd56c5a

See more details on using hashes here.

Provenance

The following attestation bundles were made for harnessgg_kdenlive-0.3.0-py3-none-any.whl:

Publisher: publish.yaml on Harnessgg/Harness-kdenlive

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page