跳到正文
cccskills
免费在 GitHub 公开

follow-aleabito

Track Serenity / @aleabitoreddit on X and turn the feed into (1) a beginner-friendly Chinese iMessage digest with first-principles + Buffett-style judgement, (2) cumulative 60-day ticker mention analytics CSVs for a website, (3) a Xiaohongshu writing brief, and (4) a durable private research map. Trigger on requests like "follow aleabitoreddit / AleaBito / Serenity", "daily Chinese updates from that X account", "60-day mention analytics", "ticker mention count", "写小红书 aleabito", "aleabito 研究地图 / research map", or any request for Chinese commentary derived from @aleabitoreddit posts.

中文简介正在准备中。当前显示原文说明。

集成工具X (Twitter)

实测评分 未实测

查看安装方法

包含的文件(13)

  • SKILL.md7.7 KB
  • agents/openai.yaml403 B
  • references/analysis-framework.md3.6 KB
  • references/analytics.md1.5 KB
  • references/xhs-style.md1.7 KB
  • scripts/analyze-mentions.js24.9 KB
  • scripts/build-digest-brief.js7.8 KB
  • scripts/build-xhs-brief.js9.7 KB
  • scripts/fetch-updates.js22.7 KB
  • scripts/mark-seen.js1.6 KB
  • scripts/send-imessage.js3.3 KB
  • scripts/setup-config.js2.3 KB
  • scripts/update-research-map.js6.6 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Follow AleaBito

Purpose

Track @aleabitoreddit on X and produce deliverables grounded only in fetched posts. Always include source URLs. Treat the content as market commentary, not investment advice.

Language / 语言: deliverables default to 中文 (the digest and Xiaohongshu workflows are Chinese-first by design), but any of them can be produced in English when the user asks. The analytics CSVs and research map are language-neutral.

This skill handles four workflows. Pick the one(s) the user asked for and read the matching reference file only when needed:

User intentWorkflowSection
Daily Chinese update / iMessage digestDigestDaily Digest
60-day mention CSVs, ticker leaderboard, website dataAnalyticsMention Analytics + references/analytics.md
Xiaohongshu postXiaohongshuXiaohongshu + references/xhs-style.md
Research mapResearch mapResearch Map

When producing any AI 分析, read references/analysis-framework.md first. All Buffett-style fields default to unverified; escalation requires cited evidence.

Paths

Reports go under $FOLLOW_ALEABITO_REPORTS_DIR. If unset, default to $HOME/Documents/aleabito-reports. Treat all CSV / meta paths below as $FOLLOW_ALEABITO_REPORTS_DIR/<filename>.

Data Sources

Use scripts/fetch-updates.js. It tries:

  1. X API v2 when X_BEARER_TOKEN exists in ~/.follow-aleabito/.env.
  2. X public syndication fallback when no token is configured.
  3. Logged-in Chrome/X page fallback on macOS when anonymous sources return nothing.

Caveats: the syndication fallback can miss the newest posts or truncate long ones. The Chrome fallback may open https://x.com/aleabitoreddit in the active Chrome tab — expand any Show more before extracting. If the JSON output contains warnings, mention them briefly in the digest or setup guidance.

Never invent posts, prices, positions, or links. If no fetched post has a URL, do not include it.

Daily Digest Workflow

cd "${CODEX_HOME:-$HOME/.codex}/skills/follow-aleabito"
node scripts/fetch-updates.js --include-replies --lookback-hours 36 --max-tweets 50 --output /tmp/follow-aleabito-updates.json
node scripts/build-digest-brief.js --input /tmp/follow-aleabito-updates.json --output /tmp/follow-aleabito-brief.md

Read /tmp/follow-aleabito-brief.md (ticker counts, theme groups, high-signal replies, source links) before writing. Use the raw JSON only when the brief is insufficient.

If tweets is empty:

  • If config.notifyWhenEmpty is true, send 今天 @aleabitoreddit 没有抓到新的可发送动态。
  • Otherwise stop without sending.

Digest structure (Chinese, iMessage-sized — signal over completeness):

  • Title: Serenity / @aleabitoreddit 今日动态
  • 今天她重点看什么
  • 2-4 key takeaways grouped by theme.
  • For each included post/theme: 她的观点 → 小白解释 → 第一性原理 → Buffett 直接判断. Read references/analysis-framework.md for the judgement shape and default-unverified rules.
  • Mentioned tickers/themes, original URL, created time.
  • Footer: 仅作信息跟踪,不构成投资建议。

Send via iMessage. Run mark-seen.js only after send-imessage.js returns status: ok.

Cumulative Mention Analytics

Trigger when the user asks for 60-day analytics, ticker mention counts, website-readable CSVs, or ongoing tracking. The workflow is cumulative, not rolling — the 60-day backfill is a seed; later runs only append new events.

Commands:

# initial backfill (only run once unless the events CSV is missing/corrupted)
node scripts/analyze-mentions.js --backfill-days 60 --include-replies --resume

# daily incremental
node scripts/analyze-mentions.js --incremental --include-replies --resume

# rebuild summary CSVs from existing events without hitting the API
node scripts/analyze-mentions.js --rebuild-only --include-replies --resume

Outputs land in $FOLLOW_ALEABITO_REPORTS_DIR:

  • aleabito-mentions-events.csv — event-level rows.
  • aleabito-stock-mentions-cumulative.csv — leaderboard for website home/search.
  • aleabito-stock-mentions-daily.csv — daily ticker trend.
  • aleabito-mentions.meta.json — last update, API status, rate-limit metadata.

For counting rules, API cost rules, and overlap-window guidance, read references/analytics.md.

If the X API fails, keep the previous CSVs and write the failure to .meta.json. Never overwrite good data on failure.

Xiaohongshu Workflow

Trigger when the user asks for a Xiaohongshu post derived from the mention analytics.

node scripts/build-xhs-brief.js \
  --input "$FOLLOW_ALEABITO_REPORTS_DIR/aleabito-stock-mentions-cumulative.csv" \
  --daily "$FOLLOW_ALEABITO_REPORTS_DIR/aleabito-stock-mentions-daily.csv" \
  --output /tmp/follow-aleabito-xhs-brief.md \
  --variants both

Read the generated brief, then write in Chinese. Default to producing both a full version and an under-1000-Chinese-character version unless the user asks for only one.

Read references/xhs-style.md for writing rules, required structure, and the default-unverified Buffett shape.

Research Map Workflow

Trigger when the user wants a durable research map after analytics.

node scripts/update-research-map.js \
  --events "$FOLLOW_ALEABITO_REPORTS_DIR/aleabito-mentions-events.csv" \
  --summary "$FOLLOW_ALEABITO_REPORTS_DIR/aleabito-stock-mentions-cumulative.csv" \
  --output ~/.follow-aleabito/research-map.json

Also writes ~/.follow-aleabito/research-map.md. Preserve existing manual notes and Buffett fields when refreshing. If evidence is missing, keep fields as unverified or research map — the deterministic script must not invent financial facts.

iMessage Delivery

Recipient lives in ~/.follow-aleabito/config.json:

{
  "delivery": {
    "method": "imessage",
    "recipient": "+15551234567"
  }
}
node scripts/send-imessage.js --file /tmp/follow-aleabito-digest.txt
node scripts/mark-seen.js --file /tmp/follow-aleabito-updates.json   # only after send succeeds

If iMessage delivery fails because the recipient is missing, point the user to:

node "${CODEX_HOME:-$HOME/.codex}/skills/follow-aleabito/scripts/setup-config.js" --recipient "<phone-or-apple-id>"

On first run, the user must also grant Messages automation permission in System Settings → Privacy & Security → Automation.

Setup

node "${CODEX_HOME:-$HOME/.codex}/skills/follow-aleabito/scripts/setup-config.js" --recipient "<phone-or-apple-id>"
cp ~/.follow-aleabito/.env.example ~/.follow-aleabito/.env   # then set X_BEARER_TOKEN
export FOLLOW_ALEABITO_REPORTS_DIR="$HOME/Documents/aleabito-reports"   # or wherever the website reads from

Automation

For a daily cron, run in order: fetch-updates.js → write Chinese digest to /tmp/follow-aleabito-digest.txt → send-imessage.js → mark-seen.js only after success. Default recommended time: 8:00 AM in the user's timezone.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Apply @aleabitoreddit ("Serenity")'s distilled stock-analysis method to ANY ticker, sector, or situation — critical-chokepoint / supply-chain-OSINT idea discovery, first-principles value-chain decomposition, a Buffett-style quality gate (moat / profitability / customer-replacement risk, all default unverified), and narrative-vs-fundamentals hygiene. Produces a beginner-friendly Chinese analysis (她的观点 / 小白解释 / 第一性原理 / Buffett 直接判断 / 当前结论) that classifies an idea as 研究地图 vs 可投资结论. Trigger on "analyze like Serenity / 用 aleabito 的方法分析 / 用 Serenity 框架 / critical chokepoint 分析 / 第一性原理 + Buffett 判断这只股 / supply-chain bottleneck thesis". Never emits buy/sell calls.

中文简介正在准备中。当前显示原文说明。

lanfuli/aleabito-serenity-skills942026年6月8日 更新

Use @aleabitoreddit ("Serenity")'s full mention archive (built by the follow-aleabito skill) to anticipate where her attention is moving and generate candidate ideas in her style. Two modes — (1) RADAR reads the live mention data for attention momentum (which tickers she is heating up on, new entrants, conviction core, theme rotation) via scripts/radar.js; (2) GENERATOR applies her empirically-mined patterns (theme-rotation logic, selection signature, catalyst playbook) to propose her likely next focus. Every candidate is gated through the serenity-method checklist. This is a CANDIDATE GENERATOR + CHECKLIST, never an oracle or buy/sell signal. Trigger on "what is Serenity ramping on / her next pick / aleabito radar / predict her next move / generate ideas like her / 她下一个可能看什么".

中文简介正在准备中。当前显示原文说明。

lanfuli/aleabito-serenity-skills942026年6月8日 更新

查看 lanfuli 的全部技能

报告此技能的问题