Token导航 LogoToken导航TokenDH.com
研究检索敏感数据clawhub未标认证来源可访问clear审计通过

reeplreepl 图像

Agent Skill

reepl 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

36,258

周安装

1,526

GitHub Stars

2

下载量

12,696
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:reepl(reepl 图像)
来源仓库:https://github.com/abhibavishi/reepl
安装命令:
openclaw skills install reepl
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install reepl

简介

管理 LinkedIn 状态,支持草稿创建、发布安排与联系人分组。

  • 集成 AI 图像生成与轮播海报制作功能。
  • 提升职业社交内容与品牌形象管理效率。
  • 需配置 LinkedIn API 权限与媒体上传配额。
  • 注意平台规则避免频繁操作导致限流。reepl 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

name
LinkedIn Content Creation Skill by Reepl
description
Manage your LinkedIn presence with Reepl -- create drafts, publish and schedule posts, manage contacts and collections, generate AI images, create carousels, post to Twitter/X, and maintain your voice profile. Requires a Reepl account (reepl.io).
homepage
https://reepl.io
metadata
{"openclaw":{"requires":{"env":["REEPL_MCP_KEY"]},"primaryEnv":"REEPL_MCP_KEY"}}

LinkedIn Content Creation via Reepl

Full LinkedIn content management through Reepl's MCP integration. Write posts in your authentic voice, schedule content, manage drafts, generate AI images, create carousels, post to Twitter/X, browse your saved content library, and maintain contacts -- all from your AI assistant.

Prerequisites

  1. Reepl account -- sign up at reepl.io
  2. MCP connection -- connect your account via OAuth (see Setup below)
  3. Gemini API key (optional) -- required only for AI image generation, link at Settings > AI Models

Setup

# 1. Visit the OAuth page to connect your Reepl account
https://mcp.reepl.io/oauth/authorize

# 2. Log in with your Reepl credentials (Google or email)

# 3. Copy the API key shown after authorization

# 4. Configure the MCP server endpoint
https://mcp.reepl.io/mcp?key=YOUR_API_KEY

If you receive authentication errors at any point, re-authenticate at the URL above.


Available Tools (31 total)

ToolPurpose
create_draftSave a new LinkedIn post draft
get_draftsList and search your drafts
update_draftEdit an existing draft
delete_draftRemove a draft
publish_to_linkedinPublish a post to LinkedIn immediately
schedule_postQueue a post for future publishing
update_scheduled_postChange time, content, or settings of a scheduled post
delete_scheduled_postCancel and delete a scheduled post
publish_nowImmediately publish a scheduled post
schedule_draftSchedule an existing draft for publishing
get_published_postsView your published LinkedIn posts
get_scheduled_postsView your scheduled post queue
add_comment_to_postAdd a comment to a published post
get_user_profileGet your Reepl account info
get_voice_profileRead your voice profile (writing style patterns)
update_voice_profileUpdate voice profile with learned patterns
get_contactsBrowse saved LinkedIn contacts
get_listsBrowse your contact lists
get_list_contactsGet contacts in a specific list
add_contact_to_listAdd a contact to a list
get_collectionsBrowse your saved post collections
get_saved_postsRead posts from a specific collection
get_templatesBrowse your post templates and ideas
generate_imageGenerate an AI image for a post (requires Gemini API key)
generate_carousel_contentGenerate AI slide content for a carousel
list_carousel_draftsList your saved carousel drafts
get_carousel_draftFetch a specific carousel draft
create_carousel_draftSave a new carousel draft
update_carousel_draftEdit an existing carousel draft
delete_carousel_draftDelete a carousel draft
twitter_create_postCreate or schedule a Twitter/X post or thread

Content Rules

All LinkedIn content MUST be plain text. Never use markdown formatting like bold, *italic*, or # headings. LinkedIn does not render markdown -- it will appear literally in the feed, looking AI-generated. Use line breaks, spacing, and natural punctuation for structure instead.

LinkedIn posts have a 3,000 character limit.


Tool Reference

1. Create Draft

Save a post idea for later editing or publishing.

{
  "content": "Just wrapped up a deep dive into how AI is reshaping B2B sales.\
\
Here are 3 things I learned...",
  "title": "AI in B2B Sales",
  "mediaUrls": ["https://example.com/image.jpg"]
}
ParameterRequiredDescription
contentYesPost text (plain text only)
titleNoDraft title for organization
mediaUrlsNoArray of image URLs to attach

