Skip to content

v0.2.0 — Protocol revamp + news helper

Choose a tag to compare

@spenceryzywork spenceryzywork released this 24 Jun 15:21

v0.2.0 — first non-cosmetic release. Reworks the skill manifest around an explicit routing protocol and adds a dedicated news helper script. Backwards-incompatible at the skill-name reference level.

Highlights

New: scripts/finnotes_news.py

One helper covers every common news workflow — no more building query strings by hand:

python scripts/finnotes_news.py 1                          # today's summary
python scripts/finnotes_news.py full                       # every today's article in full body
python scripts/finnotes_news.py 7                          # last 7 days summary
python scripts/finnotes_news.py date 2026-06-20            # specific-date summary
python scripts/finnotes_news.py detail mn_174              # one article by id
python scripts/finnotes_news.py detail market-news <slug>  # one article by type+slug

Supports --type all,market-news,chart-news,column-article and --limit N.

SKILL.md rewritten as a four-section routing protocol

  1. Control plane — direct execution by default, two-phase progressive disclosure, negative-restraint rule against redundant detail fetches after full.
  2. Execution branch — strict intent → command-syntax mapping table.
  3. Exception routingNO_KEY, permission, quota, 404, contract-question matrix.
  4. Output protocol — phase-1 identifier exposure, phase-2 implication analysis, no analytical noise.

Skill name kebab-cased

Global_Market_News_and_Data_Researcher_pack_(FinNotes)finnotes-global-market-news-and-data-researcher-pack. Required for OpenAI Skills indexing. Backwards-incompatible: runtimes that cached the previous \$<name> reference need a one-time re-registration.

Description: entertainment EXCLUSION

The skill is now explicitly off-limits for entertainment, pop culture, sports, and celebrity topics — routing systems should not invoke FinNotes for those intents.

Cloudflare 403 distinguished from FinNotes 403

Both finnotes_request.py and finnotes_news.py now emit CLOUDFLARE_ACCESS_DENIED when the WAF blocks a request before it reaches FinNotes, instead of the generic PERMISSION_REQUIRED. The agent will no longer tell users to fix permissions when the firewall is the actual problem.

Real User-Agent header

User-Agent: FinNotes-Agent-Skill/0.1 is now set on every request, so platform analytics can separate skill traffic from generic Python-urllib calls.

Beta notice clarification (re-applied from v0.1.x)

references/create-api-key-guide.md keeps:

  • Free access notice — 6-month Pro free, sign-up cutoff 2027-01-01.
  • Grandfathering — existing unexpired Pro subscriptions remain valid through their original 6-month term after the program closes. Only sign-ups after 2027-01-01 are subject to post-Beta pricing.

references/* re-synced

api-platform-contract.md and platform-guide-for-ai.md are re-pulled from the live platform docs, so the bundled /v1/news/today/full endpoint (§10.4 + guide §3.1) is included.

Upgrade

cd ~/.<runtime>/skills/finnotes-api
git pull

Or re-download the release ZIP and overwrite. No credential, profile, or interface file changes — your existing key works as-is. If your agent runtime cached the previous skill name in a default-prompt template, refresh it.

Live docs

For the freshest reference copy: https://platform.finnotes.com/docs/for-ai/