Instagram Account Operations
/install instagram-account-operations
Instagram Account Operations
This skill is the operating doctrine for every Instagram automation run on a brand, professional or personal account.
The goal is not to comment fast. The goal is to operate Instagram like a careful, helpful human contributor: stable browser, correct context (Meta Business Suite), useful action, no action block, no shadowban risk.
Drop-in for any niche (legal, medical, software, finance, creator, ecommerce). Replace the placeholders in section 0 with your own values.
0. Configure for your brand
Before running anything, fill these placeholders in your local copy or your agent's memory:
| Placeholder | Example | Your value |
|---|---|---|
\x3CBRAND_NAME> |
"Acme Studio" | — |
\x3CBRAND_DOMAIN> |
"acme.studio" | — |
\x3CIG_HANDLE> |
"@acmestudio" | — |
\x3CMETA_BUSINESS_ID> |
numeric ID from business.facebook.com → Settings | — |
\x3CMETA_ASSET_ID> |
numeric ID of the IG account asset in MBS | — |
\x3CBROWSER_PROFILE> |
"instagram-live" | — |
\x3CBROWSER_PORT> |
"18802" | — |
\x3CNICHE_KEYWORDS> |
"lost license OR speeding ticket" | — |
\x3CPRIMARY_CTA> |
"WhatsApp / form / app — pick ONE" | — |
\x3CWORKSPACE_DIR> |
"~/.openclaw/workspace/instagram-\x3Cbrand>" | — |
All shell snippets below assume an OpenClaw browser CLI bound by CDP, but the doctrine works with any browser-automation stack (Playwright, Puppeteer, Chrome MCP). Swap the CLI calls for your own.
Quick config (copy-paste YAML)
If your agent reads config from YAML, drop this in \x3CWORKSPACE_DIR>/config.yaml:
brand:
name: \x3CBRAND_NAME>
domain: \x3CBRAND_DOMAIN>
instagram:
handle: \x3CIG_HANDLE>
account_type: business | creator # business strongly recommended for MBS access
browser_profile: \x3CBROWSER_PROFILE> # e.g. "instagram-live"
browser_port: \x3CBROWSER_PORT> # e.g. 18802
meta_business_suite:
business_id: \x3CMETA_BUSINESS_ID>
asset_id: \x3CMETA_ASSET_ID>
base_url: https://business.facebook.com/latest/inbox
discovery:
niche_keywords: \x3CNICHE_KEYWORDS>
cta:
primary: \x3CPRIMARY_CTA> # one channel only
workspace:
dir: \x3CWORKSPACE_DIR>
alerts:
channel: telegram | slack | discord
webhook: \x3CYOUR_WEBHOOK_URL>
schedule:
timezone: Europe/Paris
windows:
dm_check: "*/15 9-22 * * *" # every 15 min
comment_check: "10,25,40,55 9-22 * * *" # offset to avoid collision
browser_health: "0 * * * *"
daily_recap: "21:00"
Compatibility
| Stack | Skill install path |
|---|---|
| Claude Code | ~/.claude/skills/instagram-account-operations/ |
| OpenClaw | ~/.openclaw/skills/instagram-account-operations/ |
| ClawHub-published | one-click install via clawhub.ai |
| Cursor / Copilot CLI | drop SKILL.md into your project's .cursorrules or AGENTS.md |
| Any LLM agent reading markdown rules | concatenate SKILL.md into your system prompt |
1. The Meta Business Suite is the only sane surface
Doctrine: EVERYTHING goes through business.facebook.com. Never automate against instagram.com directly.
Why:
- No iframes (unlike TikTok).
- Single UI for 4 channels: IG DMs, FB Messenger DMs, IG comments, FB comments.
- Playwright
click + type + press Enterworks out of the box. - Built-in CRM-style features: labels, notes, prospect stages.
- Link previews are auto-generated for the
\x3CPRIMARY_CTA>. - Bypasses
instagram.com's "redirect to/direct/inbox/" bug.
Physical profile
A single browser profile per account:
\x3CBROWSER_PROFILE>(CDP direct, attached tohttp://127.0.0.1:\x3CBROWSER_PORT>)
The IG account must be logged into Meta Business Suite in this profile and have an Asset assigned to a Business — otherwise the URLs below will 404 or redirect to a setup wizard.
openclaw browser --browser-profile \x3CBROWSER_PROFILE> status
openclaw browser --browser-profile \x3CBROWSER_PROFILE> navigate https://business.facebook.com/latest/inbox/all/?business_id=\x3CMETA_BUSINESS_ID>&asset_id=\x3CMETA_ASSET_ID>
openclaw browser --browser-profile \x3CBROWSER_PROFILE> snapshot --limit 200
Canonical URLs (per tab)
| Tab | URL fragment |
|---|---|
| All messages (IG DMs + FB Messenger DMs) | /latest/inbox/all?asset_id=\x3CMETA_ASSET_ID>&business_id=\x3CMETA_BUSINESS_ID> |
| Messenger only (FB DMs) | /latest/inbox/messenger?asset_id=\x3CMETA_ASSET_ID>&business_id=\x3CMETA_BUSINESS_ID> |
| Instagram DMs only | /latest/inbox/instagram_direct?asset_id=\x3CMETA_ASSET_ID>&business_id=\x3CMETA_BUSINESS_ID> |
| Instagram comments | /latest/inbox/instagram?asset_id=\x3CMETA_ASSET_ID>&business_id=\x3CMETA_BUSINESS_ID> |
| Facebook comments | /latest/inbox/facebook?asset_id=\x3CMETA_ASSET_ID>&business_id=\x3CMETA_BUSINESS_ID> |
This skill covers IG-specific concerns; for FB-specific doctrine (Pages, groups, page moderation), see the companion facebook-account-operations skill.
Roles (mental separation, single physical profile)
Role: ig-post
Account cockpit (acting as the brand). Use for:
- DM replies in MBS All / IG Direct tab.
- Comment replies in MBS IG Comments tab.
- Direct profile checks (only when MBS doesn't expose the metric).
Default page: MBS inbox/all.
Role: ig-engage
Discovery. Use for:
- Reading public conversations under your own posts (in MBS).
- Inspecting a candidate user's profile before replying to a comment (open in a new tab on
instagram.com, but DO NOT act from there).
Default page: MBS inbox/instagram (comments tab).
Role: ig-stealth
Quiet maintenance. Use for:
- Story view audits.
- Hashtag-state checks (open hashtag in incognito, NOT in this profile).
Default page: MBS dashboard.
Operational law
ig-post= act as the account via MBS.ig-engage= discover and qualify, NEVER act outside MBS.ig-stealth= maintain and observe.- Stability matters more than speed.
- After every run, return to MBS
inbox/all.
2. Session check (run first on every cron)
openclaw browser --browser-profile \x3CBROWSER_PROFILE> status
openclaw browser --browser-profile \x3CBROWSER_PROFILE> navigate "https://business.facebook.com/latest/inbox/all/?business_id=\x3CMETA_BUSINESS_ID>&asset_id=\x3CMETA_ASSET_ID>"
openclaw browser --browser-profile \x3CBROWSER_PROFILE> snapshot --limit 60
Check:
- If
statusisstopped: report and stop. - If the snapshot shows a Facebook login form: session expired, report and stop.
- If the snapshot shows the MBS chrome but with a "Reauthenticate to manage this asset" banner: same — stop and report.
- If the snapshot shows the inbox with conversation list visible: continue.
Never relaunch Chrome from inside a cron.
3. Phase gating (action-block awareness)
Instagram does not have karma; it has action blocks — a tiered penalty system:
- Phase A (account \x3C 30 d, OR last 30 d had an action block, OR less than 500 followers): only inbound DM/comment replies inside MBS, zero outbound actions (no proactive DMs, no comment-on-other-people's-posts, no following).
- Phase B (account ≥ 30 d, no recent block, ≥ 500 followers, no community-guideline flag): all crons authorized.
Always read \x3CWORKSPACE_DIR>/memory/ig-state.md at start (last line = current phase).
Action-block thresholds (observed, not officially published)
| Action | Frequency that triggers a block |
|---|---|
| Follow / unfollow | > 50/day or > 200/week |
| Comment on others' posts | > 30/hr or > 200/day |
| DMs to non-followers (proactive) | > 10/day on a young account |
| Liking | > 60/hr |
| Posting | > 5 posts/24h |
A block lasts 24 h (warning), 7 d (second offense), or permanent (third+). The thresholds tighten on Phase A accounts.
Manual override (advanced)
You can force Phase B by appending YYYY-MM-DD - phase=B (manual override) to ig-state.md. Use only if the account is grandfathered (verified business, long history, no warnings). Document in ig-learnings.md.
4. Qualification of an inbound DM or comment
A DM or comment is repliable only if all of:
- The thread has at least one user-authored message (not a pure share / reel forward — those have no question).
- The user did NOT just receive a templated auto-reply that they haven't acknowledged.
- Phase B authorized for proactive / brand-mentioning replies (see §3).
- The message is a real question or intent in your domain.
- The same user has not been sent a brand-mentioning reply in the last 7 days (
ig-reply-log.md).
If any check fails: skip. Document why in the recap.
Special: a user shared a Reel with no message
Default action: skip silently. A Reel share without a question is usually a forward to friends; replying creates noise and confuses the conversation.
Special: existing client recognized
If the user appears in ig-clients-known.md: reply with empathy, do not paste any link, redirect to the standard support channel (NOT \x3CPRIMARY_CTA> which is for prospects).
5. Reply templates
Phase A (warming, NO brand mention)
- 1-3 sentences.
- Match the conversation tone.
- No links, no expert-grade advice.
Phase B (brand-aware, expert)
DM reply (any length, but ≤ 700 chars stays human):
[Acknowledge the situation in 1 sentence, neutral tone.]
[General framework in 2-3 short paragraphs.]
[Concrete next step — point to \x3CPRIMARY_CTA>. ONE channel only.]
Comment reply (≤ 200 chars, prefix with @username to target the parent comment):
@username [contextual acknowledgement]. [Indirect signal — "DM us" or "form on profile"].
What never to paste verbatim
- Anything with
[brackets]left in it (final read-through is mandatory). - The same opening phrase across more than 2 replies in 7 days.
- A literal URL inside a DM unless it is the
\x3CPRIMARY_CTA>'s own link AND it is the second message in the conversation (Meta's link-preview takes 1-2 s; if pasted as the first interaction, IG marks it as spam).
Brand link policy
- Inside a comment body: NEVER paste a URL. "Form on profile" / "DM us" is the only allowed signal.
- Inside a DM: max ONE URL, ONE channel (
\x3CPRIMARY_CTA>). Never a bit.ly / tinyurl / shortener — IG marks shorteners as spam.
6. Original posting cadence
Out of scope for the live reactive crons. Recommended rhythm for a Phase B account:
- Reels: 3-5/week. Hook in first 1.5 s. Vertical 9:16. Native sound or licensed library only.
- Carousels: 2-3/week. Educational, multi-slide. Drives saves (the strongest ranking signal).
- Stories: 3-7/day. Reuse top reel hooks. Polls + sticker engagement = strong reach signal.
- Lives: ad hoc, max 1/week. Plan, don't ad-lib.
- Static feed posts: out, except for branded covers.
Hashtag discipline (Reels + posts):
- 3-5 hashtags per post (the "30 hashtags" old advice is dead — IG reduced the cap and over-tagging looks spammy).
- 1 broad + 2-3 niche + 1 micro (\x3C 50k posts).
- Re-check the
\x3CWORKSPACE_DIR>/memory/ig-hashtag-state.mdregistry monthly for shadowbanned tags.
7. Quotas (hard limits)
| Action | Phase A limit | Phase B limit |
|---|---|---|
| DMs handled (inbound replies) per 24 h | 20 | 60 |
| DMs handled per cron run | 4 | 8 |
| Comment replies handled per 24 h | 30 | 100 |
| Comment replies handled per cron run | 5 | 10 |
| Outbound DMs / day (to non-followers) | 0 | 5 |
| Follows / day | 5 | 20 |
| Unfollows / day | 5 | 20 |
| Likes per hour | 30 | 60 |
| Actions in same conversation | min 60 s apart | min 30 s apart |
| Actions globally | min 30 s apart | min 15 s apart |
Quota tracking: read ig-reply-log.md at start of every run, count entries in the last 24 h, abort early if quotas already met.
8. Anti-spam triggers
Content
| Avoid | Use instead |
|---|---|
| "Check link in bio" repeated | (mention bio at most once per conversation) |
\x3CBRAND_NAME> more than once per reply |
(max one mention) |
| "DM me", "WhatsApp me", "click here" stacked | (one CTA, one channel — \x3CPRIMARY_CTA>) |
| Phone numbers, emails | (never in comment bodies; OK in DM tail if user explicitly asked) |
| Emojis in regulated / sober niches | (drop them) |
| All caps for emphasis | (use sparingly) |
| Shorteners (bit.ly / tinyurl) | (use the full canonical URL) |
Behavioral
- Replying within 30 s of a comment going live → bot-like; wait ≥ 2 min.
- Same opening phrase across multiple replies → flagged. Vary the first 1-2 words.
-
6 actions in 10 min → rate limit on that role.
- Following + liking the same user's last 5 posts within 1 min → instant action block.
- Sending the same DM body to > 3 users in 24 h → "Action blocked" toast within minutes.
9. Operational flow inside Meta Business Suite
Reactive DM + comment ops run inside MBS exclusively. The flow below is validated end-to-end.
DM check / reply (validated)
URL: https://business.facebook.com/latest/inbox/all?business_id=\x3CMETA_BUSINESS_ID>&asset_id=\x3CMETA_ASSET_ID>
- Pre-flight session check (see §2).
- Navigate to the
alltab. Wait 5 s for the conversation list to render. - Filter for unread by clicking the "Unread" filter chip, or query the conversation list for nodes with the unread badge.
- For each unread conversation, top-to-bottom:
a. Click the conversation tile (the user's name).
b. Read the entire message thread for context — IG conversations often span across the auto-template + user's real reply.
c. Qualify (see §4). If skip-eligible, click the next conversation.
d. Click the textbox: selector
[contenteditable='true']or[aria-label*='Reply'], [aria-label*='Répondre']. e. Type the message via Playwrighttype(orevaluatewithdocument.execCommand('insertText', false, msg)ONLY ifcontenteditableis a vanilla React-controlled input — verify first). f. Press Enter to send. Do NOT click "Send" — there are visual duplicates of the send button and a Playwrightclicksometimes lands on the wrong one. Enter is unambiguous. - After sending, the textbox empties; verify before moving to the next conversation.
- After processing all unread, switch to the
Messengertab and to theInstagramtab in turn to catch any FB-only or IG-only inboxes that didn't surface inall.
Comment reply (validated — partial)
URL: https://business.facebook.com/latest/inbox/instagram?business_id=\x3CMETA_BUSINESS_ID>&asset_id=\x3CMETA_ASSET_ID>
The comments tab is less stable than DMs — see "Known issue" below.
- Navigate to the comments tab. Wait 5 s.
- Posts with new comments appear in the left rail with an unread badge.
- For each post:
a. Click the post tile.
b. Comments render in the right pane.
c. For each lead-qualified comment:
- Find the page-level "Ajoutez un commentaire..." / "Add a comment..." textarea at the bottom of the right pane.
- Type
@username your reply(the@usernameprefix targets the parent comment without clicking "Reply"). - Click the send-arrow button (SVG arrow to the right of the textarea) — Enter does NOT submit a comment in this UI.
Known issue: do NOT click "Reply" on comments
Clicking the "Reply" affordance under a comment navigates the right pane to a different post (Meta's SPA bug, present in 2025-2026). The validated workaround is @username prefix + page-level textarea + send-arrow click — described above.
If you must produce a true nested reply (rare): open the post URL on instagram.com in a separate ig-engage tab, reply there manually, then mark the conversation done in ig-reply-log.md. Do not script the instagram.com reply path — Instagram's anti-automation is much tighter than MBS.
Selectors quick-reference
| Element | Selector |
|---|---|
| DM textbox | [contenteditable='true'] or [aria-label*='Reply'], [aria-label*='Répondre'] |
| DM send (preferred) | press Enter |
| Comment textarea | textarea[placeholder*='comment'], textarea[placeholder*='commentaire'] |
| Comment send | the SVG arrow button to the right of the textarea — [aria-label*='Send'], [aria-label*='Envoyer'] |
| Conversation tile | text=\x3Cuser's display name> |
| Tab "Messenger" | text=Messenger |
| Tab "Instagram" | text=Instagram (the DMs tab) |
| Tab "Commentaires Instagram" | text=Instagram (in comments URL — same string, different URL) |
| Unread filter chip | text=Unread, text=Non lu |
Exit codes (recommended convention)
| Code | Meaning | Recap action |
|---|---|---|
| 0 | Replies sent, verified | status: ok |
| 1 | Fatal error (selector missing, MBS error toast) | status: error, attach screenshot |
| 2 | "Action blocked" / "Try again later" toast | status: blocked, flip the role to Phase A pause |
| 3 | Session expired (login form rendered) | status: blocked, alert user |
| 4 | Comment "Reply" caused page navigation (known bug — see above) | status: partial, log for manual review |
Gotchas
- The MBS comment-Reply navigation bug: still present. Use the
@usernameworkaround. - Localized labels:
Reply/Répondre,Send/Envoyer— maintain a label map and try both in selectors. - MBS soft logout: after ~48 h of inactivity, MBS asks for re-authentication on next navigation. Treat as session expired (exit 3).
- Tab switching: if you operate on multiple tabs (
all,messenger,instagram_direct), wait ≥ 3 s after switching — MBS re-fetches the conversation list and clicking too early lands on stale tiles. - The
Non Lu/Unreadfilter chip is sometimes mis-clicked: it has a transparent overlay. Snapshot before clicking. - Cron timeout: bump to ≥ 1200 s. MBS pages can take 4-6 s to render fully.
10. Account state management
File: \x3CWORKSPACE_DIR>/memory/ig-state.md
For each day:
- Phase (A / B).
- Followers count.
- Last action-block timestamp + duration.
- Last community-guideline notice.
- Posts published today (cap at 5/24h per §6).
File: \x3CWORKSPACE_DIR>/memory/ig-clients-known.md
For each existing client:
- IG handle.
- Last contact date.
- Sensitive flag (do-not-paste-CTA).
Update at the end of every run.
11. Recovery & blockers
| Issue | Action |
|---|---|
status: stopped |
Report, stop. |
| Login form rendered on MBS | Session expired, alert, stop. |
| "Reauthenticate to manage this asset" banner | Same as login expired. |
| "Action blocked — try again later" toast | Flip the role to Phase A pause for 24 h. Alert. |
| "Please verify it's you" / re-captcha | Stop. Never auto-solve. Alert for manual login. |
| MBS shows "Something went wrong" generic error | Refresh once. If persists, stop and alert. |
| Comment "Reply" click navigated to wrong post | Mark exit 4, fall back to manual via instagram.com. |
| Followers drop > 5 % overnight | Likely shadowban — flip to Phase A, alert. |
| Two consecutive comments removed within \x3C 10 min of post | Auto-freeze comment cron for 6 h. |
12. Mandatory recap (alert channel + memory)
At the end of each cron:
Alert channel — final run message:
[Job name] — [status: ok|partial|blocked|skipped]
DMs handled: [N or "—"]
Comments handled: [N or "—"]
Hot leads: [list short OR "—"]
Phase: [A|B]
Blockers: [text OR "—"]
Next action: [1 line]
Memory — append to \x3CWORKSPACE_DIR>/memory/ig-recaps.md:
## YYYY-MM-DD HH:MM TZ — \x3Cjob-id> — status: \x3Cstatus>
- Job: \x3Cdescription>
- Phase: A|B
- DMs sent: \x3CN>
- Comments sent: \x3CN>
- Hot leads: \x3Clist or "—">
- Blockers: \x3Ctext or "—">
- Next useful action: \x3C1 line>
13. Memory files inventory
Located at: \x3CWORKSPACE_DIR>/memory/
| File | Purpose | Update cadence |
|---|---|---|
ig-recaps.md |
Per-run logs | Every cron run |
ig-post-log.md |
Reels + carousels + stories (URL, type, date, reach) | Each posting run |
ig-reply-log.md |
DM + comment replies sent | Each reply pass |
ig-state.md |
Daily phase + followers + warning flags | Daily Metrics Recap |
ig-hashtag-state.md |
Per-hashtag reach + shadowban check | Weekly |
ig-clients-known.md |
Existing clients to NEVER pitch | Ad hoc |
ig-ideas.md |
Content backlog | Weekly Planning |
ig-learnings.md |
Patterns (what reached, what got removed) | Weekly + ad hoc |
ig-alerts-sent.md |
Anti-doublon hot-lead alerts | Each alert |
14. Account identity guardrails
- Handle: brand-aligned but not aggressively promotional (
@drsmithlegal>@bestlawyerinparis). - Bio: one line + the single
\x3CPRIMARY_CTA>link. No emojis, no flag salad in regulated niches. - Never reply to a DM that asks for expert-grade advice on a specific case — redirect to
\x3CPRIMARY_CTA>. - Never share private client details, names, or numbers.
- Never reuse strict CRM templates as IG content.
- Never promise an outcome ("you will win").
- Never charge or solicit payment in DM.
- If asked "are you a bot?": one sober, ambiguous line, then redirect. Do not confirm AI.
15. Phase A → Phase B transition
When the Daily Metrics Recap detects (account_age_days ≥ 30) AND (followers ≥ 500) AND (last_action_block_days_ago > 30):
- Append to
ig-state.md:YYYY-MM-DD - phase=A - PHASE_B_THRESHOLD_REACHED. - Send a distinct alert:
🎉 IG account ready for Phase B — review and flip outbound crons manually. - Manual user flip (no auto-flip).
- First week of Phase B: cap reply pass at 3 replies/run (not 8).
- Daily check on
Action Status(MBS → Settings → Account Status). Any "warning" reverts to Phase A.
16. Stability discipline
- Read the UI before clicking.
- One click → verify with a snapshot.
- Switch tabs only after the previous tab settled.
- Close stale tabs at the end of every run.
- Never fake a successful reply — always verify the message landed in the thread.
Better silence than spam. Better a blockage report than a fake success.
17. First-run checklist
- Section 0 placeholders filled.
- IG account is Business or Creator, linked to a Meta Business Suite asset.
-
\x3CMETA_BUSINESS_ID>and\x3CMETA_ASSET_ID>extracted (open MBS, copy from the URL). - Bio is one line + single
\x3CPRIMARY_CTA>link. - Browser profile launched at
http://127.0.0.1:\x3CBROWSER_PORT>and logged into facebook.com (the MBS gate). - Navigating to
inbox/allrenders the conversation list (no login form, no setup wizard). -
\x3CWORKSPACE_DIR>/memory/exists with the 9 memory files. - Alert channel webhook tested.
- Phase A confirmed: only inbound DM cron enabled.
- At least 14 days of manual posting + manual replies before turning on the cron.
- Account Status checked (MBS → Settings → Account Status): green / no warning.
Init memory:
mkdir -p "\x3CWORKSPACE_DIR>/memory" && cd "$_" && touch ig-recaps.md ig-post-log.md ig-reply-log.md ig-state.md ig-hashtag-state.md ig-clients-known.md ig-ideas.md ig-learnings.md ig-alerts-sent.md
18. FAQ
Q: Do I need OpenClaw to use this skill? A: No. OpenClaw browser CLI is the example stack — the doctrine works with Playwright (Node or Python), Puppeteer, Chrome MCP, or any CDP-capable tool.
Q: Can I just use the Instagram Graph API?
A: Partially. The Graph API covers instagram_basic, instagram_manage_messages, instagram_manage_comments — if you have an approved app, you can build a more robust webhook-based flow. The doctrine in this skill is the fallback for accounts not yet approved for Graph API access, or for cases where MBS UI features are needed (labels, prospect stages, link previews).
Q: What about multi-account?
A: Clone the workspace dir per account. Use a separate browser profile + port. Each IG account must have its own Meta Business asset — you can manage multiple assets from one MBS, but they have distinct \x3CMETA_ASSET_ID> values.
Q: My account got an action block during testing. What now?
A: Stop everything. Flip to Phase A. Manual usage only for 7-14 days. Document in ig-learnings.md the exact last 20 actions. Do NOT appeal automatically.
Q: Does the doctrine cover Reels Ads / Boost / Shopping? A: No. This skill is for organic + reactive ops only. Ads have a separate dashboard and a separate (different) sanction pattern.
Q: What's the most common reason this skill's crons get flagged? A: Same opening phrase across replies. Vary the first 1-2 words every time. The second most common: replying within 30 s of a comment landing — wait ≥ 2 min.
Q: What if my account is suspended (not just action-blocked)?
A: Stop everything. Do not appeal automatically — Instagram's appeal flow is sensitive to repeated automated submissions. Manual review only. Document the exact last 20 actions before the suspension in ig-learnings.md.
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install instagram-account-operations - After installation, invoke the skill by name or use
/instagram-account-operations - Provide required inputs per the skill's parameter spec and get structured output
What is Instagram Account Operations?
Operating doctrine for Instagram account automation — careful creator + business pattern via Meta Business Suite, role separation, action-block awareness (24... It is an AI Agent Skill for Claude Code / OpenClaw, with 112 downloads so far.
How do I install Instagram Account Operations?
Run "/install instagram-account-operations" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Instagram Account Operations free?
Yes, Instagram Account Operations is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Instagram Account Operations support?
Instagram Account Operations is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Instagram Account Operations?
It is built and maintained by Alexandre Bloch (@alexbloch-ia); the current version is v1.0.0.