openportfolio-forecast

openportfolio-forecast is a skill for Claude Code, Codex from seonglae/openportfolio. It costs 74 tokens per session (829 once invoked), scanned A, original, Apache-2.0.

A skill for recording a prediction in an OpenPortfolio book before its outcome is known. Each forecast includes a probability, a time horizon, and a clear condition that determines whether it came true, so it can later be scored.

In plain words
What is it for?
Use it to log a person's or model's view about an asset or event, define when it should be checked, and provide a rule for automatically deciding whether it was correct.
Why use it?
Unrecorded predictions can be changed or forgotten after the fact. Recording the probability and result condition in advance creates a fixed history that can be evaluated fairly.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to log a person's or model's view about an asset or event, define when it should be checked, and provide a rule for automatically deciding whether it was correct.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/seonglae/openportfolio/openportfolio-forecast
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add seonglae/openportfolio --skill openportfolio-forecast
Clone the repo
git clone --depth 1 https://github.com/seonglae/openportfolio

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for openportfolio-forecast

README.md
[![agentmods](https://agentmods.dev/badge/skills/seonglae/openportfolio/openportfolio-forecast/github.svg)](https://agentmods.dev/skills/seonglae/openportfolio/openportfolio-forecast)
Your own site
<a href="https://agentmods.dev/skills/seonglae/openportfolio/openportfolio-forecast"><img src="https://agentmods.dev/badge/skills/seonglae/openportfolio/openportfolio-forecast/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for openportfolio-forecast

Your own site · 80×15
<a href="https://agentmods.dev/skills/seonglae/openportfolio/openportfolio-forecast"><img src="https://agentmods.dev/badge/skills/seonglae/openportfolio/openportfolio-forecast.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 74 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 829 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00074 $0.00829
Opus 5.5 $0.00030 $0.00332
Sonnet 5.5 $0.00015 $0.00166
Haiku 4.5 $0.00007 $0.00083

Measured yesterday against content hash e6cd67834b0a, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

openportfolio-forecast scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/openportfolio-forecast/SKILL.md · 58 lines

How it starts

The opening of the file, as written. The whole thing — 58 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Registering a forecast

A view that is never scored costs nothing to be wrong about. openportfolio registers it with a probability, a horizon and a resolution criterion, and none of the three can be edited afterwards. There is no update tool, on purpose: a call that can be revised after the fact is a record of nothing.

Needs the openportfolio MCP server. See the openportfolio-book skill for setup.

The call

record_forecast takes:

argument rule
subject what the call is about, in plain words
probability 0 to 1. The chance the criterion is met, not a confidence in the reasoning
horizonSec seconds until it comes due. At least 3600, at most five years
resolutionCriterion the condition that settles it
rationale optional, why
author optional, who made it, for example claude. The record can be filtered by author
authorType optional, agent or user

Write a criterion a machine can settle

The form SYMBOL comparator VALUE can be evaluated against evidence. A symbol alone never authorizes automatic settlement:

BTC > 100000
VWRL >= 118.5
KOSPI < 3,000

Comparators are >, >=, <, <=, ==, !=. Symbols may carry dots, colons, slashes and dashes (035420.KS, BRK-B). Anything else, for example "the central bank cuts in March", is valid but prose: it waits in due_forecasts with a null symbol until someone settles it by hand. Prefer the machine form whenever the claim allows it.

Automatic settlement requires a resolutionTarget registered with the call: assetId, symbol, assetClass, venue and currency. For the supported Yahoo equity/ETF path, set observationPolicy to last_completed_minute, priceBasis to provider_close, sessions to all and maxAgeMs to a value from 60000 to 345600000. The policy uses the most recent completed provider-returned minute at or before dueAt, including extended hours, within that precommitted age. It uses the provider's quote.close basis, which can reflect corporate-action adjustments or later provider revisions. The source, retrieval time and parsed-response hash are recorded. This is not an immutable as-traded exchange tape. Missing or expired historical data stays open. Registration refuses any other target: no adapter observes a price at the exact dueAt. Legacy symbol-only calls and stored unsupported targets remain manual and require a source note. No quote-source environment override affects settlement. An optional baselineProbability registers a comparator before outcomes.

Read the full file on GitHub · 58 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday Changed · +12 lines e6cd67834b0a
  2. 16d ago First seen · 46 lines · 74 tokens per session scan A ea29818824dc

Subscribe to this mod's changes

openportfolio-forecast is a skill published in the GitHub repository seonglae/openportfolio (3 stars, last pushed 2d ago), licensed Apache-2.0. It adds 74 tokens to every session and 829 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-30.

Related

Other skills, from other repositories

research-stocks

Read current stock research, technical backtests, saved analyses or saved backtests. Use for a named ticker or watchlist research history; preserve source dates, model limitations and risk factors.

koala73/worldmonitor · 41 tokens

track-tariff-trends

Retrieve a country's average applied tariff over time — the MFN rate on all products, or the rate it applies on goods from one partner and/or in one product group — plus the optional US effective tariff rate. Use when the user asks how a country's tariffs have changed, or what it charges another country on average.…

koala73/worldmonitor · 85 tokens

get-prediction-markets

Retrieve active prediction-market contracts (Polymarket) with live yes-price probabilities, volume, and close dates, filterable by category or keyword. Use when the user asks what the market odds are on a geopolitical, economic, or election outcome.

koala73/worldmonitor · 56 tokens

tvchart

Drive a live TradingView Lightweight Charts widget end-to-end via PyWry MCP tools — symbol, interval, indicators, markers, price lines, layouts, state.

deeleeramone/PyWry · 33 tokens

tbank-messenger

A chat connection for T-Bank, a Russian bank, that lets an agent read conversations, download attachments, and contact bank support. It works with chats inside the bank app, not SMS codes or push notifications.

icyberdeveloper/tbank-mcp · 89 tokens

aifi-daily-report

A tool for producing a Chinese end-of-day report on United States stock markets as a self-contained HTML file. HTML is the standard format used to display web pages.

iFurySt/aifi · 123 tokens