-
Notifications
You must be signed in to change notification settings - Fork 0
FAQ
Windows/macOS says the executable is from an "unknown publisher" / "could not verify it's free of malware". Is it safe?
That warning is expected, and it isn't specific to what's inside this particular file — Windows SmartScreen and macOS Gatekeeper flag any executable that isn't code-signed with a paid certificate (a Windows signing cert runs roughly $70–400/year; an Apple Developer ID is $99/year). This project doesn't have one yet, so every release triggers the warning regardless of content.
If you'd rather not take that on faith, the alternative that sidesteps the
warning entirely is uvx factfolio init — see Installing —
since it runs from source via uv rather than an unsigned binary. The
source itself is MIT-licensed and readable in this repository.
If you do want the standalone executable:
-
macOS (Terminal, most reliable):
This removes the quarantine flag the browser set on download — the flag Gatekeeper actually checks — so it launches with no dialog at all. Current macOS (Sonoma/Sequoia) shows the stricter "Apple could not verify … is free of malware" wording for a fully unsigned binary like this one, and often skips straight past a right-click→Open bypass entirely, so the Terminal route above is the dependable one. If you'd rather not use Terminal: try running it once (it'll be blocked), then System Settings → Privacy & Security → scroll to the bottom, where a blocked-app notice with an Open Anyway button appears.
xattr -d com.apple.quarantine ./factfolio-macos-arm64 chmod +x ./factfolio-macos-arm64 ./factfolio-macos-arm64 init
- Windows: click More info, then Run anyway in the SmartScreen dialog.
No. Your holdings, quantities, and ₹ values never leave your machine —
enforced by what the data-provider and agent-SDK clients are actually given,
not a policy. See Architecture for
exactly what does cross the boundary (ticker symbols to market data
providers; your question plus supporting evidence to the claude CLI, and
only for report/chat).
The executable bundles Python and every dependency, so there's nothing to
pip install — but report and chat still shell out to the separate
claude CLI (via claude_agent_sdk), which needs either a claude login
session or ANTHROPIC_API_KEY to reach the model, and market-data commands
still need a network connection to NSE/BSE/yfinance. No packaging choice
removes either requirement. factfolio status, validate, cron, and
estimate-dates don't call an LLM at all, and only estimate-dates and
status/validate touch the network (for price history / ticker checks).
It reads that run's actual tool-call log and rejects any claim in the report that cites a number not present in it — a code-level check, not another model asked to grade its own homework. See Architecture.
No. It's evidence — analyst consensus, moving-average trend, screener ratios, correlation — checked against a policy you write and approve yourself. No tool in this system outputs a price target or a prediction. What you do with what it shows you is still your call.
MIT licensed · not investment advice · pankajads.github.io/factfolio · repository