mahbot 0.9.0

An autonomous agentic engineering system that manages software development through role separation, subagents, and deterministic diagnostics.
1
2
3
4
5
6
7
8
9
10
Edit an existing video clip. Two modes:

1. **Reference edit** — pass `video_url` (a public HTTPS URL, or a local path from the workspace `uploads/` received-attachments dir — shown as "[Saved video: /path]" in the chat — or from the workspace `generated/` dir — shown as "[VIDEO:path]", the output of a previous video_gen/video_edit) plus a text `instruction` (max 5000 chars). Optionally add up to 9 reference images via `images` (local `uploads/`/`generated/` paths or public HTTPS URLs) to guide style/subject/identity.
2. **Image-to-video** — pass `first_frame` and/or `last_frame` (local `uploads/`/`generated/` paths or public HTTPS URLs) to anchor the exact first/last frame. Frame anchors are mutually exclusive with ALL reference inputs: a request combining them with `video_url` or `images` is rejected.

For a style change, pair the source with a style-reference image (generate one via `image_gen` if none exists) and give each reference an explicit role in the instruction; name the target style concretely; keep composition, camera, movement and timing unchanged and change ONE visual category per call, in order: background → wardrobe → lighting → grade. Full restyle while preserving the plot is at the edge of every model: iterate single-category passes and verify each pass before continuing.

Local paths are accepted ONLY from `uploads/` or `generated/`; any other is rejected. Image inputs must be JPG/JPEG/PNG/WEBP/HEIC/HEIF and at most 30 MB; source clips are limited to 50 MB, and local MP4/MOV clips whose duration falls outside the active model's verified input range are rejected before upload. Per-model parameter support is listed in the active model's capability block when present; otherwise keep parameters conservative and model-agnostic.

Each invocation bills a paid job and can take up to 1 hour (provider queue stalls are common — do not abandon a pending job). Never retry a timed-out edit — that bills a second job; report the timeout instead. Returns the path to the edited video (the result also includes a "Video content:" description) — use [VIDEO:path] in your reply to send it. Never attempt more than 1 generation before sending the result to the user - avoid long waiting and excessive billing.