本文へ移動
cccskills
無料GitHub で公開

threads

Read and manage the user's Threads account: profile, posts, feed, saved posts, activity, insights, social graph, search, trends, and a specific post by URL or ID. Can tune feed ranking and publish posts on request.

インストール方法を見る

含まれるファイル(3)

  • SKILL.md19.7 KB
  • connector_auth_config.yaml46 B
  • manifest.yaml918 B

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Threads CLI

Purpose

Read and manage authenticated Threads data using the threads-cli companion CLI. Reads, dear-algo-whisper, and approved publish-post invocations are available wherever the Threads skill is supported.

Use the separate threads_messages skill for Threads inboxes and message threads.

Account Linking

Before running any other command, verify the user's Threads account is connected by running threads-cli accounts. If the command returns account info (one or more accounts with id), the account is connected — proceed normally. Cache this result for the rest of the conversation; do not re-run the check before every command. If any subsequent command fails with an auth or account error, re-run threads-cli accounts to recheck account linking status.

If the command fails or returns an empty result indicating no account is linked, the account is not connected. Get the connect URL by running threads-cli connect-url (it outputs JSON with a connect_url field), then tell the user, substituting that URL:

Your Threads account is not connected. To connect it, visit [Meta Accounts Center](`connect_url`) and link your Threads account.

If the user asks to disconnect their Threads account, run threads-cli disconnect-url (it outputs JSON with a disconnect_url field) and direct them to that URL:

To disconnect your Threads account, visit [Meta Accounts Center](`disconnect_url`) and remove the linked account.

Always read these URLs from the command output rather than hardcoding them.

Tooling

Use exec to run:

threads-cli <target> [options]

Targets:

  • accounts
  • profile
  • activity-feed
  • liked-media
  • saved-posts
  • insights-overview
  • post-insights
  • top-posts
  • user-profile
  • profile-threads
  • profile-replies
  • profile-media
  • followers
  • following
  • post
  • fetch-post-comments (alias: comments)
  • fetch-post-likers (alias: likers)
  • feedback-hub-overview
  • feedback-hub-tab
  • trends
  • search
  • feed
  • publish-post (hidden; explicit confirmation required)
  • dear-algo-whisper

Post output

feed and post use the same compact social_posts_v1 presentation as instagram-cli. Use the filtered result as authoritative; do not reconstruct omitted fields. An explicit error-only post row is omitted and its message is surfaced as provider_error.

Global options

  • --account-id <threads_account_id> (required for all commands except accounts) — select which Threads account to operate on. The value must be the authenticated user's own id field from the accounts response. Always call accounts first. If it returns multiple entries, ask the user which account to use.
  • --retries <N> — retry transient failures (default: 0). This is not supported for dear-algo-whisper or publish-post, because a retry could duplicate a mutation.

Commands

Accounts

List Threads accounts associated with the currently authenticated user.

threads-cli accounts

Profile

Fetch the current user's own Threads profile.

threads-cli profile --account-id <threads_account_id>

Activity Feed

Fetch the user's activity notifications.

threads-cli activity-feed --account-id <threads_account_id>
threads-cli activity-feed --account-id <threads_account_id> --first 20
threads-cli activity-feed --account-id <threads_account_id> --category-filter text_post_app_mentions
threads-cli activity-feed --account-id <threads_account_id> --after <cursor>

Category filters: text_post_app_conversations, text_post_app_following, text_post_app_private_follow_requests, text_post_app_mentions, text_post_app_replies, text_post_app_user_follows, text_post_app_quote_posts, text_post_app_reposts.

Liked Media

Fetch posts you've liked. This uses the shared engagement query and supports --since, --until, --sort-order, --limit, and --after.

threads-cli liked-media --account-id <threads_account_id>
threads-cli liked-media --account-id <threads_account_id> --limit 20
threads-cli liked-media --account-id <threads_account_id> --since 2026-03-01 --until 2026-03-20
threads-cli liked-media --account-id <threads_account_id> --sort-order asc
threads-cli liked-media --account-id <threads_account_id> --after <cursor>

