GCGemini CLI+Instagram

Post to Instagram from Gemini CLI

Gemini CLI can post Reels and images on Instagram through ClipSpeed. Add the ClipSpeed server with one command, sign in, and then ask Gemini CLI to post Reels and images, pick the time, and apply Instagram's settings, without leaving the terminal.

Posting todayStandard MCP route · not yet verified by us

Keep a human in the loop: Gemini CLI shows the plan and asks before anything is public. Posting today: YouTube, TikTok, Instagram, X (Twitter) and LinkedIn.

Gemini CLI
Post the top clip to Instagram as a Reel tomorrow at 12:30 with five hashtags. Preview first.
Preview — nothing booked yet. Would schedule on: • Instagram — clip_id · hashtags: 5 Times are in America/New_York. Book it?
via ClipSpeed · Instagram

Also try

How to post Instagram from Gemini CLI

One command registers the server in Gemini CLI's settings. Start gemini, run /mcp auth clipspeed to sign in, and the tools are available. Connect Instagram in ClipSpeed, then describe the post. Setup takes about a minute.

setup once, then just ask
# One-time setup (OAuth, no API key)
gemini mcp add --transport http clipspeed https://api.clipspeed.ai/mcp

# Then ask Gemini CLI:
> Post the top clip to Instagram as a Reel tomorrow at 12:30 with five hashtags
Gemini CLI: Preview — nothing booked yet. Instagram — clip_id. Book it?

ClipSpeed has not yet run an end-to-end check inside Gemini CLI. The server is standard MCP over streamable HTTP, which Gemini CLI supports; the flags above are Gemini CLI's documented ones.

  1. Run gemini mcp add --transport http clipspeed https://api.clipspeed.ai/mcp.
  2. Start gemini and run /mcp. Authenticate clipspeed; approve the ClipSpeed sign-in in the browser.
  3. Ask it to list your channels.
  4. Connect Instagram in the ClipSpeed app, or ask Gemini CLI for a connect link: it is private, valid for ten minutes, and Instagram signs you in itself.

What can Gemini CLI do on Instagram?

On Instagram, Gemini CLI can post Reels and feed images with a caption and hashtags. Every booking runs through the same rules as the ClipSpeed app.

Video and Image posts

Instagram takes video and image through ClipSpeed. Video: MP4, MOV or WebM up to 1 GB by public link (posted as a Reel), or a finished ClipSpeed clip. Image: JPG, PNG, WebP or GIF up to 25 MB by public link.

2,200 characters, checked at booking

Instagram's own arithmetic. Too long is refused with the real count, never trimmed at send time.

Exact time or refused

Name the minute and Gemini CLI books it, or you are told why not and offered the next open slot. A booked Instagram post is never moved behind your back.

Preview before anything posts

preview: true runs the whole booking and writes nothing. Gemini CLI shows the plan, with each slot and the day's remaining cap, and books only on your yes.

Clips cut in the same session

Submit a video or stream link, get captioned 9:16 clips with a viral score, and post the best as native video on Instagram. No download, no re-upload.

Pacing and numbers

Image posts on Instagram are at least 120 minutes apart, up to 4 a day. Video on Instagram is at least 4 hours apart, up to 4 a day under your plan. After a post goes out, Gemini CLI can read back views and engagement where Instagram provides them.

How does Gemini CLI post to Instagram through ClipSpeed?

You describe what you want in plain language and Gemini CLI makes the ClipSpeed calls. A typical conversation has three beats.

1

Find your Instagram channel

Ask Gemini CLI whether Instagram is connected. It calls list_channels and reads platform_settings, so it also knows what Instagram accepts and the limits before you write a word.

Is my Instagram account connected to ClipSpeed?
Yes — Instagram is connected and takes video/image posts, text up to 2,200. Want me to post something?
2

Compose within the rules

Describe the post. Gemini CLI drafts within Instagram's limits, and leaves URLs out because they are removed anyway; mention a clip or a file and it attaches it.