2. Get Drafts

List and search your saved drafts.

{
  "search": "AI sales",
  "limit": 10
}
ParameterRequiredDescription
limitNoNumber of drafts to return (default: 20)
searchNoFilter drafts by keyword

3. Update Draft

Edit an existing draft's content, title, or images.

{
  "draft_id": "abc-123",
  "content": "Updated post content here...",
  "title": "New Title"
}
ParameterRequiredDescription
draft_idYesID of the draft to update
contentNoUpdated post text
titleNoUpdated title
mediaUrlsNoUpdated image URLs (replaces existing)

4. Delete Draft

{
  "draft_id": "abc-123"
}
ParameterRequiredDescription
draft_idYesID of the draft to delete

5. Publish to LinkedIn

Publish a post to LinkedIn immediately. This action is irreversible -- always confirm with the user before calling.

{
  "content": "Excited to share that we just hit 10,000 users on Reepl!\
\
Building in public has been one of the best decisions we made.\
\
Here's what I'd tell founders who are hesitant to share their journey...",
  "visibility": "PUBLIC"
}
ParameterRequiredDescription
contentYesPost text (plain text only, max 3000 chars)
mediaUrlsNoArray of image URLs to include
visibilityNoPUBLIC (default) or CONNECTIONS

6. Schedule Post

Queue a post for future publishing. Times are rounded to 15-minute intervals.

{
  "content": "Monday motivation: the best time to start was yesterday. The second best time is now.",
  "scheduledFor": "2026-02-17T08:00:00Z",
  "visibility": "PUBLIC"
}
ParameterRequiredDescription
contentYesPost text (plain text only, max 3000 chars)
scheduledForYesISO 8601 timestamp (e.g. 2026-02-17T08:00:00Z)
mediaUrlsNoArray of image URLs
visibilityNoPUBLIC (default) or CONNECTIONS

Scheduling tips:

  • Ask the user for their preferred time rather than picking one yourself.
  • If they want suggestions, recommend varied slots: early morning (7-8 AM), lunch (12-1 PM), or end of day (5-6 PM) in their timezone.
  • Avoid scheduling all posts at the same time -- spread them for better engagement.

7. Update Scheduled Post

Change the time, content, visibility, or images on a post that's already scheduled.

{
  "post_id": "post-456",
  "scheduledFor": "2026-02-18T12:30:00Z",
  "content": "Updated content for the scheduled post..."
}
ParameterRequiredDescription
post_idYesID of the scheduled post
scheduledForNoNew ISO 8601 timestamp
contentNoUpdated post text
visibilityNoUpdated visibility
mediaUrlsNoUpdated image URLs (replaces existing)

8. Delete Scheduled Post

Cancel and remove a scheduled post. Only works on posts with status scheduled, failed, or pending_approval. Published posts cannot be deleted this way.

{
  "post_id": "post-456"
}
ParameterRequiredDescription
post_idYesID of the scheduled post to delete

9. Publish Now

Immediately queue a scheduled post for publishing by rescheduling it to now. The post will be picked up by the scheduler within a few minutes. Only works on scheduled posts.

{
  "post_id": "post-456"
}
ParameterRequiredDescription
post_idYesID of the scheduled post to publish immediately

10. Schedule Draft

Schedule an existing draft for LinkedIn publishing. Fetches the draft content and creates a new scheduled post. The original draft remains as a draft.

{
  "draft_id": "abc-123",
  "scheduledFor": "2026-02-17T08:00:00Z"
}
ParameterRequiredDescription
draft_idYesID of the draft to schedule (use get_drafts to find IDs)
scheduledForYesISO 8601 timestamp for when to publish

11. Get Published Posts

View the user's published LinkedIn posts. Supports keyword search and pagination.

{
  "limit": 10,
  "search": "AI"
}
ParameterRequiredDescription
limitNoNumber of posts to return (default: 20)
searchNoFilter posts by keyword (case-insensitive content search)
nextTokenNoCursor for pagination -- use the nextToken from a previous response

12. Get Scheduled Posts

View posts currently queued for future publishing. Supports status filtering, keyword search, and pagination.

{
  "limit": 10,
  "status": "scheduled"
}
ParameterRequiredDescription
limitNoNumber of posts to return (default: 20)
statusNoFilter by status: scheduled (default), failed, pending_approval, changes_requested
searchNoFilter posts by keyword (case-insensitive content search)
nextTokenNoCursor for pagination -- use the nextToken from a previous response

