
Instagram Content Generation
Generate Instagram-ready visuals and copy through EachLabs each::sense with streamed reasoning and tool status for solo builders posting consistently.
Overview
instagram-content-generation is an agent skill for the Grow phase that generates Instagram-oriented creative via EachLabs each::sense with documented SSE streaming events.
Install
npx skills add https://github.com/eachlabs/skills --skill instagram-content-generationWhat is this skill?
- Documents 18 SSE event types on each::sense `/v1/chat/completions` for streaming UX
- Surfaces `thinking_delta`, `text_response`, and `status` (including `search_models`) during generation
- OpenAI-compatible chunk wrapper with `eachlabs` extension for agent clients
- Supports portrait and mood-driven creative briefs via model search tool parameters
- Stream terminates with standard `data: [DONE]` for predictable client handling
- 18 SSE event types documented for each::sense streaming
Adoption & trust: 676 installs on skills.sh; 15 GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
You need Instagram content fast but your agent integration does not know how to stream EachLabs thinking, tool status, and final creative output reliably.
Who is it for?
Indie builders automating feed creatives through an agent that already talks to EachLabs APIs.
Skip if: Teams that only need static prompt snippets without EachLabs streaming, or accounts that require official Meta Graph API scheduling inside the skill.
When should I use this skill?
You want the agent to create Instagram-oriented generative content through EachLabs each::sense with SSE event handling.
What do I get? / Deliverables
Your agent can call each::sense with the correct event handling so you get model-selected imagery and copy suitable for Instagram drafts.
- Stream-parsed creative brief responses and generated image outputs per agent run
- Agent-side event handling aligned to the 18-type SSE reference
Recommended Skills
Journey fit
Canonical shelf is Grow because the skill’s purpose is producing social content after you have something to promote—not validating the idea or shipping code. Content subphase covers repeatable post/reel asset generation and narrative planning for Instagram channels.
How it compares
Procedural EachLabs streaming skill—not a replacement for Canva templates or a full social CRM.
Common Questions / FAQ
Who is instagram-content-generation for?
Solo builders and small teams using AI agents to draft Instagram visuals and captions through EachLabs rather than manual design tools.
When should I use instagram-content-generation?
Use during Grow content planning, Launch distribution tests, or post-ship campaigns when you want streamed model search and generation status in the agent UI.
Is instagram-content-generation safe to install?
Review the Security Audits panel on this Prism page and treat API keys and generated media as sensitive before publishing.
SKILL.md
READMESKILL.md - Instagram Content Generation
# SSE Event Reference Detailed documentation for all Server-Sent Events (SSE) returned by the each::sense `/v1/chat/completions` endpoint. ## Event Format Events are wrapped in OpenAI `chat.completion.chunk` format with an `eachlabs` extension field: ``` data: {"id":"chatcmpl-123","object":"chat.completion.chunk","choices":[{"delta":{"content":""}}],"eachlabs":{"type":"event_type",...}}\n\n ``` Stream ends with: ``` data: [DONE]\n\n ``` --- ## Event Types (18 Total) ### thinking_delta AI reasoning streamed in real-time. Use this to show users what the AI is thinking. ```json { "type": "thinking_delta", "content": "Let me find the best model for portrait generation..." } ``` | Field | Type | Description | |-------|------|-------------| | `content` | string | Incremental thinking text | --- ### text_response Assistant message content (explanations, answers, plans). ```json { "type": "text_response", "content": "I'll create a stunning portrait for you with cinematic lighting and a warm mood." } ``` | Field | Type | Description | |-------|------|-------------| | `content` | string | Text response content | --- ### status Current operation being executed. Shows tool usage and parameters. ```json { "type": "status", "message": "Searching for image generation models...", "tool_name": "search_models", "parameters": {"use_case": "text to image portrait"} } ``` | Field | Type | Description | |-------|------|-------------| | `message` | string | Human-readable status message | | `tool_name` | string | Internal tool being used | | `parameters` | object | Tool parameters (optional) | --- ### tool_call Details of a tool being called. Useful for debugging and transparency. ```json { "type": "tool_call", "name": "execute_model", "input": { "model_name": "flux-2-max", "inputs": { "prompt": "A beautiful woman portrait...", "aspect_ratio": "1:1" } } } ``` | Field | Type | Description | |-------|------|-------------| | `name` | string | Tool name | | `input` | object | Tool input parameters | --- ### message Informational message from the agent. ```json { "type": "message", "content": "Your video is being processed. This typically takes 2-3 minutes." } ``` | Field | Type | Description | |-------|------|-------------| | `content` | string | Message content | --- ### progress Progress update with percentage completion. ```json { "type": "progress", "message": "Generating image...", "percent": 65 } ``` | Field | Type | Description | |-------|------|-------------| | `message` | string | Progress description | | `percent` | number | Completion percentage | --- ### generation_response Generated media URL (image, video, audio). This is the primary output event. ```json { "type": "generation_response", "url": "https://storage.eachlabs.ai/outputs/abc123.png", "generations": ["https://storage.eachlabs.ai/outputs/abc123.png"], "model": "flux-2-max", "execution_time_ms": 8500 } ``` | Field | Type | Description | |-------|------|-------------| | `url` | string | Primary output URL | | `generations` | array | All generated URLs | | `model` | string | Model used for generation | | `execution_time_ms` | number | Processing time in milliseconds | --- ### clarification_needed AI needs more information to proceed. Present options to the user. ```json { "type": "clarification_needed", "question": "What type of edit would you like to make to this image?", "options": [ "Remove the background", "Apply a style transfer", "Upscale to higher resolution", "Add or modify elements" ], "context": "I can see you've uploaded an image, but I need to understand what changes you'd like.", "requires_response": true } ``` | Field | Type | Description | |-------|------|-------------| | `question` | string | The question to ask the user | | `options` | array | Suggested options (can be displayed as buttons) | | `context` | string | Additional con