Draft a Instagram post about the launch with the best clip from the demo.
Here's the draft (1760/2,200): "…" Clip 2 (score 88) attached. Want me to schedule it?
3

Schedule or publish

Name a time, or say now. The slot is booked exactly or refused with the next open one, and the reply carries the id you can cancel or edit by.

Yes — tomorrow at 9am.
Scheduled on: • Instagram — Tue, 9:00 AM · id 7c2… Times are in America/New_York.

Instagram settings reference

These are the schedule_post fields that apply to Instagram. Mention any of them in plain language and Gemini CLI sets them; the server checks them at booking.

FieldTypeRequiredWhat it does on Instagram
platformsstring[]YesInclude "instagram". Up to ten platforms per call; each books its own slot.
textstringNoThe caption, up to 2,200 characters including hashtags. URLs are removed; Instagram captions do not link.
hashtagsstring[]NoAppended to the caption and counted toward the limit. Instagram allows up to 30.
media_kindimage | videoNoDetected from the file when omitted. Video posts as a Reel; an image posts to the feed.
clip_id or media_urlstringOne of the twoA finished ClipSpeed clip (Reel), or a public https link to an image up to 25 MB or a video up to 1 GB.
scheduled_atISO 8601NoExact or refused with the next open slot. Omit to post as soon as possible.
previewbooleanNoPlan only; nothing is booked.

Common Instagram configurations

Ask Gemini CLI for any of these and it applies the matching settings.

Reel from the best clip

Post the top clip to Instagram as a Reel tomorrow at 12:30 with five hashtags
Got it. Applying: clip_id · hashtags: 5 · scheduled_at: tomorrow 12:30 local

Feed image from a generated picture

Generate a 4:5 product shot on the beach, then post it to Instagram at 6pm with this caption
Got it. Applying: generate_image → media_url from the result · media_kind: image

Image and Reel the same day

Book the image at 9am and the Reel at 1pm
Got it. Applying: two bookings · images need 2 hours between posts, Reels 4 · both slots are valid

Caption cleaned of links

Use the blog intro as the caption and end with 'link in bio'
Got it. Applying: text: no URLs (ClipSpeed removes any that slip through)

Example prompts for Instagram in Gemini CLI

Type these into the terminal, or pass one to terminal in a script. Gemini CLI calls ClipSpeed and confirms before publishing.

Just ask

Post Instagram with a scheduled time

Post the top clip to Instagram as a Reel tomorrow at 12:30 with five hashtags. Keep the text under 2,200 characters. Preview first.
Clips first

Cut the clips, then post the best

Clip this link, keep the top three by viral score, and schedule them to Instagram at 11am, 3pm and 7pm tomorrow. Show me the plan before booking.
Headless

From a script with Gemini CLI

gemini -p "Summarise the changes since the last git tag as one Instagram post under 2,200 characters. Schedule it via ClipSpeed for today at 10am; preview first and book if nothing is refused."

Instagram limits and gotchas to know

Instagram enforces a few rules that Gemini CLI and ClipSpeed respect automatically, but knowing them helps you phrase requests.

  • Captions are limited to 2,200 characters with hashtags counted; a longer caption is refused at booking, never trimmed at send time.
  • Links in captions are removed before posting. Instagram does not make caption links clickable, so point people to the bio instead.
  • Instagram takes video (as a Reel) and images. A text-only request is refused with a message that names what Instagram accepts.
  • Images on one account are at least two hours apart and Reels four hours apart, with a daily cap from your plan. The booking names the next open slot when a time is taken.
  • Stories are not part of the agent tools today. The page says Reels and feed posts because that is what posts.