13. Add Comment to Post

Add a comment to a published LinkedIn post. Some post types (reshares, restricted posts) may reject comments -- this is a LinkedIn limitation.

{
  "post_id": "post-456",
  "comment_text": "Great insights! This resonates with what I've seen in enterprise sales."
}
ParameterRequiredDescription
post_idYesThe postId of the published post (from get_published_posts)
comment_textYesComment text (plain text only, max 1250 characters)

14. Get User Profile

Returns the user's name, email, and LinkedIn URL. No parameters required.

15. Get Voice Profile

Read the user's voice profile -- writing style patterns learned from their published posts. No parameters required.

Returns:

  • userInstructions -- guidelines the user has set (topics to avoid/emphasize, brand keywords, custom rules, writing samples)
  • generatedProfile -- LLM-learned patterns (tone dimensions, vocabulary preferences, hook styles, structure patterns, anti-patterns)
  • allowAutoUpdate -- whether the generated profile can be updated automatically
  • isActive -- whether the voice profile is active

Always read the voice profile before generating content. This is the key to writing posts that sound like the user, not like an AI.

16. Update Voice Profile

Update the voice profile with newly learned patterns after analyzing the user's posts.

{
  "generatedProfile": {
    "schema_version": "1.0",
    "tone": { "primary": "conversational-authoritative" },
    "vocabulary": { "signature_phrases": ["here's the thing", "let me break this down"] },
    "structure": { "hook_patterns": [{ "type": "bold-statement" }, { "type": "question" }] },
    "anti_patterns": { "never_do": ["use corporate jargon", "start with 'I'm excited to announce'"] }
  }
}
ParameterRequiredDescription
allowAutoUpdateNoOnly change if user explicitly requests
isActiveNoToggle voice profile on/off
userInstructionsNoUser-controlled guidelines -- only modify if user explicitly asks
generatedProfileNoLLM-learned patterns from analyzing posts

Important: Before updating generatedProfile, always check that allowAutoUpdate is true. If the user has locked their profile, do not update it.


17. Get Contacts

Browse saved LinkedIn contacts and profiles. Supports pagination.

{
  "search": "product manager",
  "limit": 20
}
ParameterRequiredDescription
limitNoNumber of contacts (default: 20)
searchNoFilter by name, headline, or keyword
nextTokenNoCursor for pagination -- use the nextToken from a previous response

18. Get Lists

Browse the user's contact lists (curated groups of contacts).

{
  "search": "leads",
  "limit": 10
}
ParameterRequiredDescription
searchNoFilter lists by name
limitNoNumber of lists (default: 20)

19. Get List Contacts

Get all contacts in a specific contact list. Use get_lists to find list IDs.

{
  "list_id": "list-123",
  "limit": 20
}
ParameterRequiredDescription
list_idYesThe ID of the list to fetch contacts from
limitNoNumber of contacts (default: 20)
nextTokenNoCursor for pagination -- use the nextToken from a previous response

20. Add Contact to List

Add an existing contact to a contact list. Use get_contacts to find profile IDs and get_lists to find list IDs.

{
  "profile_id": "profile-abc",
  "list_id": "list-123"
}
ParameterRequiredDescription
profile_idYesThe profileID of the contact to add
list_idYesThe ID of the list to add the contact to

21. Get Collections

Browse saved post collections (groups of bookmarked LinkedIn posts).

{
  "search": "inspiration",
  "limit": 10
}
ParameterRequiredDescription
searchNoFilter collections by name
limitNoNumber of collections (default: 20)

22. Get Saved Posts

Read posts from a specific collection. Use get_collections first to find the collection ID.

{
  "collectionID": "col-789",
  "search": "storytelling",
  "limit": 10
}
ParameterRequiredDescription
collectionIDYesThe collection to fetch from
limitNoNumber of posts (default: 20)
searchNoFilter posts by keyword

23. Get Templates

Browse post templates and content ideas saved in the user's library.

{
  "search": "product launch",
  "limit": 10
}
ParameterRequiredDescription
limitNoNumber of templates (default: 20)
searchNoFilter by keyword
catalogIDNoFilter by specific catalog

24. Generate Image

Generate an AI image for a LinkedIn post using Google Gemini. Requires the user to have linked their Gemini API key in Reepl settings.

