skills/mine/tweetsmash-api/SKILL.md
Uses the TweetSmash REST API to fetch bookmarks, inspect labels, and add or remove labels from saved tweets. Use when integrating TweetSmash into scripts, agents, workflows, cron jobs, or internal tools that need bookmark retrieval, filtering, pagination, or label management. Do not use for direct browser automation inside TweetSmash, unrelated X or Twitter APIs, or tasks that only need product marketing copy.
npx skillsauth add pedronauck/skills tweetsmash-apiInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill to work directly with the TweetSmash REST API after verifying the current docs. Read references/api-reference.md before choosing an endpoint. Read references/bookmarks-filters.md only when bookmark filtering is required.
Step 1: Validate Credentials and Scope
TWEETSMASH_API_KEY in the shell environment.references/api-reference.md to confirm the current endpoint, required headers, rate limits, and status codes.references/bookmarks-filters.md.Step 2: Build the Request
Authorization: Bearer $TWEETSMASH_API_KEY on every request.Content-Type: application/json for all examples in this skill. Keep the base URL as https://api.tweetsmash.com/v1.python3 scripts/build-bookmarks-url.py with the needed flags to generate a correctly encoded URL.assets/add-labels-body.json and fill in tweet_ids plus either label_id or label_name.assets/remove-labels-body.json and fill in tweet_ids plus label_name.Step 3: Execute the Correct Endpoint
GET /bookmarks. Use the URL from scripts/build-bookmarks-url.py when filters, search, or cursors are present.GET /labels when the task needs current label IDs, label names, or usage counts.POST /labels/add when the task needs to organize one or more bookmarked tweets.POST /labels/remove when the task needs to clean up or reclassify bookmarked tweets.Step 4: Verify the Response
"status": true before reporting success.meta.next_cursor, meta.limit, and meta.total_count when pagination matters.GET /labels again after a mutation to verify the resulting state.Step 5: Return a Usable Result
meta.next_cursor so the next request can continue from the prior page.401, confirm that the bearer token is present, non-empty, and taken from the correct TweetSmash account.402, stop and report that the current plan does not permit the requested API access.429, stop sending additional requests, note the documented limit of 100 requests per hour per API key, and retry later.python3 scripts/build-bookmarks-url.py --help and rebuild the URL instead of manually concatenating query strings.GET /labels and then rerun the mutation using the confirmed label identifier or label name.development
Deep review of branch diffs, working trees, or GitHub PRs at any size. Use when the user asks for CodeRabbit-grade review, an incremental re-review after new pushes, publication of findings to a PR, a cross-LLM peer-review verdict round, or conformance review against spec artifacts. Don't use for applying fixes, reviewing specs or PRDs as documents, or quick single-file feedback.
tools
Orchestrate Claude and Codex worker TUIs from a controller agent through herdr panes and the herdr socket CLI. Use when delegating bounded tasks to herdr worker panes, running user-activated plan-first delegations (Claude Code plan mode, Codex Plan mode), waiting on native agent status (idle, working, blocked, done), or verifying worker reports. Workers launch as interactive TUIs via herdr agent start — never through headless runners (compozy exec, claude -p, codex exec). Not for cmux workspaces (see cmux-orchestration) and not for end-user herdr control.
tools
TanStack Query, Router, and Form patterns for React. Use when writing useQuery/queryOptions, mutations, caching, file-based routes, search params, loaders, or TanStack Form validation. Don't use for TanStack Start, TanStack DB/collections, Zustand client state, or non-TanStack routing.
development
Use when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or otherwise improve a frontend interface. Covers websites, landing pages, dashboards, product UI, app shells, components, forms, settings, onboarding, and empty states. Handles UX review, visual hierarchy, information architecture, cognitive load, accessibility, performance, responsive behavior, theming, anti-patterns, typography, fonts, spacing, layout, alignment, color, motion, micro-interactions, UX copy, error states, edge cases, i18n, and reusable design systems or tokens. Also use for bland designs that need to become bolder or more delightful, loud designs that should become quieter, live browser iteration on UI elements, or ambitious visual effects that should feel technically extraordinary. Not for backend-only or non-UI tasks.