Harmonia contains bounded adapters for generated images, four-second Veo b-roll, and thirty-second Lyria audio. These are optional downstream media effects, not automatic agent tools.
How Harmonia uses it
Deterministic code constructs a typed media proposal from persisted strategy and production context. The operator must approve the exact action. Budget is reserved before provider dispatch. Veo uses a resumable long-running operation whose provider operation name is persisted before polling; Lyria uses the Vertex interactions endpoint; image generation uses the configured Google GenAI model path.
Generated bytes are validated, stored as internal artifacts, receipted, and independently checked by digest before use.
Security and authority
Agents may propose media intent but cannot invoke providers, enable paid media, change budgets, or publish outputs. Person generation is disabled for Veo. Global Lyria use requires an explicit regional-policy exception.
Failure behavior
Policy filtering, malformed payloads, pending operations, missing bytes, provider errors, and uncertain dispatch remain explicit. Resumable operation IDs prevent unsafe restarts.
Evidence status
Provider adapters, schemas, budgets, and resumability have automated coverage. Authenticated Veo, Lyria, or image-generation claims require captured provider operations and usage records.
Relevant files
agent/harmonia_agent/generative_media.py
agent/harmonia_agent/content.py
agent/harmonia_agent/stages.py
agent/tests/test_generative_media.py
Last modified on August 28, 2026