{
  "style": "infographic",
  "postContent": "3 ways AI is changing B2B sales in 2026..."
}
ParameterRequiredDescription
styleYesImage style (see table below)
postContentNoPost content for context
customPromptIf style is customYour own image prompt

Available styles:

StyleOutput
infographicProfessional data visuals and charts
minimal-illustrationClean line art illustrations
bold-textTypography and quote cards
screenshot-social-proofMockup screenshots
comic-storyboardComic-style panels
realistic-portraitPhotorealistic scenes
diagram-flowchartDiagrams and process flows
customYour own prompt (requires customPrompt)

Always show the generated image to the user for approval before publishing. Pass the returned URL as mediaUrls when calling publish_to_linkedin or schedule_post.


25. Generate Carousel Content

Generate AI slide content for a LinkedIn carousel. Supports plain text topics, YouTube URLs, and article URLs. Returns slide headlines and body text to pass into create_carousel_draft.

Note: the API adds a hook slide and CTA slide automatically, so the actual slide count will be number_of_slides + 2.

{
  "topic": "remote work productivity tips",
  "number_of_slides": 5
}
{
  "url": "https://youtube.com/watch?v=...",
  "number_of_slides": 6
}
ParameterRequiredDescription
topicNoTopic or subject for the carousel (use for plain text topics)
urlNoYouTube or article URL to extract content from
number_of_slidesNoNumber of content slides to generate (1-10, default: 5)

26. List Carousel Drafts

List the user's carousel drafts saved in Reepl.

{
  "search": "productivity",
  "limit": 10
}
ParameterRequiredDescription
searchNoFilter drafts by title
limitNoNumber of drafts to return (default: 20)

27. Get Carousel Draft

Fetch a single carousel draft by ID, including all slide content, theme, and styling.

{
  "draft_id": "carousel-abc"
}
ParameterRequiredDescription
draft_idYesThe draft ID (use list_carousel_drafts to find IDs)

28. Create Carousel Draft

Save a new carousel draft in Reepl. Pass slides from generate_carousel_content or write your own. If no theme or colors are specified, your saved brand kit styling is applied automatically.

{
  "title": "5 Remote Work Tips",
  "slides": [
    { "headline": "Stop working from the couch", "body": "Your brain associates spaces with activities. Create a dedicated workspace." },
    { "headline": "Time-block your deep work", "body": "90-minute focus blocks beat 8 hours of fragmented attention every time." }
  ],
  "theme": "3"
}
ParameterRequiredDescription
titleYesTitle for this carousel draft
slidesYesArray of slides, each with a headline (required) and optional body
themeNoTheme preset ID ('1' through '22'). Leave unset to use brand kit default
title_font_sizeNoFont size for slide titles: lg, md (default), or sm
body_font_sizeNoFont size for slide body text: lg, md (default), or sm

29. Update Carousel Draft

Update an existing carousel draft. Only provide the fields you want to change -- unspecified fields are left as-is. Note: providing slides replaces ALL slides in the carousel.

{
  "draft_id": "carousel-abc",
  "title": "Updated Title",
  "slides": [
    { "headline": "New headline", "body": "New body text" }
  ]
}
ParameterRequiredDescription
draft_idYesThe ID of the draft to update
titleNoNew title
slidesNoReplacement slides (replaces ALL existing slides)
themeNoNew theme preset ID ('1' through '22')
title_font_sizeNolg, md, or sm
body_font_sizeNolg, md, or sm

30. Delete Carousel Draft

Permanently delete a carousel draft. This cannot be undone.

{
  "draft_id": "carousel-abc"
}
ParameterRequiredDescription
draft_idYesThe ID of the carousel draft to delete

31. Twitter/X: Create Post

Create or schedule a Twitter/X post or thread. Requires a Twitter account connected in Reepl Settings > Integrations and an active Premium subscription.

For a single tweet, pass an array with one item. For a thread, pass multiple items in order.

{
  "threadTweets": [
    { "index": 0, "text": "I spent 6 months studying how top creators grow on LinkedIn. Here's what actually works (thread):" },
    { "index": 1, "text": "1/ Consistency beats virality. Posting 3x/week for 6 months outperforms a single viral post every time." },
    { "index": 2, "text": "2/ Comments matter more than posts. Thoughtful replies on big accounts drive more followers than original posts." }
  ],
  "scheduledFor": "2026-03-15T14:00:00Z"
}
ParameterRequiredDescription
threadTweetsYesArray of tweet objects with index (0-based position) and text (max 280 chars each)
scheduledForNoISO 8601 timestamp. If omitted, post is saved as a draft (status: pending)
linkedPostIdNoThe postId of a LinkedIn post this thread was cross-posted from

