Agent skill

Flovart

by avabbbb in avabbbb/Iris

Use Iris's visible Workflow through its stable Agent surface.

MITAuto-check passed

Install Flovart

skills CLI
$ npx skills add avabbbb/Iris --skill flovart -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install avabbbb/Iris flovart --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/avabbbb/Iris.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/flovart .claude/skills/flovart && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
flovart
GitHub stars
139
Token cost
~2.3k tokens
SKILL.md length
1,147 words
Files
20 (incl. scripts)
Skills in repo
4
Repo updated
First seen
Licence
MIT

At a glance

Use Iris's visible Workflow through its stable Agent surface.

  • Works in 6 steps: Use Resolve native MCP to read the… → Submit the fixed local fixture with one… → Poll the returned task ID with flovart… → …
  • An agent must prepare the workspace
  • SKILL.md covers Normal loop, Resolve Studio 21.1 —…, Cold start — no project open and Intent mapping, plus 2 more sections
  • Runs JavaScript scripts from its folder; calls npm and npx

What it does

Flovart is an agent skill from avabbbb/Iris. Use Iris's visible Workflow through its stable Agent surface. Use when an agent must prepare the workspace, inspect the current graph, read selection, apply document changes, or run a Workflow node.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 22 other files, including scripts (for example `commands/asset.md`, `commands/generate.md` and `commands/model.md`).

It works with Model Context Protocol. The repository describes itself as: Open-source agent-native visual production workspace where humans and coding agents edit the same live canvas — local-first, BYOK image/video models. The licence is MIT.

When your agent uses it

  • An agent must prepare the workspace
  • Inspect the current graph
  • Apply document changes
  • Run a Workflow node

Example prompts

  • “/flovart”

Requirements

  • Node.js

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Use Resolve native MCP to read the current project, timeline, and selected
  2. Submit the fixed local fixture with one unique idempotency key
  3. Poll the returned task ID with flovart task.get --task-id --json
  4. Resolve the completed file immediately before import
  5. Use a bounded Media Pool import operation exposed by the installed Resolve
  6. Re-read the Media Pool and Timeline through Resolve MCP. Confirm the item

What it can do on your machine