RuleInstagram
AcceptsVideo, Image
Text limit2,200 characters
TitleNo title field
Links in the captionRemoved before posting (Instagram captions do not link, and link-heavy captions are down-ranked)
PacingImage posts on Instagram are at least 120 minutes apart, up to 4 a day. Video on Instagram is at least 4 hours apart, up to 4 a day under your plan.
FormatsImage: JPG, PNG, WebP or GIF up to 25 MB by public link. Video: MP4, MOV or WebM up to 1 GB by public link (posted as a Reel), or a finished ClipSpeed clip. Aspect: 9:16 for Reels, 1:1 or 4:5 for feed images
StatusPosting today

What Postiz-style schedulers cannot do

Cut the clips first

Gemini CLI does not need finished video to start. Hand it a YouTube link, a podcast, a stream VOD or a local export. ClipSpeed finds the moments, cuts them to 9:16 with word-by-word captions, scores each one 0 to 100 for shareability, and returns them in the same conversation. Gemini CLI picks by score, writes the caption from the transcript, and books the clips on Instagram. Three tool calls, one approval, no download and no re-upload.

  • Clips arrive with a title written from the hook, a transcript and a viral score, so the agent can choose and caption without watching the footage.
  • Live streams can be clipped while they are still on air; the agent books the highlights for the next morning before the stream ends.
  • Every clip is already hosted, so schedule_post takes its id directly. Nothing moves through your laptop.
1
submit_to_clipspeedPaste the link. ClipSpeed starts the job and returns a project id.
2
check_clipsPoll with the project id. Back come the finished 9:16 clips with titles, transcripts, viral scores and preview links.
3
schedule_postPass the clip id, the platforms, a caption and a time. Gemini CLI shows the plan with preview: true, you say yes, it books.
1
generate_image or generate_videoDescribe the shot. ClipSpeed runs it on the model that fits (Seedance, Kling, Veo, Nano Banana Pro, GPT Image and others) and quotes the credits first.
2
wait_for_generationReturns the hosted result link and a preview the agent can show you.
3
schedule_post with media_urlThe result link goes straight into the booking on Instagram. The caption, the time and the file are approved together.

The other half nobody else has

Generate the image or video, then post it

A product shot for Instagram, a 16:9 announcement graphic for X, a six-second opener before a clip: Gemini CLI can make an image or a short video with ClipSpeed's image and video models and book the result in the same reply. There is no separate design tool, no export, no upload page. The generated file is hosted, so media_url is the only thing the booking needs.

  • The price in credits is quoted before anything renders, within the per-generation and daily caps you set in Settings.
  • Results are previewed in the conversation, so you approve the picture and the post at once.
  • Images post as JPG, PNG or WebP up to 25 MB; video posts as MP4, MOV or WebM up to 1 GB.

What is Gemini CLI?

Gemini CLI is Google's open-source terminal agent built on the Gemini models. It reads your project, runs commands and connects to MCP servers over HTTP. With ClipSpeed registered, it can clip a video, generate media and schedule posts from a terminal session or from a script.

How ClipSpeed works with Gemini CLI

  • gemini mcp add writes the server into ~/.gemini/settings.json
  • Gemini CLI discovers the tools at start and reads platform_settings before composing
  • schedule_post is exact or refused with the next open slot
  • preview: true for a dry run
  • gemini -p for unattended runs

Gemini CLI vs Claude Code vs Codex: Gemini CLI (terminal), Claude Code (terminal), Codex (terminal). This page is about Gemini CLI; the Gemini CLI guide compares them.

~/.gemini/settings.json
{
  "mcpServers": {
    "clipspeed": {
      "httpUrl": "https://api.clipspeed.ai/mcp"
      // no browser? add:
      // "headers": { "Authorization": "Bearer csai_live_..." }
    }
  }
}
tool list (abridged)
# What the agent reads at connect time (tool descriptions, abridged)
list_channels           Connected platforms, what each accepts, limits, your time zone
connect_channel         A private 10-minute link to connect one platform
platform_settings       Limits, title rules, link handling, pacing per platform
schedule_post           clip_id | text | media_url → platforms[], scheduled_at, preview
list_scheduled_posts    Scheduled, sending, posted, failed — with post links
update_scheduled_post   Edit copy while still scheduled (the time never moves)
cancel_scheduled_post   Cancel; undoable 72 h in the app
post_analytics          Views, likes, comments, shares where the platform gives them
submit_to_clipspeed     Start clipping a video or stream link → projectId
check_clips             Finished 9:16 clips with titles, transcripts, viral scores
generate_image / generate_video / wait_for_generation