Saved Posts

Fetch your saved posts. This uses the shared engagement query and supports --since, --until, --sort-order, --limit, and --after.

threads-cli saved-posts --account-id <threads_account_id>
threads-cli saved-posts --account-id <threads_account_id> --limit 20
threads-cli saved-posts --account-id <threads_account_id> --since 2026-03-01 --until 2026-03-20
threads-cli saved-posts --account-id <threads_account_id> --after <cursor>

Insights Overview

Fetch account-level insights (views, likes, quotes, replies, reposts, traffic sources, demographics).

threads-cli insights-overview --account-id <threads_account_id> --start-date 2026-03-13 --end-date 2026-03-20
threads-cli insights-overview --account-id <threads_account_id> --start-date 2026-03-13 --end-date 2026-03-20 --sections followers

Section values: summary, views, interactions, followers, demographics, all.

The typed insights backend uses the Threads account selected by --account-id. Do not retry an account-binding failure through /gq; run accounts again and pass one of the returned account IDs.

Post-Level Insights

Fetch insights for a specific post.

threads-cli post-insights --account-id <threads_account_id> --post-id 3856993780407305605

Top Posts

Fetch the most-viewed posts and the service-defined top three most-liked posts over a date range. --count controls most-viewed posts and is bounded to 50.

threads-cli top-posts --account-id <threads_account_id> --start-date 2026-03-13 --end-date 2026-03-20
threads-cli top-posts --account-id <threads_account_id> --start-date 2026-03-13 --end-date 2026-03-20 --count 5

Other User's Profile

Fetch another user's profile by numeric Threads user FBID. This command does not accept usernames or profile URLs.

threads-cli user-profile --account-id <threads_account_id> --user-id 12345678

Profile Threads

Fetch threads by numeric Threads user FBID. --limit is accepted as a compatibility alias for --first.

threads-cli profile-threads --account-id <threads_account_id> --user-id 12345678
threads-cli profile-threads --account-id <threads_account_id> --user-id 12345678 --first 10 --after <cursor>

Profile Replies

Fetch a user's replies.

threads-cli profile-replies --account-id <threads_account_id> --user-id 12345678
threads-cli profile-replies --account-id <threads_account_id> --user-id 12345678 --first 10 --after <cursor>

Profile Media

Fetch a user's media posts (images, videos, carousels).

threads-cli profile-media --account-id <threads_account_id> --user-id 12345678
threads-cli profile-media --account-id <threads_account_id> --user-id 12345678 --first 10 --after <cursor>

Followers

Fetch a user's followers list.

threads-cli followers --account-id <threads_account_id> --user-id 12345678
threads-cli followers --account-id <threads_account_id> --user-id 12345678 --first 10 --after <cursor>

Following

Fetch a user's following list.

threads-cli following --account-id <threads_account_id> --user-id 12345678
threads-cli following --account-id <threads_account_id> --user-id 12345678 --first 10 --after <cursor>

Post by URL or ID

Fetch a specific post. Use fetch-post-comments for its replies.

Exactly one of --url or --post-id (alias --id) is required.

When the user supplies a Threads permalink or share link (threads.com or threads.net), use --url first and pass the original URL unchanged. WWW resolves it and enforces access.

threads-cli post --account-id <threads_account_id> --url https://www.threads.com/@carnage4life/post/DdU_q-9mLbt
threads-cli post --account-id <threads_account_id> --url https://www.threads.com/share/HCmFh1x9l/

Use --post-id when you already have a known numeric post FBID:

threads-cli post --account-id <threads_account_id> --post-id 3856993780407305605

Fetch Post Comments

Fetch comments for one or more post media IDs. Use --since, --until, --sort-order, --limit, and repeated/comma-separated --author-id filters when needed.