Read from SKILL.md and the folder at commit dca86ee. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 10 files in scripts/ (JavaScript, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • npm
    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm and npx, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Flovart loads about 2.3k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 1,147 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~52
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from avabbbb/Iris at commit dca86ee, republished under its MIT licence (© avabbbb). 1,147 words, ~2,267 tokens.

Download SKILL.mdSave it as .claude/skills/flovart/SKILL.md (or your agent's skills folder). This skill also uses 19 other files; get the full folder from GitHub.
name
flovart
description
Use Iris's visible Workflow through its stable Agent surface. Use when an agent must prepare the workspace, inspect the current graph, read selection, apply document changes, or run a Workflow node.

Iris

Iris is the visible Workflow authority. The Link layer prepares the local session automatically. Do not ask the user for connection details and do not recreate a connection flow in the conversation.

This Skill expects Node.js 22.19.0 or newer when the local CLI is run.

Normal loop

Start every new task with:

bash
flovart ensure --json
flovart workflow.inspect --agent-identity codex --json

When working directly from this source checkout, use the repository entrypoint if the packaged flovart command is not installed:

bash
npm run flovart:cli -- ensure --json
npm run flovart:cli -- workflow.inspect --agent-identity codex --json

Do not use npx flovart-cli as an automatic fallback; an unpublished source checkout can make npx query an unrelated registry package.

Use only the stable Workflow surface for normal work:

Use ensure as the bootstrap command. The five stable task operations are status, workflow.inspect, workflow.selection.get, workflow.apply, and workflow.node.run.

text
flovart ensure
flovart status
flovart workflow.inspect
flovart workflow.selection.get
flovart workflow.apply
flovart workflow.node.run

The same five operations are available through the optional local stdio MCP projection for MCP-capable hosts such as TeleAgent. The MCP names are flovart_status, flovart_workflow_inspect, flovart_workflow_selection, flovart_workflow_apply, and flovart_workflow_run. MCP is a transport projection, not a second Workflow runtime; use the CLI path for Codex, Claude Code, OpenCode, and WorkBuddy's CLI Connector unless that host has a separately certified MCP integration.

Before a change, read the real projectId, object IDs, and revision from workflow.inspect. Read workflow.selection.get when the request depends on the current selection. Group related graph edits into one workflow.apply. Pass the returned project and revision as preconditions, and use a stable mutationId and idempotencyKey for every write or run. After a write, inspect again. If a command fails, preserve its structured error code, inspect before retrying, and stop safely when the visible workspace is unavailable or the target/revision changed. Never choose another project or retry a mutation with a new identity.

Resolve Studio 21.1 — no-provider Media Pool tracer

Use this path only for the Resolve R0/R1 host-validation task. Resolve owns project, timeline, selection, and Media Pool state. Flovart CLI owns the local deterministic fixture task and its durable Artifact.

Before starting, verify the installed product is Resolve Studio 21.1 and that its native MCP is connected to the same local Resolve instance. Discover the tool names and current API through that MCP; do not guess from another Resolve version. If 21.1 or the native MCP is unavailable, stop and report the exact host gate instead of presenting a mock as Resolve evidence.

For the no-provider tracer:

  1. Use Resolve native MCP to read the current project, timeline, and selected clip. Keep their stable identities and the timeline state for this task; recheck them before a Resolve write. If the selected target changes, stop instead of retargeting.

  2. Submit the fixed local fixture with one unique idempotency key:

    bash
    flovart runtime.test.fixture-image --idempotency-key <unique-key> --json

    From this source checkout, use npm run flovart:cli -- before the command. If submission status is unknown, retry with the same key, never a new one.

  3. Poll the returned task ID with flovart task.get --task-id <taskId> --json until it is completed. Stop on failure or cancellation.

  4. Resolve the completed file immediately before import:

    bash
    flovart artifact.locate --task-id <taskId> --json

    The result is a local path plus the verified MIME type, byte size, and SHA-256. Use that path only for the immediate host import; do not write it into project metadata.

  5. Use a bounded Media Pool import operation exposed by the installed Resolve native MCP. Do not add the fixture to the Timeline, replace a clip, delete or overwrite media, or run unrestricted scripts. If the installed MCP has no safe bounded import path, stop and report that concrete gap.

  6. Re-read the Media Pool and Timeline through Resolve MCP. Confirm the item appears in the Media Pool and the Timeline state is unchanged.

runtime.test.fixture-image imports the repository's fixed public/favicon.png as a no-provider fixture. It verifies the local task-to-file handoff only; it does not use the selected clip as a visual reference and is not AI generation. Never describe it as a generated scene or as a completed real-host tracer until Resolve visibly accepts the file and the Timeline comparison passes.

Show full SKILL.md (502 more words)Show less

Cold start — no project open

workflow.inspect returns WORKSPACE_UNAVAILABLE when the browser is connected but no Workflow project is open. This is not a fatal stop: the task usually still wants a project. Create and activate one, then inspect again:

bash
npm run flovart:cli -- workflow.project.create --title "Product Video" --agent-identity codex --idempotency-key <key> --json
npm run flovart:cli -- workflow.project.use --project-id <project-id> --agent-identity codex --idempotency-key <key> --json
npm run flovart:cli -- workflow.inspect --agent-identity codex --json

workflow.project.list shows existing projects. Only stop for the user when the browser itself is offline — not when the workspace is simply empty.

Every write command must carry the same --agent-identity used for inspect plus a stable --idempotency-key. Passing identity only to inspect and omitting it on project.create/workflow.apply makes the write fail with AGENT_HOST_REQUIRED — the active Host writer must match the caller identity.

Intent mapping

  • “打开 Flovart” → ensure, then workflow.inspect.
  • “查看当前 Workflow” → workflow.inspect.
  • “当前选择” → workflow.selection.get.
  • Add, delete, move, resize, connect, disconnect, or edit → one workflow.apply.
  • Run a node → workflow.node.run after confirming the node from inspection.

For a sequence of nodes, the granular workflow.node.create-connected adapter is the reliable path — it fills the node defaults (including storageKey) that a bare workflow.apply add_node operation requires. Prefer it over a raw add_node when you only have a type/title/position:

bash
npm run flovart:cli -- workflow.node.create-connected --from-node-id <id> --type text --title "Shot 2" --x 420 --y 120 --agent-identity codex --idempotency-key <key> --json

The UI and Iris own Provider routing, credentials, cost confirmation, resource resolution, and artifacts. Do not call a Provider directly, store credentials, modify browser storage, use private routes, or create a second Workflow runtime. A missing reference or unsupported input must remain an explicit failure; never downgrade the requested media mode silently.

Resolve host boundary

For DaVinci Resolve, use Resolve Studio's own native MCP for host context and project operations; do not create or configure a second Resolve MCP server. The current flovart CLI Workflow operations do not materialize a Runtime artifact into a durable local file that Resolve can import. Do not infer a file path from a task/artifact ID, call private Runtime endpoints, or report a Media Pool import from the task result alone. Until an explicit artifact handoff path is available and real-host verified, report this boundary clearly.

Conversation rules

Talk to the user about the Workflow, not the machinery behind it.

  • Never echo raw projectId, object IDs, revision, mutationId, idempotencyKey, or JSON payloads back to the user. Say "the current project" or use the node's title instead.
  • Never explain internal mechanics — Host writer, lease, bridge, polling, session recovery, or the MCP transport. Describe the visible result ("the node is running"), not the mechanism.
  • Pick reasonable defaults and keep moving: choose a sensible title, position, and node type instead of asking. Ask the user only when the request is genuinely ambiguous, spends credits, or destroys existing work.
  • On failure, run workflow.inspect before retrying so the retry uses fresh IDs and revision. Attempt at most one automatic recovery for the same failure; if it fails again, report the error in user terms and stop.
  • On timeout or lost contact, rejoin the same operation with the same idempotencyKey/mutationId. Never resubmit a duplicate mutation under a new key.
  • Report results in user-facing terms only: what was added or changed on the canvas, what is running, what finished. Surface a structured error code only when the user must act on it.

© avabbbb, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 19 other files (scripts) in skills/flovart of avabbbb/Iris.

  • SKILL.md
  • commands/asset.md
  • commands/generate.md
  • commands/model.md
  • commands/provider.md
  • commands/status.md
  • commands/workflow.md
  • model-schema/schema.md
  • scripts/add-provider.js
  • scripts/batch-generate.js
  • scripts/canvas-query.js
  • scripts/export-canvas-data.js
  • scripts/export-to-ffmpeg.js
  • scripts/flovart-cli.mjs
  • scripts/flovart-client.js
  • scripts/generate-image.js
  • scripts/import-from-libtv.js
  • scripts/import-from-runninghub.js
  • … and 2 more

Open the folder on GitHubat commit dca86ee

Compare with similar skills

Flovart next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Flovart compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Flovart this skillavabbbb/Iris139—~2.3kAutomated safety check: PassMIT
MCP Server Builderanthropics/skills180k63 repos~2.3kAutomated safety check: PassApache-2.0
MCP Server BuildershareAI-lab/learn-claude-code78k5 repos~1.2kAutomated safety check: PassMIT
MCP Integration for Pluginsanthropics/claude-plugins-official38k11 repos~3.1kAutomated safety check: PassApache-2.0
Figma use_figma Plugin API Ruleswarpdotdev/warp65k4 repos~4.4kAutomated safety check: PassAGPL-3.0
Stitch to Remotion Walkthrough Videosgoogle-labs-code/stitch-skills8.4k6 repos~3.2kAutomated safety check: NotesApache-2.0

Similar skills

  • MCP Server Builder

    anthropics/skills

    Official

    Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.

    180k GitHub starsUsed in 63 repos~2.3k tokens
    Agent WorkflowsAuto-check passed
  • MCP Server Builder

    shareAI-lab/learn-claude-code

    Walks through building MCP servers in Python or TypeScript that expose tools, resources and prompts to Claude, with templates, registration and testing.

    78k GitHub starsUsed in 5 repos~1.2k tokens
    Agent WorkflowsAuto-check passed
  • MCP Integration for Plugins

    anthropics/claude-plugins-official

    Official

    Explains how to bundle Model Context Protocol servers in a Claude Code plugin, covering config files, stdio, SSE, HTTP and WebSocket server types, and authentication.

    38k GitHub starsUsed in 11 repos~3.1k tokens
    Agent WorkflowsAuto-check passed
  • Required groundwork before any use_figma call: the rules and reference files for running JavaScript in a Figma file through the Plugin API without common failures.

    65k GitHub starsUsed in 4 repos~4.4k tokens
    Frontend & DesignAuto-check passed
  • Stitch to Remotion Walkthrough Videos

    google-labs-code/stitch-skills

    Official

    Builds walkthrough videos from Stitch design projects using Remotion, with transitions, zoom effects and text overlays on each screen.

    8.4k GitHub starsUsed in 6 repos~3.2k tokens
    Media & CreativeAuto-check: notes
  • MCP Development

    coollabsio/coolify

    A skill your agent uses for Laravel MCP development. An agent skill from coollabsio/coolify.

    63k GitHub starsUsed in 1 repo~949 tokens
    Frontend & DesignAuto-check passed

More from avabbbb/Iris

  • Vox Director

    avabbbb/Iris

    Compile a topic, brief, article, or research artifact into a provider-neutral Flovart ProductionSpec for a VOX-inspired editorial paper-collage explainer.

    139 GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Open Flovart

    avabbbb/Iris

    Prepare Flovart for a user's Workflow task. An agent skill from avabbbb/Iris.

    139 GitHub stars~456 tokensUpdated today
    Auto-check passed
  • Flovart

    avabbbb/Iris

    在 WorkBuddy 中用自然语言操作用户看得见的 Iris Workflow,并把真实制作结果交给 Iris 处理。

    139 GitHub stars~316 tokensUpdated today
    Auto-check passed

Questions about Flovart

What does Flovart do?

Use Iris's visible Workflow through its stable Agent surface. Flovart is an agent skill from avabbbb/Iris. Use Iris's visible Workflow through its stable Agent surface.

When should I use Flovart?

Flovart fits situations like: an agent must prepare the workspace; inspect the current graph; apply document changes; run a Workflow node.

How do I install Flovart in Claude Code?

Run `npx skills add avabbbb/Iris --skill flovart -a claude-code`. Or copy the skill folder (skills/flovart in avabbbb/Iris) into .claude/skills/flovart in your project. Claude Code loads it when a task matches its description.

How do I install Flovart in Codex?

Run `npx skills add avabbbb/Iris --skill flovart -a codex`. Or copy the skill folder (skills/flovart in avabbbb/Iris) into .agents/skills/flovart in your project. Codex loads it when a task matches its description.

Can I use Flovart in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add avabbbb/Iris --skill flovart -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/flovart, .gemini/skills/flovart, .github/skills/flovart and .opencode/skills/flovart in your project.

What does Flovart need to run?

Going by SKILL.md and its folder, Flovart needs JavaScript for the scripts in its folder and the command-line tools its instructions call (npm and npx). Our summary lists: Node.js.

Does Flovart access the network?

SKILL.md contains no URLs. Its commands use npm and npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Flovart safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Flovart use?

Flovart is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Flovart use?

About 2.3k tokens (SKILL.md is roughly 9.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Flovart?

Skills that share tags, products or a category with Flovart: MCP Server Builder (anthropics/skills, 180k stars), MCP Server Builder (shareAI-lab/learn-claude-code, 78k stars), MCP Integration for Plugins (anthropics/claude-plugins-official, 38k stars) and Figma use_figma Plugin API Rules (warpdotdev/warp, 65k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Flovart?

avabbbb (a GitHub user) maintains it in avabbbb/Iris, which has 139 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 9, 2026.

Source: avabbbb/Iris on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.