← ClaudeAtlas

habrlisted

Read, update, preview, and publish Habr article drafts through the user's encrypted Habr login cookies. Use when the user mentions Habr, publishing to the Russian developer community, or adapting a technical article for Habr.
AceDataCloud/Skills · ★ 13 · AI & Automation · score 73
Install: claude install-skill AceDataCloud/Skills
# Habr Cookie client Habr does not publish a supported write API. This Skill uses the current `https://habr.com/kek/v2/*` endpoints used by Habr's own web editor. The connector encrypts the Cookie jar at rest, then injects a transient decrypted JSON copy as `$HABR_COOKIES` only inside the Skill sandbox. Never print it, pass it in command arguments, or write it to disk. ```bash H="$SKILL_DIR/scripts/habr.py" [ -f "$H" ] || H=$(find /tmp -maxdepth 8 -path '*/skills/*/habr/scripts/habr.py' 2>/dev/null | head -1) [ -f "$H" ] || { echo "habr script not found" >&2; exit 1; } python3 "$H" drafts --limit 20 python3 "$H" get --id ARTICLE_ID > draft.json ``` An auth error means the Cookie expired. Ask the user to reconnect Habr at <https://auth.acedata.cloud/user/connections>; never retry in a loop. ## Save or preview a draft Habr's private editor schema can change. Preserve the complete object returned by `get`, edit only intended fields, and pass the resulting JSON back rather than constructing a partial payload from memory. The client derives a stable `idempotenceKey` from the payload when one is absent, so dry-run and confirmed save use the same key. ```bash # Edit draft.json while preserving unknown fields, then inspect without writing. python3 "$H" save --id ARTICLE_ID --payload-file draft.json python3 "$H" preview --payload-file draft.json # Save only after showing the final title/body/hubs/tags and receiving approval. python3 "$H" save --id ARTICLE_ID --payload-file dra