Skip to content

Start here

Topic News

Build a configurable news journal with topic filters, article summaries, and recurring refreshes.

Topic News finds articles for the topics you choose and presents a retained journal of summaries. Its article feed supports topic filtering, a lead story and cards, pagination, and a reading pane for the selected article. Search preferences shape collection; the retained journal sets how much previously collected material remains visible.

Set up a journal

Create Topic News, enter its title, and choose topics. The title is fixed at creation in this template. The managed platform search connection supplies the core search; optional Reddit, Hugging Face, and Hacker News sources can broaden collection when enabled.

Start with a few focused topics. Choose the language and search time range, set inclusion or exclusion terms where needed, and supply brief summary instructions. Run a refresh and inspect both article sources and summaries before relying on a recurring schedule. A search time range limits search discovery; it does not guarantee that every result was published during that range.

Read and refresh

Select a topic to narrow the feed and choose an article to open its reading pane. Pagination shows an edition in manageable pages. Refreshing produces a new edition; an old page cursor should be refreshed with that edition instead of reused against changing results.

The per-run article limit controls newly collected articles processed by a refresh. Journal size controls retained history; older entries drop out when the journal exceeds its cap. Warm refreshes reuse already known articles rather than spending enrichment effort on every retained entry. Increasing journal size therefore serves a different purpose from increasing the new-article limit.

Sources and incomplete enrichment

Some sites provide limited text or prevent retrieval. Topic News can retain a useful search snippet when full enrichment is unavailable. Source indicators and missing-image information help explain the difference between a fully retrieved article and a fallback. Open the original source before treating a summary as a precise quotation.

Transient enrichment failures have bounded retries. A later refresh can improve an incomplete entry, but repeated failures do not create an endless retry loop. A model or provider limit can reduce enrichment while still leaving a usable journal. Inspect the run and article provenance if expected detail is absent.

Tune the result

Use inclusion and exclusion terms to reduce ambiguity, then adjust advertising and bot filters. Keep instructions specific about the audience and desired emphasis. The exposed theme setting follows the system or forces light or dark appearance. The refresh presets use UTC, independently of your profile’s timezone. Inspect the parameter reference below before expanding volume or frequency: more topics, articles, and refreshes can increase search and model usage.

Parameter reference

These are the starting template’s declared parameters. Your saved app can have its own version of the schema. A default applies when no explicit value is supplied; a required field still needs a valid value.

SettingAccepted valueRequiredDefaultWhat it controls
title (title)string; minimum characters 1; maximum characters 200YesNot specifiedSet at creation; read-only afterward. The app title; also woven into the provisioned workflow name.
Topics (topics)list of string; minimum characters 1; maximum characters 100; minimum items 1; maximum items 8No["AI","Technology","Politics","Finance","Science"]The topics the journal follows — one search per topic and source.
Results per topic and source (max_results_per_topic)integer; minimum 1; maximum 10No5How many search results each source contributes per topic.
Articles per refresh (max_articles_per_run)integer; minimum 5; maximum 60No30The most NEW articles a refresh crawls and summarizes (stories already in the journal are kept, not re-fetched).
Journal size (journal_size)integer; minimum 12; maximum 90No60How many stories the journal keeps — new ones first, the oldest drop off.
Time range (time_range)"day" / "week" / "month"No"week"Only articles published within this window.
Language (language)"en" / "de" / "fr" / "es" / "it" / "pt" / "nl" / "ro"No"en"The language of the articles to search for.
Must mention (include_terms)list of string; minimum characters 1; maximum characters 100; maximum items 20No[]Keep only articles whose title or snippet mentions at least one of these.
Never mention (exclude_terms)list of string; minimum characters 1; maximum characters 100; maximum items 20No[]Drop articles whose title or snippet mentions any of these.
Refresh schedule (refresh_cron)"hourly" / "every_6h" / "daily_07_utc" / "weekly_mon_07_utc"No"daily_07_utc"How often the journal refreshes itself (UTC).
Summary instructions (summary_instructions)string; maximum characters 500; format multilineNo""Optional guidance for the summaries — tone, focus, what to leave out.
Filter advertisements (filter_ads)booleanNotrueDrop articles the classifier flags as ads or paid promotion.
Filter bot spam (filter_bots)booleanNotrueDrop articles the classifier flags as auto-generated spam.
Theme (theme)"system" / "light" / "dark"No"system"The journal's colour scheme: follow the device, or force light or dark.
  • title: set during creation; read-only afterwards; exposed as an app interface parameter.
  • summary_instructions: accepts multiline text.
  • theme: exposed as an app interface parameter.

Connection slots

SlotRequiredInitially enabled
platform_searchYesYes
Reddit (reddit)NoNo
Hugging Face (huggingface)NoNo
Hacker News (hackernews)NoNo

Choose compatible saved connections for user-supplied slots. Managed slots are supplied by Strive. Disabling an optional slot stops its use without necessarily deleting the saved binding. See connector policy.

Included workflows

WorkflowSteps in the starting recipeTrigger
news32cron: 0 7 * * * (UTC)

Inspect the saved app’s workflows for changes made after creation. A workflow’s presence does not mean that every interaction runs every workflow.

Output format: news_item

One article in the topic news feed: where it came from, the model's summary, its picture, whether it is new this edition, and its display slot (seq).

SettingAccepted valueRequiredDefaultWhat it controls
topic (topic)string or nullNoNot specified—
title (title)string or nullNoNot specified—
url (url)stringYesNot specified—
snippet (snippet)string or nullNoNot specified—
summary (summary)string or nullNoNot specified—
source (source)string or nullNoNot specified—
site name (site_name)string or nullNoNot specified—
author (author)string or nullNoNot specified—
published at (published_at)string or nullNoNot specified—
first seen at (first_seen_at)string or nullNoNot specified—
image url (image_url)string or nullNoNot specified—
thumbnail data url (thumbnail_data_url)string or nullNoNot specified—
is ad (is_ad)boolean or nullNoNot specified—
is bot (is_bot)boolean or nullNoNot specified—
is new (is_new)boolean or nullNoNot specified—
seq (seq)integer or nullNoNot specified—

Output format: news_run_marker

The progress of one news edition: planned once the run knows how many articles it will publish, done with the final counts and why an empty edition is empty.

SettingAccepted valueRequiredDefaultWhat it controls
marker (marker)"latest"YesNot specified—
stage (stage)"planned" / "done"YesNot specified—
member step index (member_step_index)integer or nullNoNot specified—
known (known)integer or nullNoNot specified—
fresh (fresh)integer or nullNoNot specified—
retry (retry)integer or nullNoNot specified—
total (total)integer or nullNoNot specified—
topics (topics)list of valueNoNot specified—
publish (publish)booleanNoNot specified—
empty reason (empty_reason)string or nullNoNot specified—
exclusions (exclusions)objectNoNot specified—