Skip to content
Back to skills

Weibo

ASecurity

Read and post on 微博 / Weibo (weibo.com) with the user's own login cookies (BYOC) — list their recent posts with repost/comment/like counts and publish a new 微博. Use when the user mentions 微博 / Weibo, "我的微博", reading their post engagement, or 发微博 / posting to Weibo.

  • 17 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 17, 2026
ai-agentspythongoshellbashapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 17, 2026

npx -y skills add AceDataCloud/Skills --skill weibo --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Weibo?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Weibo
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/acedatacloud-weibo/badge)](https://www.skillsdirectory.com/skills/acedatacloud-weibo)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: weibo
description: Read and post on 微博 / Weibo (weibo.com) with the user's own login cookies (BYOC) — list their recent posts with repost/comment/like counts and publish a new 微博. Use when the user mentions 微博 / Weibo, "我的微博", reading their post engagement, or 发微博 / posting to Weibo.
when_to_use: |
  Trigger for anything on the user's 微博 (weibo.com) account driven by their own
  login cookie: show who they are, list their recent 微博 with repost / comment /
  like counts, or publish a new 微博. This acts as the user's real account, so
  posting is gated behind an explicit confirmation.
connections: [weibo]
allowed_tools: [Bash]
license: Apache-2.0
metadata:
  author: acedatacloud
  version: "1.0"
  connection_method_preferences:
    weibo/weibo: [cookie]
---

# weibo — read & post on 微博 via your own cookies

Drives the user's **real** 微博 account through the same `weibo.com/ajax` web API
the site uses, authenticated by the login cookie they captured with the ACE
extension. No browser, no third-party deps — just `urllib`.

> ⚠️ **Not yet E2E-verified.** Unlike the other cookie skills (csdn / juejin /
> bilibili / medium), this one was built from the documented web API but could
> not be tested against a live account (no 微博 connection existed at build
> time). The first live run is the verification; if an endpoint shape drifted it
> will surface as a clear error rather than silent breakage.

The connector injects the cookie jar as an env var:

- `WEIBO_COOKIES` — a JSON array of cookies. **Secret — never echo or print it.**
  Writes send the `XSRF-TOKEN` cookie as both the `x-xsrf-token` header and the
  `st` form field (the CLI does this for you).

## CLI

The skill ships [`scripts/weibo.py`](scripts/weibo.py) — self-contained, stdlib only.

```sh
# $SKILL_DIR can point at another skill loaded this turn — anchor on our own
# script, and re-run this at the top of every Bash block (fresh shell each time).
WB="$SKILL_DIR/scripts/weibo.py"; [ -f "$WB" ] || WB=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/weibo.py' 2>/dev/null | head -1)
[ -f "$WB" ] || { echo "weibo script not found (SKILL_DIR=$SKILL_DIR)" >&2; exit 1; }
python3 "$WB" whoami                     # who is logged in (+ counts)
python3 "$WB" posts --limit 20           # my recent 微博 + engagement
```

Engagement comes straight from 微博: `reposts_count` (转发), `comments_count`
(评论), `attitudes_count` (赞).

## Verify the connection first

```sh
WB="$SKILL_DIR/scripts/weibo.py"; [ -f "$WB" ] || WB=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/weibo.py' 2>/dev/null | head -1)
python3 "$WB" whoami
# → {"uid": "...", "name": "...", "statuses_count": ...}
```

On an auth error the cookie is expired — have the user reconnect at
<https://studio.acedata.cloud/console/connectors>. Do **not** loop-retry.

## Posting — GATED (dry-run unless trailing `--confirm`)

微博 are short-form, so there is **no draft step** — a confirmed post goes live.
Without a trailing `--confirm` it dry-runs. `--confirm` is honored **only as the
last argument**. Always show the dry-run, get an explicit "yes", then re-run.

```sh
WB="$SKILL_DIR/scripts/weibo.py"; [ -f "$WB" ] || WB=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/weibo.py' 2>/dev/null | head -1)
python3 "$WB" post --content "你好,这是一条微博"            # dry-run
python3 "$WB" post --content "你好,这是一条微博" --confirm   # PUBLIC 微博 (immediate)
```

- There is **no draft and no private mode** on 微博 — a confirmed post is
  immediately **public**. Always show the dry-run and get explicit approval of
  the exact text before adding `--confirm`.

## Gotchas

- **This is the user's real 微博 account.** Confirm before any post — it is
  immediate and public by default.
- **Not E2E-verified** (see the warning above) — expect to validate the first run.
- **Never print `WEIBO_COOKIES`** — it is full account access.
- **ToS**: acts only on the user's own account with their own captured cookie.

Files in this skill

  • SKILL.md4 KB
  • scripts/weibo.py9.3 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.