threads-cli fetch-post-comments --account-id <threads_account_id> --post-ids 3856993780407305605
threads-cli fetch-post-comments --account-id <threads_account_id> --post-ids 3856993780407305605,3856993780407305606 --limit 20 --after <cursor>
threads-cli fetch-post-comments --account-id <threads_account_id> --post-ids 3856993780407305605 --since 2026-03-01 --until 2026-03-20 --author-id 12345678
threads-cli comments --account-id <threads_account_id> --post-ids 3856993780407305605

Fetch Post Likers

Fetch users who liked one or more post media IDs. Use --since, --until, --sort-order, --limit, and repeated/comma-separated --reactor-id filters when needed.

threads-cli fetch-post-likers --account-id <threads_account_id> --post-ids 3856993780407305605
threads-cli fetch-post-likers --account-id <threads_account_id> --post-ids 3856993780407305605 --limit 20 --after <cursor>
threads-cli fetch-post-likers --account-id <threads_account_id> --post-ids 3856993780407305605 --since 2026-03-01 --until 2026-03-20 --reactor-id 12345678
threads-cli likers --account-id <threads_account_id> --post-ids 3856993780407305605

Feedback Hub Overview

Fetch a post's engagement summary (likes, reposts, quotes counts).

threads-cli feedback-hub-overview --account-id <threads_account_id> --post-id 3856993780407305605

Feedback Hub Tab

Fetch paginated lists of users who liked, reposted, or quoted a post.

threads-cli feedback-hub-tab --account-id <threads_account_id> --post-id 3856993780407305605 --tab-type like
threads-cli feedback-hub-tab --account-id <threads_account_id> --post-id 3856993780407305605 --tab-type repost --first 10
threads-cli feedback-hub-tab --account-id <threads_account_id> --post-id 3856993780407305605 --tab-type quote --after <cursor>

Trends

Fetch trending topics on Threads.

threads-cli trends --account-id <threads_account_id>
threads-cli trends --account-id <threads_account_id> --first 10

Search

Search Threads by keyword, or dive deeper into a trend.

threads-cli search --account-id <threads_account_id> --query "AI news"
threads-cli search --account-id <threads_account_id> --query "AI news" --recent 1
threads-cli search --account-id <threads_account_id> --query "trending topic" --trend-fbid 987654
threads-cli search --account-id <threads_account_id> --query "AI" --first 10 --after <cursor>

Use --recent 1 for "Recent" tab results instead of "Top".

Feed

Fetch the ranked feed (For You or Following).

For You feed:

threads-cli feed --account-id <threads_account_id> --variant for_you

Following feed:

threads-cli feed --account-id <threads_account_id> --variant following
threads-cli feed --account-id <threads_account_id> --variant following --sort-by recent

For all feed variants, use --after for pagination:

threads-cli feed --account-id <threads_account_id> --variant for_you --after <cursor>

Publish a post

publish-post is a hidden write command. It publishes a normal Threads post in one approved operation and returns the post ID. There is no public draft step and no creation handle to pass between commands.

Text must contain at least one non-whitespace character when no media is present. Every byte of accepted text, including leading or trailing whitespace and Unicode, is preserved through confirmation and publication. A post may include one to twenty ordered local images or videos from the Hatch workspace, optionally reply to a specific post, and set who can reply. If a file is outside the workspace, copy it into the workspace first; never use a /tmp path.

Run threads-cli accounts first and pass the selected account's numeric id unchanged as --account-id. If multiple accounts are returned, ask which one to use. Account and reply targets are canonical positive decimal FBIDs with no sign, leading zero, or surrounding whitespace; never derive one from a URL or username.

threads-cli publish-post --account-id <threads_account_fbid> --text "Hello Threads"
threads-cli publish-post --account-id <threads_account_fbid> --text "Caption" --media-item '{"file":"/workspace/Launch photo.jpg","alt_text":"Description"}'
threads-cli publish-post --account-id <threads_account_fbid> --text "Mixed media" --media-item '{"file":"/workspace/first.jpg","alt_text":"First image"}' --media-item '{"file":"/workspace/second.mp4","cover":"/workspace/second-cover.jpg"}'
threads-cli publish-post --account-id <threads_account_fbid> --text "Reply video" --media-item '{"file":"/workspace/video.mp4","cover":"/workspace/video-cover.jpg"}' --reply-to-post-fbid <post_fbid> --reply-control mentioned_only

