segmentfault

v2026.09.24

Read the connected SegmentFault 思否 (segmentfault.com) account and create Markdown article drafts with the user's own login cookies (BYOC). Use when the user mentions SegmentFault / 思否, wants to save a 思否 draft, or asks who their connected 思否 account is.

GitHub
Install command
npx skhub add acedatacloud/segmentfault
Markdown
SKILL.md

segmentfault — read & draft on 思否 via your own cookies

Drives the user's real SegmentFault account through the same segmentfault.com/gateway endpoints the site uses, authenticated by the login cookie they captured with the ACE extension. No browser, no third-party deps — just urllib.

The connector injects the cookie jar as a JSON env var $SEGMENTFAULT_COOKIES. Never print it.

python3 "$SKILL_DIR/scripts/segmentfault.py" whoami

If $SKILL_DIR points at a different skill loaded in the same turn, resolve this skill's directory explicitly before running the commands below.

Important: draft only

SegmentFault's write endpoint (/gateway/draft) creates a draft. This skill returns the draft's editor URL and does not publish. Tell the user plainly that they must open that URL and publish themselves — do not claim the article went live.

Verify the connection first

python3 "$SKILL_DIR/scripts/segmentfault.py" whoami

If this fails with an auth error, the cookie has expired. Ask the user to reconnect at https://studio.acedata.cloud/console/connectors rather than retrying.

Create a draft — GATED

Prepare the complete Markdown in a file. The first call is always a dry run and does not write anything.

# Dry run — shows exactly what would be written.
python3 "$SKILL_DIR/scripts/segmentfault.py" draft \
  --title "标题" --content-file /tmp/article.md --tags "python,api"

# Actually create the draft after the user confirms.
python3 "$SKILL_DIR/scripts/segmentfault.py" draft \
  --title "标题" --content-file /tmp/article.md --tags "python,api" --confirm

--confirm is valid only as the final argument. Show the title, tags and full content to the user before writing.

Gotchas

  • The write API needs a per-session token scraped from the /write page. If the CLI reports it could not find that token, the cookie is stale — reconnect rather than retrying.
  • A restricted account (禁言 / 锁定) is reported as an explicit error. Do not retry; tell the user their account is restricted.
  • Content is sent as Markdown. Do not pre-render it to HTML.
  • Images referenced by external URL are not re-hosted. If the source host blocks hotlinking they will not render; mention this when the article has images.
  • Do not retry a timed-out write automatically — the outcome may be unknown and a retry can create a duplicate draft.

Record the output

This skill only produces drafts, so do not call publish_artifact. Report the returned draft_id and edit_url to the user instead.

Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

NOASSERTION

Source path

skills/segmentfault

Default branch

main

Latest commit

57cc298

Tree SHA

acaa402