重要前提
安装AI Skills的关键前提是:必须科学上网,且开启TUN模式,这一点至关重要,直接决定安装能否顺利完成,在此郑重提醒三遍:科学上网,科学上网,科学上网。查看完整安装教程 →
npx skills add https://github.com/bria-ai/bria-skill --skill vgl将每个视觉属性定义为结构化 JSON,而非寄望于自然语言能准确传达。VGL(视觉生成语言)为您提供对 Bria FIBO 模型的对象、光照、相机设置、构图和风格的明确、确定性控制。
相关技能:使用 bria-ai 通过 Bria API 执行这些 VGL 提示。VGL 定义了结构化控制格式;bria-ai 负责处理生成、编辑和背景移除。
VGL 用确定性的 JSON 取代模糊的自然语言提示,明确声明每个视觉属性:对象、光照、相机设置、构图和风格。这确保了可重复、可控的图像生成。
| 模式 | 输入 | 输出 | 用例 |
|---|---|---|---|
| 生成 | 文本提示 | VGL JSON | 根据描述创建新图像 |
| 编辑 | 图像 + 指令 | VGL JSON | 修改参考图像 |
| 带遮罩编辑 | 带遮罩图像 + 指令 | VGL JSON | 填充灰色遮罩区域 |
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
| 仅图像 |
| VGL JSON |
| 描述现有图像 |
| 优化 | 现有 JSON + 编辑指令 | 更新后的 VGL JSON | 修改现有提示 |
输出一个包含以下必需键的单一有效 JSON 对象:
short_description (字符串)图像内容的简洁摘要,最多 200 词。包含关键主体、动作、场景和氛围。
objects (数组,最多 5 项)每个对象需要:
{
"description": "详细描述,最多 100 词",
"location": "center | top-left | bottom-right foreground | 等。",
"relative_size": "small | medium | large within frame",
"shape_and_color": "基本形状和主色调",
"texture": "smooth | rough | metallic | furry | fabric | 等。",
"appearance_details": "显著的视觉细节",
"relationship": "与其他对象的关系",
"orientation": "upright | tilted 45 degrees | facing left | horizontal | 等。"
}
人物主体 需添加:
{
"pose": "身体位置描述",
"expression": "winking | joyful | serious | surprised | calm",
"clothing": "着装描述",
"action": "人物正在进行的动作",
"gender": "性别描述",
"skin_tone_and_texture": "皮肤外观"
}
对象群组 需添加:
{
"number_of_objects": 3
}
尺寸指引:如果人物是主要主体,使用 "medium-to-large" 或 "large within frame"。
background_setting (字符串)整体环境、场景以及不在 objects 中的背景元素。
lighting (对象){
"conditions": "bright daylight | dim indoor | studio lighting | golden hour | blue hour | overcast",
"direction": "front-lit | backlit | side-lit from left | top-down",
"shadows": "long, soft shadows | sharp, defined shadows | minimal shadows"
}
aesthetics (对象){
"composition": "rule of thirds | symmetrical | centered | leading lines | medium shot | close-up",
"color_scheme": "monochromatic blue | warm complementary | high contrast | pastel",
"mood_atmosphere": "serene | energetic | mysterious | joyful | dramatic | peaceful"
}
对于人物作为主要主体的情况,在构图中指定镜头类型:"medium shot"、"close-up"、"portrait composition"。
photographic_characteristics (对象){
"depth_of_field": "shallow | deep | bokeh background",
"focus": "sharp focus on subject | soft focus | motion blur",
"camera_angle": "eye-level | low angle | high angle | dutch angle | bird's-eye",
"lens_focal_length": "wide-angle | 50mm standard | 85mm portrait | telephoto | macro"
}
对于人物:优先使用 "standard lens (35mm-50mm)" 或 "portrait lens (50mm-85mm)"。除非特别指定,否则避免使用广角镜头。
style_medium (字符串)"photograph" | "oil painting" | "watercolor" | "3D render" | "digital illustration" | "pencil sketch"
除非明确要求其他风格,否则默认为 "photograph"。
artistic_style (字符串)如果不是照片,用最多 3 个词描述特征:"impressionistic, vibrant, textured"
对于照片,使用 "realistic" 或类似描述。
context (字符串)描述图像类型/用途:
"High-fashion editorial photograph for magazine spread""Concept art for fantasy video game""Commercial product photography for e-commerce"text_render (数组)默认:空数组 []
仅当用户明确提供确切的文本内容时才填充:
{
"text": "来自用户的确切文本(切勿使用占位符)",
"location": "center | top-left | bottom",
"size": "small | medium | large",
"color": "white | red | blue",
"font": "serif typeface | sans-serif | handwritten | bold impact",
"appearance_details": "Metallic finish | 3D effect | 等。"
}
例外:与对象密不可分的通用文本(例如,停止标志上的 "STOP")。
edit_instruction (字符串)描述编辑/生成操作的单个祈使句命令。
以动作动词开头,描述更改,切勿提及"原始图像":
| 类别 | 重写后的指令 |
|---|---|
| 风格变更 | Turn the image into the cartoon style. |
| 对象属性 | Change the dog's color to black and white. |
| 添加元素 | Add a wide-brimmed felt hat to the subject. |
| 移除对象 | Remove the book from the subject's hands. |
| 替换对象 | Change the rose to a bright yellow sunflower. |
| 光照 | Change the lighting from dark and moody to bright and vibrant. |
| 构图 | Change the perspective to a wider shot. |
| 文本变更 | Change the text "Happy Anniversary" to "Hello". |
| 质量 | Refine the image to obtain increased clarity and sharpness. |
将"遮罩区域"或"遮罩区域"作为目标进行引用:
| 意图 | 重写后的指令 |
|---|---|
| 对象生成 | Generate a white rose with a blue center in the masked region. |
| 扩展 | Extend the image into the masked region to create a scene featuring... |
| 背景填充 | Create the following background in the masked region: A vast ocean extending to horizon. |
| 氛围填充 | Fill the background masked area with a clear, bright blue sky with wispy clouds. |
| 主体修复 | Restore the area in the mask with a young woman. |
| 环境填充 | Create inside the masked area: a greenhouse with rows of plants under glass ceiling. |
除非指令明确要求更改,否则保留所有视觉属性:
仅更改编辑指令严格要求的方面。
{
"short_description": "A professional businesswoman in a navy blazer stands confidently in a modern glass office, holding a tablet. Natural daylight streams through floor-to-ceiling windows, creating a warm, productive atmosphere.",
"objects": [
{
"description": "A confident businesswoman in her 30s with shoulder-length dark hair, wearing a tailored navy blazer over a white blouse. She holds a tablet in her left hand while gesturing naturally with her right.",
"location": "center-right",
"relative_size": "large within frame",
"shape_and_color": "Human figure, navy and white clothing",
"texture": "smooth fabric, professional attire",
"appearance_details": "Minimal jewelry, well-groomed professional appearance",
"relationship": "Main subject, interacting with tablet",
"orientation": "facing slightly left, three-quarter view",
"pose": "Standing upright, relaxed professional stance",
"expression": "confident, approachable smile",
"clothing": "Tailored navy blazer, white silk blouse, dark trousers",
"action": "Presenting or reviewing information on tablet",
"gender": "female",
"skin_tone_and_texture": "Medium warm skin tone, healthy smooth complexion"
},
{
"description": "A modern tablet device with a bright display showing charts and graphs",
"location": "center, held by subject",
"relative_size": "small",
"shape_and_color": "Rectangular, silver frame with illuminated screen",
"texture": "smooth glass and metal",
"appearance_details": "Thin profile, business application visible on screen",
"relationship": "Held by businesswoman, focus of her attention",
"orientation": "vertical, screen facing viewer at slight angle",
"pose": null,
"expression": null,
"clothing": null,
"action": null,
"gender": null,
"skin_tone_and_texture": null,
"number_of_objects": null
}
],
"background_setting": "Modern corporate office interior with floor-to-ceiling windows overlooking a city skyline. Minimalist furniture in neutral tones, potted plants adding touches of green.",
"lighting": {
"conditions": "bright natural daylight",
"direction": "side-lit from left through windows",
"shadows": "soft, natural shadows"
},
"aesthetics": {
"composition": "rule of thirds, medium shot",
"color_scheme": "professional blues and neutral whites with warm accents",
"mood_atmosphere": "confident, professional, welcoming"
},
"photographic_characteristics": {
"depth_of_field": "shallow, background slightly soft",
"focus": "sharp focus on subject's face and upper body",
"camera_angle": "eye-level",
"lens_focal_length": "portrait lens (85mm)"
},
"style_medium": "photograph",
"artistic_style": "realistic",
"context": "Corporate portrait photography for company website or LinkedIn professional profile.",
"text_render": [],
"edit_instruction": "Generate a professional businesswoman in a modern office environment holding a tablet."
}
text_render 为空edit_instruction 格式nullcurl -X POST "https://engine.prod.bria-api.com/v2/image/generate" \
-H "api_token: $BRIA_API_KEY" \
-H "Content-Type: application/json" \
-H "User-Agent: BriaSkills/1.2.3" \
-d '{
"structured_prompt": "{\"short_description\": \"...\", ...}",
"prompt": "Generate this scene",
"aspect_ratio": "16:9"
}'
每周安装量
28
代码库
GitHub 星标数
46
首次出现
Feb 8, 2026
安全审计
安装于
codex27
opencode26
github-copilot26
kimi-cli26
gemini-cli26
amp26
Define every visual attribute as structured JSON instead of hoping natural language gets it right. VGL (Visual Generation Language) gives you explicit, deterministic control over objects, lighting, camera settings, composition, and style for Bria's FIBO models.
Related Skill : Use bria-ai to execute these VGL prompts via the Bria API. VGL defines the structured control format; bria-ai handles generation, editing, and background removal.
VGL replaces ambiguous natural language prompts with deterministic JSON that explicitly declares every visual attribute: objects, lighting, camera settings, composition, and style. This ensures reproducible, controllable image generation.
| Mode | Input | Output | Use Case |
|---|---|---|---|
| Generate | Text prompt | VGL JSON | Create new image from description |
| Edit | Image + instruction | VGL JSON | Modify reference image |
| Edit_with_Mask | Masked image + instruction | VGL JSON | Fill grey masked regions |
| Caption | Image only | VGL JSON | Describe existing image |
| Refine | Existing JSON + edit | Updated VGL JSON | Modify existing prompt |
Output a single valid JSON object with these required keys:
short_description (String)Concise summary of image content, max 200 words. Include key subjects, actions, setting, and mood.
objects (Array, max 5 items)Each object requires:
{
"description": "Detailed description, max 100 words",
"location": "center | top-left | bottom-right foreground | etc.",
"relative_size": "small | medium | large within frame",
"shape_and_color": "Basic shape and dominant color",
"texture": "smooth | rough | metallic | furry | fabric | etc.",
"appearance_details": "Notable visual details",
"relationship": "Relationship to other objects",
"orientation": "upright | tilted 45 degrees | facing left | horizontal | etc."
}
Human subjects add:
{
"pose": "Body position description",
"expression": "winking | joyful | serious | surprised | calm",
"clothing": "Attire description",
"action": "What the person is doing",
"gender": "Gender description",
"skin_tone_and_texture": "Skin appearance"
}
Object clusters add:
{
"number_of_objects": 3
}
Size guidance : If a person is the main subject, use "medium-to-large" or "large within frame".
background_setting (String)Overall environment, setting, and background elements not in objects.
lighting (Object){
"conditions": "bright daylight | dim indoor | studio lighting | golden hour | blue hour | overcast",
"direction": "front-lit | backlit | side-lit from left | top-down",
"shadows": "long, soft shadows | sharp, defined shadows | minimal shadows"
}
aesthetics (Object){
"composition": "rule of thirds | symmetrical | centered | leading lines | medium shot | close-up",
"color_scheme": "monochromatic blue | warm complementary | high contrast | pastel",
"mood_atmosphere": "serene | energetic | mysterious | joyful | dramatic | peaceful"
}
For people as main subject, specify shot type in composition: "medium shot", "close-up", "portrait composition".
photographic_characteristics (Object){
"depth_of_field": "shallow | deep | bokeh background",
"focus": "sharp focus on subject | soft focus | motion blur",
"camera_angle": "eye-level | low angle | high angle | dutch angle | bird's-eye",
"lens_focal_length": "wide-angle | 50mm standard | 85mm portrait | telephoto | macro"
}
For people : Prefer "standard lens (35mm-50mm)" or "portrait lens (50mm-85mm)". Avoid wide-angle unless specified.
style_medium (String)"photograph" | "oil painting" | "watercolor" | "3D render" | "digital illustration" | "pencil sketch"
Default to "photograph" unless explicitly requested otherwise.
artistic_style (String)If not photograph, describe characteristics in max 3 words: "impressionistic, vibrant, textured"
For photographs, use "realistic" or similar.
context (String)Describe the image type/purpose:
"High-fashion editorial photograph for magazine spread""Concept art for fantasy video game""Commercial product photography for e-commerce"text_render (Array)Default: empty array[]
Only populate if user explicitly provides exact text content:
{
"text": "Exact text from user (never placeholder)",
"location": "center | top-left | bottom",
"size": "small | medium | large",
"color": "white | red | blue",
"font": "serif typeface | sans-serif | handwritten | bold impact",
"appearance_details": "Metallic finish | 3D effect | etc."
}
Exception: Universal text integral to objects (e.g., "STOP" on stop sign).
edit_instruction (String)Single imperative command describing the edit/generation.
Start with action verb, describe changes, never reference "original image":
| Category | Rewritten Instruction |
|---|---|
| Style change | Turn the image into the cartoon style. |
| Object attribute | Change the dog's color to black and white. |
| Add element | Add a wide-brimmed felt hat to the subject. |
| Remove object | Remove the book from the subject's hands. |
| Replace object | Change the rose to a bright yellow sunflower. |
| Lighting |
Reference "masked regions" or "masked area" as target:
| Intent | Rewritten Instruction |
|---|---|
| Object generation | Generate a white rose with a blue center in the masked region. |
| Extension | Extend the image into the masked region to create a scene featuring... |
| Background fill | Create the following background in the masked region: A vast ocean extending to horizon. |
| Atmospheric fill | Fill the background masked area with a clear, bright blue sky with wispy clouds. |
| Subject restoration | Restore the area in the mask with a young woman. |
Preserve ALL visual properties unless explicitly changed by instruction:
Only change what the edit strictly requires.
{
"short_description": "A professional businesswoman in a navy blazer stands confidently in a modern glass office, holding a tablet. Natural daylight streams through floor-to-ceiling windows, creating a warm, productive atmosphere.",
"objects": [
{
"description": "A confident businesswoman in her 30s with shoulder-length dark hair, wearing a tailored navy blazer over a white blouse. She holds a tablet in her left hand while gesturing naturally with her right.",
"location": "center-right",
"relative_size": "large within frame",
"shape_and_color": "Human figure, navy and white clothing",
"texture": "smooth fabric, professional attire",
"appearance_details": "Minimal jewelry, well-groomed professional appearance",
"relationship": "Main subject, interacting with tablet",
"orientation": "facing slightly left, three-quarter view",
"pose": "Standing upright, relaxed professional stance",
"expression": "confident, approachable smile",
"clothing": "Tailored navy blazer, white silk blouse, dark trousers",
"action": "Presenting or reviewing information on tablet",
"gender": "female",
"skin_tone_and_texture": "Medium warm skin tone, healthy smooth complexion"
},
{
"description": "A modern tablet device with a bright display showing charts and graphs",
"location": "center, held by subject",
"relative_size": "small",
"shape_and_color": "Rectangular, silver frame with illuminated screen",
"texture": "smooth glass and metal",
"appearance_details": "Thin profile, business application visible on screen",
"relationship": "Held by businesswoman, focus of her attention",
"orientation": "vertical, screen facing viewer at slight angle",
"pose": null,
"expression": null,
"clothing": null,
"action": null,
"gender": null,
"skin_tone_and_texture": null,
"number_of_objects": null
}
],
"background_setting": "Modern corporate office interior with floor-to-ceiling windows overlooking a city skyline. Minimalist furniture in neutral tones, potted plants adding touches of green.",
"lighting": {
"conditions": "bright natural daylight",
"direction": "side-lit from left through windows",
"shadows": "soft, natural shadows"
},
"aesthetics": {
"composition": "rule of thirds, medium shot",
"color_scheme": "professional blues and neutral whites with warm accents",
"mood_atmosphere": "confident, professional, welcoming"
},
"photographic_characteristics": {
"depth_of_field": "shallow, background slightly soft",
"focus": "sharp focus on subject's face and upper body",
"camera_angle": "eye-level",
"lens_focal_length": "portrait lens (85mm)"
},
"style_medium": "photograph",
"artistic_style": "realistic",
"context": "Corporate portrait photography for company website or LinkedIn professional profile.",
"text_render": [],
"edit_instruction": "Generate a professional businesswoman in a modern office environment holding a tablet."
}
text_render empty unless user provides exact textedit_instruction format for masked vs standard editsnull for non-human objectscurl -X POST "https://engine.prod.bria-api.com/v2/image/generate" \
-H "api_token: $BRIA_API_KEY" \
-H "Content-Type: application/json" \
-H "User-Agent: BriaSkills/1.2.3" \
-d '{
"structured_prompt": "{\"short_description\": \"...\", ...}",
"prompt": "Generate this scene",
"aspect_ratio": "16:9"
}'
Weekly Installs
28
Repository
GitHub Stars
46
First Seen
Feb 8, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
codex27
opencode26
github-copilot26
kimi-cli26
gemini-cli26
amp26
AI界面设计评审工具 - 全面评估UI/UX设计质量、检测AI生成痕迹与优化用户体验
58,500 周安装
Change the lighting from dark and moody to bright and vibrant.| Composition | Change the perspective to a wider shot. |
| Text change | Change the text "Happy Anniversary" to "Hello". |
| Quality | Refine the image to obtain increased clarity and sharpness. |
| Environment infill | Create inside the masked area: a greenhouse with rows of plants under glass ceiling. |