Reply control accepts exactly everyone, accounts_you_follow, mentioned_only, parent_post_author_only, or followers_only. The old following, mentioned, and followers spellings are invalid. Never silently translate an older spelling.

--media-item is repeatable from one to twenty times. Each JSON value has exactly file, optional cover, and optional exact alt_text. Supported media files are JPEG, PNG, static WebP, MP4, and MOV, at most 100 MB each. Media type is inferred from the extension. Every MP4/MOV requires a JPEG, PNG, or WebP cover; images reject cover. File order is display order, and each cover is kept with its video item. Omit all media items for a text-only post. One item publishes an image or video; two to twenty items publish one carousel in the supplied order.

After approval, the CLI reads every declared file through its privsep input and multipart-uploads it to the private Threads staging endpoint. A single item is staged with its exact text, alt text, and reply settings, then publish-post receives only the private returned creation ID. For a carousel, the CLI stages each ordered item with empty text, no reply settings, and is_carousel_item=true, validates every distinct returned creation ID, then publishes one media_type=CAROUSEL parent with the ordered children, exact text, and optional reply fields. Paths and creation IDs remain internal.

The CLI validates the complete post before approval. One content.post approval covers the account, human reply context, reply control, exact text, and all ordered media. Confirmation shows each item from an authenticated workspace preview resource with a safe basename and optional exact alt text; it also shows every video cover as an adjacent image attachment immediately after its video. The twenty-media maximum can therefore produce forty visual attachments. Confirmation never substitutes raw identifiers. Missing or unsafe names become Threads image or Threads video. Names must be nonempty after trimming, at most 255 Unicode scalar characters, and contain no slash, backslash, control character, numeric-only stem, hexadecimal digest stem, or provider/upload identifier. Alt text must be nonempty after trimming, at most 1024 Unicode scalar characters, and contain no control character. Truncation fails closed.

After approval, every write uses zero retries. A child failure or duplicate handle stops immediately without creating later children or publishing the parent. Any later attempt is a new invocation requiring new explicit approval. Creation IDs are accepted only from the private staging response.

Post write safety

  1. Never publish until the explicit Hatch confirmation window is approved. A decline or dismissal ends the action.
  2. Never use transport retries. A child or parent failure is terminal and ambiguous. Do not continue a failed carousel. Any later attempt is a new invocation with a new explicit approval.
  3. Show exact post text, exact reply control, all ordered media items, and every video cover described above. Resolve account and reply labels on a best-effort basis for up to 30 seconds. If lookup times out or returns an error, malformed data, or a missing/unsafe label, show a non-identifying
    Unverified Threads …
    placeholder and continue to explicit approval; never substitute its raw identifier. Never show account, reply, child, creation, or post IDs or local paths in normal prose.
  4. Post text is trimmed only to test emptiness. Every byte of a nonempty value, including leading/trailing whitespace and Unicode, is preserved in both the structured confirmation preview and dispatched request. If the full text cannot fit without preview truncation, the write is rejected.
  5. This write command is available wherever the Threads skill is supported, but every invocation still requires its own explicit confirmation.
  6. Respect authorization, account-selection, and quota failures. Do not bypass them through an alternate or undocumented command path.
  7. Read the published post back and compare it with the approved snapshot when the exact publication result matters.

Dear Algo Whisper

Send a message directly to the Threads ranking algorithm to modify what the user sees in their feed (e.g. "show me less politics", "more cat content"). This command is available to all supported users, and a clear user request may proceed without an additional confirmation.

threads-cli dear-algo-whisper --account-id <threads_account_id> --message "show me less politics"

