A tool to declaratively generate multimedia assets using Kubernetes-like YAML files.
Project description
Genie-CTL (geniectl)
PyPI: https://pypi.org/project/geniectl/ Github:
Genie-CTL is a command-line tool that uses Kubernetes-like YAML manifests to declaratively define, generate, and manage complex multimedia assets. It orchestrates calls to various generative APIs, handles dependencies between assets, and ensures that generation is idempotent.
Vision
The primary goal is to provide a reproducible and version-controllable way to create creative assets like storyboards, videos with soundtracks, illustrated articles, and more.
Getting Started
See PLAN.md for the development roadmap.
To install dependencies:
just install
Usage
Some examples:
genectl apply -f etc/sample_story.yaml
$ just plan # Executes a DRY RUN execution
$ just plan
uv run geniectl apply -f /Users/ricc/git/vibecoding/geniectl/etc/story-generation.yaml --plan
Applying from path: /Users/ricc/git/vibecoding/geniectl/etc/story-generation.yaml
--- Starting Engine: Building Dependency Graph ---
--- Saved dependency graph to out/dependencies.dot ---
--- Generated dependency graph PNG: out/dependencies.png ---
--- Execution Plan ---
๐ข โ TextGeneration/bedtime-story-text โ ๐พ bedtime-story-en.md (Ready to go)
๐ก โ TextGeneration/bedtime-story-text-it -> depends on [TextGeneration/bedtime-story-text] โ ๐พ bedtime-story-it.md (Unsatisfied dependency: TextGeneration/bedtime-story-text (output not found))
๐ก ๐ ImageGeneration/story-illustration (x4) -> depends on [TextGeneration/bedtime-story-text] โ ๐พ story-illustration_{0..3}.png (Unsatisfied dependency: TextGeneration/bedtime-story-text (output not found))
๐ก ๐ AudioGeneration/bedtime-story-audio-it -> depends on [TextGeneration/bedtime-story-text-it] โ ๐พ bedtime-story-it.wav (Unsatisfied dependency: TextGeneration/bedtime-story-text-it (output not found))
----------------------
Project Structure
geniectl/
โโโโ .gitignore
โโโโ AI_REASONING.md
โโโโ GEMINI.md
โโโโ justfile
โโโโ PLAN.md
โโโโ pyproject.toml
โโโโ README.md
โโโโ uv.lock
โโโโ etc/
โ โโโโ sample_story.yaml
โโโโ src/
โ โโโโ geniectl/
โ โโโโ __init__.py
โ โโโโ cli.py
โ โโโโ engine.py
โ โโโโ parser.py
โ โโโโ kinds/
โ โโโโ base.py
โ โโโโ image.py
โ โโโโ text.py
โ โโโโ video.py
โโโโ tests/
โโโโ test_parser.py
โโโโ test_engine.py
Library: https://pypi.org/project/geniectl/
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file geniectl-0.8.0.tar.gz.
File metadata
- Download URL: geniectl-0.8.0.tar.gz
- Upload date:
- Size: 16.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fec1fa2f1f1eb1305b1d34a8b4b3d5e6b13b631cda63a6892605dca9c3c10940
|
|
| MD5 |
945932996dc8722690f9947686ebd282
|
|
| BLAKE2b-256 |
0214289fa502db85e5a3588cac0d3824e2559d652d5eee951adf89943fb87b3a
|
File details
Details for the file geniectl-0.8.0-py3-none-any.whl.
File metadata
- Download URL: geniectl-0.8.0-py3-none-any.whl
- Upload date:
- Size: 22.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7343ddffe161927f4a1a1d28072dd692a99c295934d1b654d26396db13fead6
|
|
| MD5 |
dfe30918a44e8208985e3976aa624469
|
|
| BLAKE2b-256 |
29722af664791027c66edf925f5fe54ea706cff19922df32092bcdc79de135ca
|