Install
openclaw skills install @influence-so/influenceUse saved brand context, generate content and images, review and publish social posts, and read available Insights through Influence.
openclaw skills install @influence-so/influenceUse the tools visible to this connection. If an MCP tool is missing, ask the user to refresh the client's tool list; in ChatGPT, use Manage → Refresh tools. Reconnect with the corresponding permission if an action refuses for a missing scope, or if a scoped REST catalog omits the tool. Complete unavailable features in Influence. Never request a secret in chat or place a credential in a URL, post, or tool argument. Server-issued confirmation and image-quote capabilities belong only in their designated confirmation arguments; do not repeat them in prose or other inputs.
Reviews and image quotes return expiresAtIso. Display that exact UTC expiry; add a local time only when a reliable date/time tool verifies the conversion. Do not infer a later expiry from a displayed local time or extend an expired review or quote.
Read the latest campaign. Request a new review with reschedule and its new UTC instant, or return_to_draft to cancel future delivery while keeping the composition editable. Send the current version. Show the review and obtain fresh approval using the same text or image path above. Already sent, in-flight, ambiguous or changed jobs are not safely editable. Returning to draft retains content, image, settings and history; subsequent publishing requires a new review.
Use brandContextGet for saved confirmed company facts and separately authored guidance. Missing context is not a researched fact. This read does not run website research or change guidelines.
campaignPlanGenerate queues one native AI turn using exact selected account settings, owned reference media and explicit planning preferences. It spends IQ credits; explain that before confirming. For a new freeform plan omit planPublicId, action and choice, and put the user's exact request in brief. For a freeform revision, first read campaignPlanGet, then send its exact planPublicId and current version with the requested wording change in brief, omitting action and choice. Retain the intended accounts, settings and references.
Use action: prepare_draft only to prepare a draft from the already saved conversation, and suggest_images only to request saved image ideas. These fixed actions ignore brief and append no user message. Use choice only for an exact option from the latest saved assistant message; its saved label replaces brief. Neither fixed actions nor saved choices carry a freeform wording revision.
Keep the same requestId and confirmation idempotency key across uncertain responses. A queued run is not a completed draft. Read campaignPlanGet for the actual job, conversation, saved composition, image ideas, plan version and available/reserved credits; do not poll continuously. For a revision, compare the saved wording with the previous text and the user's exact request, and show the result. A completed job or higher version does not prove the requested wording changed. If it did not, report that result without claiming success or starting another billable turn automatically. A failed, stale or insufficient-credit operation is not success.
To publish generated content, save each chosen composition through campaignDraftSave and obtain a new complete publishing review as above. Generating a plan neither approves nor publishes it. Do not convert a batch into a single blanket publishing approval.
From campaignPlanGet choose one saved assistant message/image idea. imageGenerationQuote binds its plan version, idea, reference IDs and variation count. Prepare then confirm the quote tool; this creates a quote without calling a model or reserving credits. Show the quote's estimated and maximum milli-credits (1,000 milli-credits = 1 IQ credit) and expiry, then obtain agreement to that spend before preparing/confirming imageGenerationStart with its exact quote ID and token. Keep its start requestId stable. Changed or expired quotes need a new quote, not a bypass.
imageGenerationList reports native batch outcomes, owned asset IDs and authoritative actual costs, which remain null while unknown. Queued/running/needs_review are not completed images. Use mediaGet for a ready generated JPEG/PNG. Inspect its actual pixels only if the client displays native MCP image content; metadata alone does not show them. If the client does not display the image, direct the user to signed-in Influence for visual review. Do not invent media IDs or pixels. It can be attached through campaignDraftSave, but publishing still requires the signed-in Influence reviewPath to inspect and approve the actual pixels. No direct chat/device upload or arbitrary URL import is supplied by image generation.
Use insightsAccountList for available channel totals, dated account reporting periods, the selected read channel and refresh capability. Use insightsPostList for paginated connected-account posts, including provider-only posts and undated readings by default. Preserve captions, dates, measured/fetched timestamps, optional counters, breakdowns and reporting windows. Account period readings and per-post metrics are separate; never infer account totals from a post. Uncollected, unavailable, stale, error and permission-required data are distinct; never substitute zero for missing counters.
An account's optional lastCheck records a successful bounded collection: fetchedAt is completion time and postCount is the number of posts returned in that check, including zero, not the account's total post count. Queued or failed refreshes do not establish a new success. Compare any channelId on the receipt and posts with selectedChannelId; a different Slack channel's receipt is historical and does not show that the selected channel was checked.
insightsRefresh prepares/confirms a bounded read-only provider feed refresh into that account's owned cache. It queues background work; queued does not mean refreshed. Follow up through insightsAccountList/insightsPostList. Refresh cannot publish or change an account; Slack uses the channel already selected in Influence. Respect rate_limited/unavailable/permission_required results; reconnect providers through Influence when required.
Publishing supports one composition and one static image per destination on the accounts marked eligible. Native AI plans can contain multiple proposed posts, but each publication has its own draft and exact review. Video, galleries, threads, follow-up comments, recurring publishing, account connection and editing/deleting published network content remain outside the assistant publishing workflow. Writes use existing jobs; bounded Insights reads use the existing provider-read owner. An unavailable feature returns its actual refusal; preserve the draft. Legacy scheduling and generation names are not bypasses.