# Project agent instructions

## Hubfluencer (video generation)

This environment can generate finished, post-ready videos with **Hubfluencer** — prompt in, MP4 out (AI footage, voice-over, music, captions).

- **How to do it:** use the `hubfluencer-create` skill. It has the full flow — including the one-shot `make_video`/autopilot path **and** the granular step-by-step editor path (`create_editor_draft` → scenario → per-scene prompts → narration/voice/music → render) plus the free daily AI-assist quota (429 vs 402 signals). Load it (or run `/skill:hubfluencer-create`) whenever the user asks to make an **ad**, a **short**, or a **social clip**.
- **Tools:** reached via the `@hubfluencer/mcp` server (tools like `make_video`, `create_short`, `wait_for_completion`, `download_result`, `get_credits`). If MCP is not wired up, the same thing works over the REST API with `bash` + `curl` (base `https://hubfluencer.com`, OpenAPI at `/api/openapi`).
- **Auth:** the user creates an access token in the Hubfluencer app (Settings -> Access tokens, "Generate videos" scope) and exposes it as `HUBFLUENCER_API_TOKEN`, or connects via `npx -y @hubfluencer/mcp login`. **Never invent a token. Never echo a token in output.**
- **Credits:** creating a draft is 0 credits; rendering a short is 15 credits; multi-scene editor ads cost more. Check the balance with `get_credits` before spending.
- **Defaults:** prefer the one-shot `make_video`. Generation takes a few minutes — that is normal. On `terminal: false`, keep calling `wait_for_completion`.
- **Brand it, don't ship bare:** for a short, set `headline` (on-screen title) + `subheadline` and a `music_vibe`/`theme` on `make_video`/`create_short`; optionally attach a product image (`set_short_product`) or end-card poster (`set_short_poster`) via the granular path. Shorts have no logo overlay (editor-only: `set_logo`/`set_product`/`set_closing_image`).
- **Boundaries:** do not auto-publish to social platforms. Return the finished MP4 plus a ready-to-paste caption so the user posts it themselves.