Operating rules

  1. This skill reads Threads data the authenticated user can access — their own account plus posts they supply links to — not general Threads search.
  2. Always call accounts first to obtain the account id for --account-id. Cache this value for subsequent commands in the same conversation. If accounts returns no entries, direct the user to Meta Accounts Center to link a Threads account (refer to the "Account Linking" section for details).
  3. Minimize API calls to avoid rate limiting. The Threads API enforces strict rate limits — excessive calls will result in 429 Too Many Requests errors that are not retried. Follow these principles:
    • Batch your information gathering. Before making calls, plan which data you actually need. Don't fetch data speculatively.
    • Reuse data from earlier responses. If you already fetched accounts or profile, extract IDs and usernames from that response instead of calling again.
    • Avoid redundant pagination. Only paginate (--after) when the user explicitly needs more results. Don't automatically fetch all pages.
    • Never call the same command twice with identical arguments in one conversation unless the previous call failed or the user explicitly asks for a refresh.
  4. Avoid requests to persistently / frequently poll these commands.
  5. Use numeric Threads FBIDs for account, user, post, and other entity identifiers. Do not derive an identifier from a Threads URL or pass a URL where an FBID is required. The one exception is post --url, which takes the original Threads URL as-is and lets WWW resolve it.
  6. Treat U18 enforcement as a server-side invariant. Do not reconstruct filtered fields, retry through /gq, or otherwise bypass server results.
  7. Use the structured, filtered media result returned by each named read command; do not reconstruct omitted provider fields.

Output

The CLI prints decoded JSON to stdout. publish-post prints exactly {"post_id":"<string>"}. Treat the value as a machine-only workflow handle and never repeat it in user-facing prose or an approval preview.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

3d-object

無料

three.js model, downloadable as OBJ or GLB

日本語の概要は準備中です。原文の説明を表示しています。

asgeirtj/system_prompts_leaks6.9万2026年10月12日 更新

Manage your private to-do list for the user. Use to add or update tasks, record what they are waiting on, track blockers, mark tasks complete or canceled, and clean up the list. Not for Dreamers or external task trackers.

日本語の概要は準備中です。原文の説明を表示しています。

asgeirtj/system_prompts_leaks6.9万2026年10月12日 更新

agents

無料

Run a goal as a project: you coordinate. Use for "agents <task>", "take this to done", "work on this in parallel", "what are my threads doing", "pick up <slug>", "resume <slug>", "keep going until it is merged". Under `/agents` you do the work yourself unless it needs several lanes or a long wait — you judge; the plan line says why. No target you could verify (a file, API, number or measure) → the grill interview first, not threads. Read this skill before proposing anything for `/agents`: without it a proposal is in-session subagents.

日本語の概要は準備中です。原文の説明を表示しています。

asgeirtj/system_prompts_leaks6.9万2026年10月12日 更新

Timeline-based motion design

日本語の概要は準備中です。原文の説明を表示しています。

asgeirtj/system_prompts_leaks6.9万2026年10月12日 更新

The user's synced Apple Health (HealthKit) data: daily metrics (steps, distance, calories, heart rate, HRV, VO2max), sleep sessions (stages, quality, efficiency), and workouts.

日本語の概要は準備中です。原文の説明を表示しています。

asgeirtj/system_prompts_leaks6.9万2026年10月12日 更新

Create, read, edit, or manipulate Word documents (.docx) and Word templates (.dotx). Use whenever a build task's artifact kind is document with the default docx output, or the task mentions a Word doc, .docx, or .dotx, extracts or reorganizes content from one, inserts or replaces images, does find-and-replace in one, or works with tracked changes (redlines) or comments. Covers python-docx generation, raw OOXML editing of existing files, document structure and formatting, and render verification. Not for PDFs, spreadsheets, or Google Docs.

日本語の概要は準備中です。原文の説明を表示しています。

asgeirtj/system_prompts_leaks6.9万2026年10月12日 更新

asgeirtj のスキルをすべて見る

このスキルの問題を報告する