Common Patterns

Pattern 1: Write a Post in the User's Voice

1. get_voice_profile          -- read their writing style
2. Ask user for topic          -- what do they want to write about?
3. Write draft (plain text!)   -- match their tone, hooks, vocabulary
4. Show draft, get feedback    -- iterate until they're happy
5. create_draft OR publish     -- save or go live

Pattern 2: Schedule a Week of Content

1. get_voice_profile           -- read writing style
2. get_templates               -- browse content ideas
3. get_saved_posts             -- browse inspiration from collections
4. Write 3-5 posts             -- vary topics, hooks, formats
5. schedule_post (x5)          -- spread across Mon-Fri at varied times

Pattern 3: Repurpose Saved Content

1. get_collections             -- find the right collection
2. get_saved_posts             -- browse posts in it
3. Pick a post, rewrite it     -- new angle, user's voice
4. create_draft or publish     -- save or go live

Pattern 4: Post with AI-Generated Image

1. Write the post content first
2. generate_image              -- use post content as context
3. Show the image to user      -- get approval
4. publish_to_linkedin         -- pass image URL in mediaUrls

Pattern 5: Analyze and Update Voice Profile

1. get_published_posts         -- fetch recent posts (limit: 20)
2. Analyze patterns            -- tone, hooks, vocabulary, structure
3. get_voice_profile           -- check if allowAutoUpdate is true
4. update_voice_profile        -- save learned patterns to generatedProfile

Pattern 6: Create a LinkedIn Carousel

1. Read carousel_guidelines prompt  -- understand content and styling rules
2. generate_carousel_content        -- provide topic or URL
3. Review slides with user          -- adjust if needed
4. create_carousel_draft            -- save with brand kit styling
5. Share the deep link              -- user fine-tunes in Reepl editor
6. update_carousel_draft            -- apply any requested edits

Pattern 7: Cross-Post to Twitter/X

1. Write or retrieve the LinkedIn post content
2. Adapt for Twitter format           -- split into 280-char chunks for threads
3. twitter_create_post                -- schedule or save as draft
4. Pass linkedPostId if cross-posting -- links the Twitter thread to the LinkedIn post

Pattern 8: Schedule a Draft

1. get_drafts                  -- find the draft to publish
2. Ask user for preferred time -- or suggest morning/lunch/evening slots
3. schedule_draft              -- pass draft_id and scheduledFor

Error Handling

ErrorCauseSolution
Session expired or invalidOAuth token expiredRe-authenticate at https://mcp.reepl.io/oauth/authorize
Content exceeds 3000 character limitPost too longShorten the content
draft_id is requiredMissing draft IDCall get_drafts first to find the ID
collectionID is requiredMissing collection IDCall get_collections first to find the ID
GEMINI_NOT_LINKEDNo Gemini API keyUser must link key at https://app.reepl.io/settings/ai-models-api
Rate limit exceededToo many requestsWait a moment and retry
Resource not foundInvalid IDThe draft/post/collection may have been deleted
Couldn't comment on this postReshare or restricted postLinkedIn limitation, not a bug -- try a different post

Best Practices

  1. Always read the voice profile first. Before writing any content, call get_voice_profile to understand the user's writing style. Posts should sound like them, not like an AI.
  2. Plain text only. Never use markdown in post content. No **bold**, no *italic*, no # headings. LinkedIn renders these literally.
  3. Confirm before publishing. Always show the final content and get explicit confirmation before calling publish_to_linkedin, schedule_post, or publish_now. These affect the user's real LinkedIn profile.
  4. Vary scheduling times. Don't default to 9 AM for every post. Ask the user, or suggest varied slots across mornings, lunch, and end of day.
  5. Never fabricate data. Don't invent engagement metrics, analytics, or post performance numbers. Only report what the API returns.
  6. Respect voice profile locks. If allowAutoUpdate is false, do not modify generatedProfile. The user has intentionally locked their voice profile.
  7. Use the library. Before writing from scratch, check templates and saved posts for inspiration. The user has curated these for a reason.
  8. Read carousel guidelines before creating carousels. Call the carousel_guidelines prompt to understand content rules and the slide structure before generating or saving carousel content.

See Also

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

89.18%
按下载量换算11,322

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

未展示

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills