The goal of this Skill is not copy-trading, nor evaluating the blogger themselves, but turning the viewpoints of high-quality personal information sources into auditable, verifiable, continuable research input.
For people: see first each day "what the blogger posted today, which items are worth reading, where the links are, and what to check next."
For the agent: write only content with research value into the progressive-investment-research workspace; raw material and low-value content go into the archive and do not enter the default recovery surface.
Inviolable boundaries
- Explanations, daily reports, and dossier templates intended for users and agents must be primarily in Chinese; English is retained only in necessary places such as enums, script parameters, platform fields, and source-text excerpts.
- This is a general local version of the original PaiWork Serenity tracking process, but it does not replace the
serenity-thesis-trackeroriginal; Serenity is only one of the built-in information sources. - The built-in sources currently retain only Serenity and RihardJarc; other creators must be explicitly onboarded via the add-source process, and incomplete cases are not presupposed.
- X/Twitter does not call
x-digestby default; prefer the Codex Chrome extension, then use this Skill's built-in browser-bridge collector, user-exported material, or a future explicitly configured API adapter. - Public mirror sites, search snippets, and cached pages may only serve as auxiliary leads; they cannot be treated as successful live X acceptance.
- Official X/Twitter daily reports and active routes may only use source-language original text or complete manual exports; X UI auto-translation, search summaries, public mirrors, and text that has not clicked "Show original" or expanded "Show more" are all unqualified. When only such material has been captured, it must be blocked and marked blocked, no official daily report may be generated, and it must not be written into the research workspace.
- Blogger opinions cannot directly override
current-synthesis.md, modules, companies, or models. - Daily reports are placed in the archive for people to view and audit; by default the agent restores and reads only the active surface of progressive research.
- X posts, YouTube transcripts, podcasts, newsletters, and copied snippets are all first handled as source leads, and only after verification may they possibly enter the model.
Default process
-
Confirm information source and dossier
- When choosing Serenity, RihardJarc, or a new source, read
references/source-registry.md。 - If there is no dossier yet, use
scripts/scaffold_creator_dossier.pyto create the progressive research skeleton. - If the dossier already exists, first read
context.md、current-synthesis.md、model-map.md、source-leads-index.md、open-questions.md、update-log.md, as well as the relevantmodules/、companies/。
- When choosing Serenity, RihardJarc, or a new source, read
-
Collect updates
- X/Twitter: prefer using the Codex Chrome extension to read the X page DOM in the user's logged-in Chrome; when unavailable, then use
scripts/fetch_x_daily.pyto connect to the user-authorized local browser bridge. - After X/Twitter scraping, it must pass the original-text quality gate: the scraper will attempt to click
显示原文/Show originaland显示更多/Show more; entries that still contain UI translation or unexpanded markers will be removed. If there is no qualified original text, the status for this round is blocked, and no daily report may be delivered. - If live X scraping fails, you may use
--fixture-jsonl, users export or manually copy content to generate a "non-live daily report", but the report must indicatecollection_status/known_gaps, and must not be described as breakpoint-free acceptance. - YouTube: use
scripts/fetch_youtube_transcript.pyto callyt-dlpto fetch subtitles/transcripts. Missingyt-dlpis a setup failure, not "no updates". - Manual input: can accept pasted text, local files, screenshots, or exported materials, but the source status must be clearly indicated.
- X/Twitter: prefer using the Codex Chrome extension to read the X page DOM in the user's logged-in Chrome; when unavailable, then use
-
Generate daily report
- Use the main daily report to
scripts/build_daily_report.pygeneratearchive/creator-daily/<source_id>/<YYYY-MM-DD>.md, and it must merge all platforms already fetched for that blogger on that day. - build will hard-block
x-ui-auto-translated、summary-only、original text was not expanded, markers such as翻译自/显示原文/显示更多in search snippets, public mirrors, and raw text; when encountering these inputs, do not generate a formal daily report. scripts/normalize_intake.pyis only used as a single-platform normalization/debugging tool; a single-platform daily report must not be allowed to overwrite the final main daily report.- The daily report standard aligns with the PaiWork version: executive summary, sources and fetch status, today's changes, materiality score, content_type, research object/claim, low-value content, links most worth manual review, and next-step research tasks.
- The daily report must retain: links, publish time/fetch time, topic/company, importance, recommended action, Chinese summary, and raw/transcript citations.
- Do not save long original text by default; save long transcripts separately and link to them in the daily report.
- Use the main daily report to
-
Decide whether to write to the research workspace
- Before writing, read
references/intake-contract.mdandreferences/research-bridge.md。 - The target workspace written by this Skill depends by default on the
progressive-investment-researchstandard. If the current environment does not have this Skill, does not have a compatible dossier structure, or the agent cannot readcurrent-synthesis.md/model-map.md/modules//companies/, it must first prompt to install/enableprogressive-investment-researchor create a compatible workspace; it must not only generate blank active files. - After each main daily report is generated, it must run
scripts/route_research_updates.pyto automatically break it down into the workspace. - route is only the first step, not the final deliverable. After route, verification and filling that can be done in this round must be completed according to the progressive research standard: prioritize first-hand sources or strong second-hand sources, and fill module pages, company pages, key relationships, bottlenecks, fact tables, and verification status to a continuable level; only remaining questions that cannot be verified or that would change the model go into
open-questions.md。 - Automated output must answer: which companies are involved, what the logic is, which industry it belongs to, what remains to be verified, and what can be researched later.
- After automatic route, the active recovery surface must be updated:
source-leads-index.md、model-map.md、current-synthesis.md。source-leads-index.mdrecords source lead routing and does not represent a model change. - Company-related automatic writing
companies/<slug>.md; objects such as SIVE no longer get a separate tracker. - Industry/mechanism automatic writing
modules/<axis>.md。 modules/andcompanies/must not deliver empty shells: do not leave empty tables, write only "to be filled in after verification", or have only template fields. If evidence is insufficient, at least state the current source lead, sources checked, evidence status, falsifiable path, and why it cannot be upgraded for now.- Only content that could change the model if research or verification truly continues is written to
open-questions.md; do not stuff all daily report entries into open questions. archive-onlyandnoisedo not write to active files.- When the core model is affected,
model-candidatemust first be formed, orcurrent-model-update, and preserve the evidence boundary. - When other dossiers are involved, only write a bridge candidate; do not silently modify external dossiers.
- Before writing, read
-
For the closing report, follow "daily report first".
- First give the daily report path and what was posted today.
- Then list research writes, open questions, bridge candidates, skips/noise, access failures, and verification results.
Dependencies and automation
- This Skill's active writes depend on the dossier standards of
progressive-investment-research. If that Skill is not installed in the environment, you must first prompt for installation, or first create a compatible progressive research workspace. - The user can have the Agent generate a daily automation task: at a fixed time each day, fetch registered sources and generate
archive/creator-daily/<source_id>/<YYYY-MM-DD>.md, then runscripts/route_research_updates.pyto break it down into the workspace and perform executable verification. - The automation task must distinguish between "no valid updates" and "fetch failure/login failure/permission failure/missing subtitles/UI auto-translation interception"; failures must not be written as no updates.
Built-in sources
serenity: X-first source. Seed locator:@aleabitoreddit/https://x.com/aleabitoreddit. Treat all opinions first as unverified source leads.rihardjarc: X + newsletter source. Seed locator:@RihardJarc/https://x.com/RihardJarc, with UncoverAlpha as a supplementary source. Suitable for AI infrastructure, cloud CapEx, TPU/GPU economics, hyperscaler ASIC, and semiconductor supply chain source leads. The account spelling isRihardJarc, notRichardJarc。
Built-in sources are only default configuration, not a hardcoded process. The locator can be updated during actual operation.
YouTube is an optional platform capability, not the default platform for built-in sources; only when the source registry explicitly registers that creator's YouTube channel/playlist, or the user explicitly provides YouTube material in the current round, is it included in the main daily report.
Common commands
Create a Serenity dossier:
python scripts/scaffold_creator_dossier.py D:\research\creator-serenity --source-id serenity --display-name Serenity --platform x --locator https://x.com/aleabitoreddit --handle-or-channel aleabitoreddit
Generate a daily report:
python scripts/build_daily_report.py --dossier D:\research\creator-serenity --source-id serenity --display-name Serenity --date 2026-06-08 --x-jsonl D:\research\creator-serenity\archive\creator-raw\x\serenity\2026-06-08.jsonl --collection-manifest D:\research\creator-serenity\archive\creator-raw\x\serenity\2026-06-08-manifest.json
Automatically break down and write into the workspace:
python scripts/route_research_updates.py --dossier D:\research\creator-serenity --source-id serenity --display-name Serenity --date 2026-06-08 --daily-report D:\research\creator-serenity\archive\creator-daily\serenity\2026-06-08.md --x-jsonl D:\research\creator-serenity\archive\creator-raw\x\serenity\2026-06-08.jsonl
Verify the Skill:
python scripts/validate_contract.py
Reference files
references/source-registry.md: built-in sources, onboarding new sources, source fields.references/intake-contract.md: daily report fields, importance/action enums, evidence object mapping.references/research-bridge.md: gates for writing into the progressive research workspace.references/daily-analysis-prompt.md: Chinese prompts used for daily breakdown and write decisions.