Automated summary
Drafts an Instagram post from a business profile, routes it through an approval step, then publishes the photo via Playwright automation once approved.
Strengths
- Cleanly separates drafting from publishing with a Pending_Approval / Approved / Rejected file workflow
- Ties captions and hashtags to the guidelines in business_profile.md
- Gives concrete Playwright navigation steps for image upload and sharing
- Explicitly documents the gaps in Instagram web posting (no Stories/Reels)
Limitations
- Covers photo posts only: Stories, Reels and text-only posts are unsupported
- Requires a Playwright MCP server on localhost:8808 plus project-specific helper scripts
- Blocked until the user supplies an image file before approval
Use when you need to prepare and publish an Instagram photo post under a human approval workflow.
Avoid it for Stories or Reels, or when no Playwright MCP server is available.
Security analysis
CautionThe skill is designed for legitimate social-media automation and includes an explicit approval step before posting. However, it uses powerful tools—shell execution, local scripts, and browser automation against an external service—without declaring allowed-tools or addressing session credential safety. No destructive, exfiltrating, or obfuscated behavior is present.
- •Uses bash/python execution and Playwright browser automation via a local MCP client without declaring allowed-tools.
- •Posts to an external Instagram account and relies on an authenticated browser session, but does not discuss session/credential safety.
- •References local filesystem approval folders and a specific script path without validating paths or describing approval-file integrity.
- •Includes a clear mandatory approval gate before posting, which mitigates accidental posting risk.
Examples
Draft an Instagram post announcing our new spring collection, following business_profile.md, and save it to Pending_Approval with the image at assets/spring.jpg.The Instagram draft in Approved/ is ready — post it to Instagram using Playwright and log the result.Create this week's Instagram post using one of the configured topics from business_profile.md and queue it for my approval.Skill: Post to Instagram
Generate and post content to Instagram using Playwright automation.
When to Use
Use when the user wants to create an Instagram post, or when a scheduled instagram_post task triggers.
Limitations
Instagram web has limited posting capabilities:
- Photo posts: Supported via web upload
- Stories/Reels: NOT supported via web (requires mobile app)
- Text-only posts: NOT supported (Instagram requires an image)
Instructions
Step 1: Read Context
- Read
business_profile.mdfor posting guidelines, tone, and topics - If a specific topic was requested, use that; otherwise choose from configured topics
- An image file is required — check if one was provided or needs to be selected
Step 2: Draft the Post
- Generate caption content following the business profile guidelines
- Save draft to
Pending_Approval/:--- type: instagram_post action: post_instagram created: {timestamp} send_after_approval: true image_path: {path to image file, if available} --- # Pending Approval: Instagram Post ## Caption {the caption text with hashtags} ## Image {image_path or "User must provide an image before approving"} ## Instructions Move this file to `Approved/` to post, or `Rejected/` to cancel. Ensure an image is specified in the `image_path` field before approving. - Log the draft creation
Step 3: Post (After Approval)
When the approved action comes back via Needs_Action/:
- Ensure Playwright MCP server is running
- Navigate to Instagram:
python .claude/skills/browsing-with-playwright/scripts/mcp-client.py call \ -u http://localhost:8808 -t browser_navigate -p '{"url": "https://www.instagram.com/"}' - Click the "+" (create) button
- Upload the image file
- Add the caption text
- Click "Share"
- Verify the post was created
- Log the result and move to
Done/
Important
- NEVER post without approval — always draft to
Pending_Approval/first - Instagram requires an image — text-only posts are not possible
- Use relevant hashtags (up to 30, but 5-15 is optimal)
- Keep captions engaging but concise
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/post-to-instagram-mrwakczn/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/post-to-instagram-mrwakczn' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/post-to-instagram-mrwakczn/download' --output '.skill-downloads/post-to-instagram-mrwakczn/SKILL.md.part' && mv '.skill-downloads/post-to-instagram-mrwakczn/SKILL.md.part' '.skill-downloads/post-to-instagram-mrwakczn/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
This file does not provide a usable name/description header for this native procedure. It remains available to download and inspect; use the manual method below.
Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/post-to-instagram-mrwakczn/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
Writing Fragments
Content
Mine raw writing fragments through a relentless interview, without imposing structure. Capture ideas, quotes, and leading words for later use.
UI Copywriting & Auditing
Content
Write or audit user-facing UI copy including buttons, errors, empty states, and tooltips across the monorepo, following the design system source of truth.
Music MIDI Extraction
Content
Extracts the MIDI or score from an existing music production via the CogMusic MCP tool and confirms availability.