# Instagram: video/image · text 2,200

Post to Instagram and other platforms from Gemini CLI

One request can book the same content to Instagram and other channels, each keeping its own settings and its own slot. Every platform below has its own Gemini CLI guide.

Post the launch to Instagram and TikTok tomorrow at 9am, then a daily tip on TikTok every weekday at 10am. Preview first.
Preview — nothing booked yet: • Instagram — Tue 9:00 AM • TikTok — Tue 9:00 AM • TikTok daily tips — Mon–Fri 10:00 AM Book it?

Also works with

Instagram and Gemini CLI: frequently asked questions

How do I post to Instagram from Gemini CLI?

Run gemini mcp add --transport http clipspeed https://api.clipspeed.ai/mcp. Start gemini and run /mcp. Authenticate clipspeed; approve the ClipSpeed sign-in in the browser. Connect Instagram in ClipSpeed (or ask Gemini CLI for a connect link; it is private and valid for ten minutes), then describe the post in plain language. Gemini CLI reads the Instagram rules, drafts within them, shows the plan and books on your yes.

What can Gemini CLI post to Instagram through ClipSpeed?

Post Reels and feed images with a caption and hashtags. Instagram takes video and image posts; a text-only request is refused with a message naming what it accepts. Text is limited to 2,200 characters.

Which Instagram settings can Gemini CLI control?

The fields in the settings reference above: text, hashtags, media_kind, clip_id or media_url, scheduled_at, preview. Mention any of them in plain language ("unlisted", "tomorrow at 9", "preview first") and Gemini CLI sets the matching field before it books.

Do I need a Instagram API key or developer account?

No. You connect Instagram to ClipSpeed once through Instagram's own sign-in, and Gemini CLI talks to ClipSpeed over OAuth. No Instagram developer key, bearer token or password is pasted anywhere.

How many Instagram posts a day can Gemini CLI schedule?

Image posts on Instagram are at least 120 minutes apart, up to 4 a day. Video on Instagram is at least 4 hours apart, up to 4 a day under your plan. When a time is taken, the booking is refused with the next open slot rather than moved. Ask for preview to see a day's plan and the remaining cap before anything is booked.

Can Gemini CLI post to Instagram from a script or a cron job?

Yes. Gemini CLI's headless mode (terminal) runs one prompt and exits, and the ClipSpeed server registered on that machine does the booking. On a runner with no browser, authenticate with a ClipSpeed API key header. Keep preview on so the run reports a plan before it books.

Is posting to Instagram from Gemini CLI different from Claude Code?

The booking is identical: the same rules, the same calendar, the same refusals. What differs is where you work. Gemini CLI: terminal; headless with gemini -p. Claude Code: terminal, verified end to end; claude -p.

Start posting to Instagram from Gemini CLI

Connect ClipSpeed to Gemini CLI once, connect Instagram, and the next post is a sentence away. $1 starts the trial; scheduling is on every plan.

Gemini is a trademark of Google LLC. ClipSpeed is an independent product and is not affiliated with or endorsed by Google.

Instagram is a trademark of its owner. ClipSpeed is not affiliated with Instagram; names are used to describe compatibility. Status badges come from ClipSpeed's own rail and change when the facts do.

Scheduling is included on every paid ClipSpeed plan. The $1 trial starts the same account. Plans · Status · MCP reference

ClipSpeedAI

AI video, AI images, AI influencers and AI clipping on one credits wallet, in the web app and inside Claude and ChatGPT.

Start creating
© 2026 ClipSpeedAITerms · Privacy · DMCA