Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[![Google Flow](https://img.shields.io/badge/Google_Flow-Imagen_4_&_Veo_3.1-4285F4?logo=google)](https://labs.google/fx/tools/flow)
[![MCP v2](https://img.shields.io/badge/MCP_v2-Supported-7057ff)](https://modelcontextprotocol.io)

**gflow** is a single-binary CLI and Model Context Protocol (MCP) server for generative media: image, video, audio, and chat.
**gflow-cli** is a single-binary CLI and Model Context Protocol (MCP) server for generative media: image, video, audio, and chat. Its executable/CLI command is `gflow`.

- **Image Generation:** Gemini Imagen 3 and Google Flow Imagen 4 (Pro and Lite models).
- **Video Generation:** Gemini Veo, MiniMax H3 (768P and 2K), and Google Flow Veo 3.1.
Expand Down Expand Up @@ -190,7 +190,7 @@ TIME TYPE ID PROMPT LOCAL PA

## Model Context Protocol (MCP)

**gflow** includes a native stdio MCP server for AI coding assistants and desktop agents:
**gflow-cli** includes a native stdio MCP server for AI coding assistants and desktop agents through its `gflow` executable/CLI command:

### Claude Desktop
Add to your `claude_desktop_config.json`:
Expand Down Expand Up @@ -283,7 +283,7 @@ Google Flow secures generative APIs with **reCAPTCHA Enterprise v3**.
Headless browsers and fresh automation profiles often score poorly, causing
Google to return `403 Forbidden`.

`gflow` uses a two-tier architecture:
The **gflow-cli** project's `gflow` executable/CLI command uses a two-tier architecture:
1. **Lightweight Extension Bridge**: Runs inside your everyday, logged-in
browser session on `labs.google/fx/tools/flow`.
2. **Authentic reCAPTCHA Execution**: When a generation command is issued,
Expand Down
96 changes: 96 additions & 0 deletions brand/BRAND.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
# gflow-cli Brand

Status: approved

This document defines the public identity for the gflow-cli project. The files
in this directory are the canonical source assets.

## Identity

- Formal product name: **gflow-cli**
- CLI command: **`gflow`**
- Mark name: **Supersonic Stream Ribbons**
- Primary tile: **Cockpit Obsidian**

Use `gflow-cli` when naming the project, repository, package, or brand. Use
`gflow` only for the executable and commands such as `gflow image`.

## Mark Construction

The mark uses a `0 0 100 100` view box and these fixed elements:

- Ring: circle at `50,38`, radius `16`, no fill, 7-unit stroke.
- Stream: `M66 38 L66 64 C66 76 54 82 40 82 C28 82 22 74 22 66`,
no fill, 7-unit stroke, round caps and joins.
- Velocity accent: `M50 22 C58 22 66 30 66 38`, no fill, 3-unit stroke,
round caps.
- Endpoint: circle at `66,38`, radius `4.5`.

Do not rotate, skew, crop, rearrange, or redraw these elements. Keep the ring
and stream as one color and retain the contrast between the main ribbon and
the velocity accent.

## Color

| Token | Value | Use |
| --- | --- | --- |
| Supersonic Cyan | `#00E5FF` | Primary ribbon on Cockpit Obsidian or another verified dark surface |
| Accessible Cyan Dark | `#007C91` | Primary ribbon on white and light surfaces |
| Cockpit Obsidian | `#080B10` | Primary tile and dark field |
| Signal White | `#FFFFFF` | Inverse wordmark, velocity accent, and endpoint |

Supersonic Cyan is not approved for text or fine detail on white. Use
Accessible Cyan Dark for the light-surface variant. On light surfaces, the
velocity accent and endpoint use Cockpit Obsidian.

## Variants

- `logos/mark.svg`, `logos/lockup.svg`, and `logos/wordmark.svg` are for light
surfaces.
- `logos/mark-inverse.svg`, `logos/lockup-inverse.svg`, and
`logos/wordmark-inverse.svg` are for Cockpit Obsidian or similarly dark
surfaces.
- `logos/mono-black.svg` and `logos/mono-white.svg` are one-color fallbacks for
processes that cannot reproduce the two-color mark.
- Files under `icons/` place the inverse mark on the approved Cockpit Obsidian
tile.

The wordmark is always lowercase and hyphenated: `gflow-cli`. It uses the
existing Public Sans display family at weight 800, with Arial and a generic
sans-serif as fallbacks.

## Spacing And Size

Keep clear space equal to at least 8% of the mark width on every side. Do not
place other type, rules, or graphics inside that area.

- Minimum standalone mark size: 24 CSS pixels.
- Minimum lockup width: 120 CSS pixels.
- Below 120 CSS pixels, use the standalone mark and an accessible text label
instead of compressing the lockup.
- Favicons are exempt from the standalone minimum and use the supplied tiled
artwork.

## Accessibility

- Choose the light or inverse asset for the surface; do not recolor it ad hoc.
- When the logo is the only content of a link, provide the accessible name
`gflow-cli` or `gflow-cli home`.
- When visible text already identifies the product, treat the adjacent mark as
decorative with an empty alternative.
- Do not put essential information only in the mark or its color.

## Product Copy

Keep public copy tied to implemented behavior and the current README. The
current provider names are Gemini, MiniMax, and Google Flow. Command examples
must use implemented `gflow` subcommands. Do not imply that gflow-cli is an
official product of, endorsed by, or affiliated with any provider.

## Canonical Assets And Projections

`brand/` is canonical. The copies in `docs/favicon.svg`, `docs/logo-mark.svg`,
`docs/og-default.svg`, and `docs/og-default.png` are deployment projections for
GitHub Pages. Update a canonical asset and its projection together. The PNG is
the social-metadata asset and is generated from `brand/og/og-default.svg` using
the pinned command documented in `README.md`.
26 changes: 26 additions & 0 deletions brand/LICENSES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Brand Asset Licensing

## Project-Created Assets

The SVG and PNG artwork, token files, documentation, and preview in `brand/`
were created for gflow-cli and are distributed under the repository's root MIT
License.

The MIT License grants copyright permissions for these files. It does not grant
permission to misrepresent the source of the project or imply endorsement by a
third party.

## Typography

No font files are included in this kit. The wordmark SVGs declare Public Sans
with Arial and a generic sans-serif fallback. Public Sans is available under
the SIL Open Font License 1.1 from its upstream distributor. The documentation
site already loads it independently; the brand assets do not bundle or fetch
it.

## Third-Party Names

Google, Gemini, Google Flow, MiniMax, and other third-party names remain the
property of their respective owners. Their appearance in factual provider copy
does not indicate sponsorship, endorsement, or affiliation. No third-party
logos or provider artwork are included in this kit.
60 changes: 60 additions & 0 deletions brand/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# gflow-cli Brand Kit

This directory contains the approved, dependency-free brand assets for
gflow-cli. Open `preview.html` in a browser to inspect the complete kit.

## Contents

| Path | Purpose |
| --- | --- |
| `BRAND.md` | Naming, construction, color, spacing, accessibility, and copy rules |
| `LICENSES.md` | Licensing and third-party attribution notes |
| `provenance.json` | Machine-readable identity source and asset inventory |
| `tokens.json` | Portable visual tokens and complete fixed mark geometry |
| `tokens.css` | CSS custom-property projection of visual styling tokens; complete geometry remains in JSON |
| `logos/` | Light, inverse, lockup, wordmark, and monochrome SVGs |
| `icons/` | Tiled favicon and app-icon SVGs |
| `og/og-default.svg` | Canonical editable 1200 by 630 social image source |
| `og/og-default.png` | Canonical 1200 by 630 raster social image |
| `preview.html` | Local visual inventory; no build step or network access required |

## Choosing An Asset

- Use `logos/lockup.svg` on white and light backgrounds.
- Use `logos/lockup-inverse.svg` on Cockpit Obsidian and dark backgrounds.
- Use a standalone mark only when the product name appears next to it or an
accessible name is supplied.
- Use the files in `icons/` without adding another background tile.
- Use monochrome artwork only when the output process requires one color.
- Use `og/og-default.png` for social metadata; regenerate it from the SVG source.

All SVGs are standalone and have no linked images or embedded credentials.
The kit introduces no runtime or package dependency.

## Documentation Projections

The GitHub Pages site consumes deployment copies so `docs/` remains a complete
publishable directory:

| Canonical file | Documentation projection |
| --- | --- |
| `icons/favicon.svg` | `../docs/favicon.svg` |
| `logos/mark.svg` | `../docs/logo-mark.svg` |
| `og/og-default.svg` | `../docs/og-default.svg` |
| `og/og-default.png` | `../docs/og-default.png` |

Keep each pair identical whenever the canonical source changes.

## Regenerating The Social PNG

From the repository root, use the pinned renderer and then copy the canonical
PNG to its documentation projection:

```powershell
npx --yes sharp-cli@5.2.0 -i brand/og/og-default.svg -o brand/og/og-default.png -f png -c 9
Copy-Item -LiteralPath brand/og/og-default.png -Destination docs/og-default.png
```

The output must remain exactly `1200 x 630`. After changing the source or
renderer version, render a fresh PNG and run the brand checks to verify its
geometry and source-to-projection parity.
8 changes: 8 additions & 0 deletions brand/icons/app-icon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions brand/icons/favicon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions brand/icons/icon-192.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions brand/icons/icon-512.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 9 additions & 0 deletions brand/logos/lockup-inverse.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 9 additions & 0 deletions brand/logos/lockup.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions brand/logos/mark-inverse.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions brand/logos/mark.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions brand/logos/mono-black.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions brand/logos/mono-white.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions brand/logos/wordmark-inverse.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions brand/logos/wordmark.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added brand/og/og-default.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
30 changes: 30 additions & 0 deletions brand/og/og-default.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading