📈 GH Trending Explorer 🎲 Surprise me

← all repos

fzn0x / idx

git clone https://github.com/fzn0x/idx.git v0.8.1 · 2d ago

Analyze the Indonesian stock market (IDX/IHSG) from web terminal, CLI, or any AI agents via MCP server. IHSG Prices, Fundamentals, and Screening. Free and No API keys required. Changelog: https://github.com/fzn0x/idx/blob/main/CHANGELOG.md

—
stars, 24h
+166
stars, 7 days · #332
+166
stars, 30 days · #1,496
166
★ total · +166% this week
7
forks · 0 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageRust
LicenseMIT
Created2026-10-16 (4d ago)
Last push2d ago
Watchers0
OwnerUser

GitHub topics

Links

README excerpt
Indonesian stock market (IDX / IHSG) analysis for people and AI agents. 
 One binary: a CLI that prints tables, a JSON mode for scripts, and an MCP server for agents.
---
 [code] 
 [code] 
 [code] 
 [code] 
- **Free data, no keys.** Yahoo Finance and MSN Money for prices and
 fundamentals, the exchange's own idx.co.id summaries for foreign flow,
 member activity, indices and the corporate-action calendar, IDX's monthly
 KSEI register for ownership, Indo Premier's broker summary for who bought
 and sold (read as bandarmology by `idx bandar`) and its corporate-action
 pages, Kontan and CNBC Indonesia feeds for news. Every source sits behind a `Provider` trait, so
 one breaking does not take the tool down, and `auto` fills gaps in one
 source's fundamentals from the other.
- **Built for agents.** `-o json` emits a stable, schema-documented envelope
 (`idx schema quotes`). Exit codes mean something. `idx mcp` exposes every
 command as a typed MCP tool that returns the very same JSON.
- **Works offline.** Responses are cached with per-endpoint TTLs; `--offline`
 serves the cache instead of failing when the network is gone.
- **Ownership, not just prices.** KSEI's monthly register of holders above 1 %
 is imported into local SQLite with normalised entity names, so "who owns
 more than 1 % of BBCA" and "what did this fund change last month" are one
 command each. The monthly IDX files are mirrored to GitHub, so neither you
 nor the web terminal imports anything by hand.
- **Single static binary.** Rust, no runtime, Linux / macOS / Windows.
## Install
The package is called **`ihsg-cli`**; the command it installs is **`idx`**
(npm also adds `ihsg-cli` as an alias).
 [code] 
npm installs a small launcher from this repository; the first `idx` command
downloads the prebuilt binary for your platform from the matching GitHub
release and checks it against the release's `SHA256SUMS` (so does
`install.sh`). The binary is stored next to the launcher, or in a per-user
cache when the global npm folder is not writable. On npm 12, which only
installs from git when allowed, add `--allow-git=all` to the command.
Windows without npm: download `idx- -x86_64-pc-windows-msvc.zip` from
the releases page. Static Linux
binaries are musl builds and run on any distribution. The development version installs
with `cargo install --git https://github.com/fzn0x/idx`.
Shell completions:
 [code] 
## Commands
| command | what it does |
| --- | --- |
| `stocks quote ` | Delayed quote for one or many tickers (`BBCA,BBRI` or `BBCA BBRI`; `.JK` optional) |
| `stocks history [--period 1y] [--interval 1d] [--limit 30]` | OHLCV candles with a summary line. Periods `1d 5d 1mo 3mo 6mo 1y 2y 5y 10y ytd max`, intervals `5m 15m 30m 1h 1d 1wk 1mo` |
| `stocks profile ` | Sector, industry, description, size, headquarters, management |
| `stocks financials [--period annual\|quarterly\|ttm] [--statement all\|income\|balance\|cash]` | Income statement, balance sheet, cash flow |
| `stocks earnings ` | Q