Produces 24-hour capital-market delta reports focused on anomalies, catalysts, and affected securities.
Design & media
Digest
Turn external news sources into recurring, attributed digests ranked for your interests.
What it does
Build recurring news digests around a person’s topics, exclusions, sources, schedule, and preferred depth. It sources and filters stories, deduplicates coverage, ranks relevance before magnitude, and delivers a capped digest in the configured channel. Each item includes attribution and a why-it-matters line, while reactions update preferences and a sent log prevents unchanged repeats.
When to use it
- Daily briefing on selected topics
- Weekly industry and market roundup
- Ongoing competitor or people tracking
- Fixing repetitive or overlong digests
The skill document
User preferences, learned signals, and the sent-item log live in ~/Clawic/data/digest/ (see setup.md on first use, preferences-template.md for file formats). If you have data at an old location (~/digest/ or ~/clawic/digest/), move it to ~/Clawic/data/digest/.
Configuration
User-dependent variables. Defaults apply until the user states a preference; store them in ~/Clawic/data/digest/config.yaml.
| Variable | Type | Default | Effect |
|---|---|---|---|
| item_cap | number (3-15) | 8 | Hard ceiling on items per digest (rule 5); Highlights stay ≤3 at any cap |
| single_source_policy | hold | hedge | hold | Market-moving or reputational single-source claims: hold one cycle vs ship marked "one source, unverified" (verification.md) |
| channel | text | channel where the digest was first requested | Where digests deliver; drives the per-channel format rules in delivery.md |
| digest_language | text | the language the user writes in | Digest prose language; items keep original-language names and quotes with translated summaries |
| timezone | text | ~/Clawic/profile.yaml, else confirm before first scheduled send | Anchors every scheduled slot and recency window |
Preference areas — learned state lives in ~/Clawic/data/digest/preferences.md and climbs the ladder in learning.md:
- content scope — topics, industries, competitors, people, regions, exclusions; drives Filter
- sourcing — trusted and blocked sources, weighting, recency windows; drives Source
- format & structure — medium, structure, length, tone, visuals; drives Format
- timing & cadence — schedule, frequency, weekday/weekend split, urgent-signal rules; drives Deliver
- prioritization & depth — what leads, what buries, per-topic depth; drives Prioritize
When To Use
- The user wants a recurring daily or weekly briefing on topics they care about
- A news roundup filtered to one person's interests, not a generic feed
- Tracking competitors, an industry, people, or markets with ongoing updates on their moves
- A scheduled topic update is due, or the source list needs building or tuning
- An existing digest feels off: too long, repetitive, missing stories, wrong timing
- Not for: synthesizing documents the user hands you (→
synthesize), internal business reporting (→brief), or full competitor dossiers (→competitor-monitoring)
The test of a real digest: every item carries a why-this-matters-to-you line. A digest that could be sent to anyone is a feed, not a digest.
Quick Reference
| Situation | Play |
|---|---|
| First digest, no preferences | Derive topics from the request; if none derivable, ask the one blocked question (topics) — everything else runs on defaults |
| Story covered by 3+ independent sources | Promote toward Highlights — convergence is an importance signal (rule 4) |
| Surprising claim from a single source | Hold one cycle or ship hedged per single_source_policy; independence test in verification.md |
| Major global news outside user's topics | One line in Worth Noting, never a Highlight — relevance beats magnitude (rule 1) |
| User says "too long" | Cut item count before per-item depth; log the signal (learning.md) |
| Story already shipped in a prior digest | Resurface only as "Update:" + what changed — check the sent log (rule 7) |
| Urgent item mid-cycle | Interrupt only on a [confirmed] or [locked] urgent-signal rule; otherwise hold (delivery.md) |
| No reaction for 3 consecutive digests | Ask one concrete question instead of guessing (learning.md) |
| Slow news day in their topics | Send the short honest version ("quiet day, 2 items") — never pad |
| Big-event day floods one theme | Cluster the theme into one block that counts as one item (triage.md) |
| Competitor activity to report | Moves, not mentions — the move catalog is in competitors.md |
| Gap since last digest (vacation, downtime) | One consolidated catch-up covering the period, top items only (delivery.md) |
| Anything else | Run Source → Filter → Prioritize → Format → Deliver → Learn with current preferences |
Depth on demand: sources.md building and vetting the source list · triage.md dedupe, ranking, slow and heavy days · verification.md claims, rumors, corrections · writing.md item craft and summaries · delivery.md channels, timing, interrupts · learning.md signals and the preference ladder · competitors.md tracking companies and people · dimensions.md dimension catalog with defaults · preferences-template.md data-file formats.
Core Rules
- Relevance beats magnitude. Rank by interest match first, freshness second, source weight third. A tracked competitor's pricing change outranks a world-news headline outside their topics.
- Every item is attributed. No source you can name = item does not ship. Never blend your own inference into a summary unmarked — prefix it: "Likely:" or "My read:".
- Exclusions are binary, interests are weighted. One explicit "don't care about Y" beats any number of inferred interest signals for Y. An excluded topic appears only when it intersects a confirmed interest, flagged as such ("normally excluded; included because it hits X").
- Dedupe before ranking. Same story from N outlets = one item; N itself is rank input — 3+ independent sources covering one story promotes it toward Highlights. Independence = separate original evidence, not separate URLs (
verification.md). - Fixed budget forces curation.
item_cap(default 8) items, hard max 3 Highlights. Adding one over cap means deleting one. Worked example: 12 candidates → 3 Highlights (top interest-match), 5 body items, remaining 4 dropped or compressed into one Worth Noting line. - Preference changes climb a ladder — pattern → confirmed → locked, mechanics in
learning.md. Never jump from a single signal to locked. - The digest remembers what it sent. Log every shipped item to
~/Clawic/data/digest/sent-log.md; repeats resurface only as "Update:" + delta. A digest without memory re-reports yesterday and reads as a broken filter.
Protocol
Source → Filter → Prioritize → Format → Deliver → Learn
- Source — pull from configured feeds and the per-entity source kits (
sources.md). Default weighting: primary > original reporting > aggregators > social; social is discovery, never citation — trace it back before it ships. - Filter — topic match includes; exclusion match drops (rule 3); recency windows per content type (
dimensions.md→ Sources); single-source surprising claims go toverification.md. - Prioritize — cluster duplicates, then rank per rule 1; bury borderline items into Worth Noting, don't delete (
triage.md). - Format — per-item shape: headline → 1-line summary → why it matters to this user → (source). Craft rules in
writing.md; length pressure cuts item count before per-item depth. - Deliver — channel and timing per preferences; interrupts, catch-ups, and per-channel formats in
delivery.md. - Learn — capture reactions into
preferences.mdafter every delivery; signal counting and ladder inlearning.md.
Output Format (Default)
📰 [DIGEST TYPE] — [DATE/TIME]
🔥 HIGHLIGHTS
• [Item — 1-line summary + why it matters to you (source)]
• [Second item]
📋 FULL DIGEST
[Items in per-item shape, ordered per weighting profile]
💡 WORTH NOTING
[Borderline items, one line each]
---
Sources: [count] | Next digest: [time]
Adapt entirely to learned preferences once they exist; the template above is only the cold-start default.
Output Gates
Before sending, verify:
- Every item has a source and a why-it-matters line?
- ≤3 Highlights, each strong enough that the user could read only those?
- Zero exclusion-list items, unless flagged per rule 3?
- Every single-source claim hedged or held per
single_source_policy? - Nothing repeated unchanged from the sent log?
- Channel and time match current preferences; signals from the previous delivery recorded?
Traps
| Trap | Why it fails | Do instead |
|---|---|---|
| Leading with globally important news | User already saw it everywhere; the digest adds zero | Lead with niche relevance; big news gets one line (rule 1) |
| Padding slow days | Trains skimming; erodes trust in Highlights | Short honest digest ("quiet day") |
| Counting syndicated copies as corroboration | Ten outlets rewriting one press release or tweet are one source | Independence test in verification.md before promoting |
| Trusting aggregator timestamps | Aggregators resurface old stories with fresh dates | Check the original dateline against the event date (sources.md) |
| Locking a preference from one comment | One signal may be mood, not preference | Climb the ladder in learning.md (rule 6) |
| Reading silence as satisfaction | Ignored digests look identical to loved ones | No reaction for 3 consecutive digests → ask one question |
| Unmarked opinion inside summaries | User can't separate reporting from your read | Attribute claims; prefix inference (rule 2) |
| Resurfacing yesterday's story unchanged | Repetition reads as a broken filter | Only resurface as "Update:" + what changed (rule 7) |
| Interrupting off-schedule on your own judgment | "Urgent" without a learned rule is noise at a bad hour | Interrupt only per [confirmed]+ urgent-signal rule (delivery.md) |
Where Experts Disagree
- Curation vs completeness. Tight curation is the default — the budget is the product. Some readers want everything as FOMO insurance; the boundary is an explicit request, and the answer is a longer Worth Noting tail, never a bigger Highlights section.
- Relevance-first vs breaking-first. Default: highest interest-match leads. Breaking-first is legitimate for users who act on time-sensitivity (markets, on-call, PR); it must be learned or stated, never assumed from topic choice.
- Neutral summarizer vs opinionated curator. The why-it-matters line is opinion, and it is the digest's value. The boundary: reporting is attributed, inference is prefixed — the reader always knows which is which (rule 2).
Related Skills
More Clawic skills, get them at https://clawic.com/skills/digest (install if the user confirms):
brief— internal business information summarized rather than external news curatedsynthesize— the user provides the documents; you distill instead of sourcing the outside worldcompetitor-monitoring— full competitor dossiers, pricing alerts, and positioning analysis beyond digest itemsnewsletter— the user wants to publish to an audience, not receive a personal digest
Feedback
- If useful, star it: https://clawic.com/skills/digest
- Latest version: https://clawic.com/skills/digest
Part of Clawic, the verified skill library. Get this skill: https://clawic.com/skills/digest.
Questions people ask
- How does it handle rumors or surprising claims from one source?
- Market-moving or reputational single-source claims are held for one cycle by default. If configured to hedge instead, they may ship clearly marked as one-source and unverified.
- Will the digest repeat stories covered in earlier editions?
- Every shipped item is recorded in a sent-item log. A previous story can return only as an “Update:” that states what changed, while duplicate coverage in the same cycle is clustered before ranking.
- How does it adapt to my preferences?
- It tracks content scope, trusted or blocked sources, format, cadence, prioritization, and depth. Reactions move preferences through pattern, confirmed, and locked stages rather than treating one comment as permanent.
Related skills
Research recent discussions across Reddit, X, YouTube, and the web, then synthesize cited findings.
Manage beehiiv publications, subscribers, fields, segments, tiers, and automations through a managed OAuth API.
Compress documents, transcripts, threads, data, and code changes while preserving claims, caveats, and actions.
Monitor Moltbook narratives and sentiment, retrieve hourly digests, and score or rewrite post ideas.
Turn a scoped research question into a structured, multi-source report in HTML, PDF, Markdown, or chat.