Releases: disin7c9/asset-management
Release list
v2.12.0 — discovery shelves
v2.12.0 — discovery shelves
Discovery now shows real choices, honestly bounded — and refuses to pick a bet for you.
What's new
Shelf-aware discovery. When you're light in a role, --discover shows a shelf of ≥3 genuinely comparable funds (e.g. the intermediate-treasury sleeve IEF / VGIT / GOVT) and names the role's other shelves with counts instead of hiding or ranking them (also here: long (9) · short (4)). Drill one with --discover treasury:long; see a role's full per-shelf menu with --discover treasury.
Satellites are never flagged as a gap. Not holding a tech or theme bet is a stance, not a hole. --discover sector-equity hands you the map of shelves (tech · semis · clean-energy · …) and refuses to shortlist — picking the sector is your decision, not the tool's.
core vs tilt. Every universe fund is tagged core (a plain blend / investment-grade / diversified sleeve) or tilt (a style, single region, or high-yield lean). Gaps surface core funds first, so a junk-bond fund can no longer fill a "corporate-bond gap" by size accident.
New own-drawdown screen check. --screen reports a candidate's own worst fall versus your book's, and warns when it's deeper. Long treasuries and junk bonds pass the correlation test yet carry equity-scale drawdowns of their own — the number now says so (TLT: −23.8% over the demo window, deeper than the whole book's −9.8%).
MCP. discover_gaps gains optional role / flavor arguments and shelf fields — fully additive, no breaking change for existing clients.
Vocabulary. thematic-equity merged into sector-equity (13 roles) — structurally identical satellite twins.
Data fixes
IEF correctly labeled 7–10y intermediate (and stays the treasury preset default); mortgage funds (MTBA / LMBS) re-roled to bond-aggregate; the ARK funds filed under an innovation shelf; a mislabeled high-beta fund dropped.
Compatibility
Presets, onboarding, and allocation proposals are byte-identical to v2.11.4 (golden-pinned). A custom universe without the new core / flavor columns behaves exactly as before.
Install (Claude Desktop / CLI)
Attached: the wheel and the .mcpb bundle. Claude Desktop config route (works on the free plan):
{
"mcpServers": {
"asset-management": {
"command": "uvx",
"args": ["--from",
"https://github.com/disin7c9/asset-management/releases/download/v2.12.0/asset_management-2.12.0-py3-none-any.whl",
"asset-management-mcp"],
"env": { "ASSET_BOOK": "C:\\path\\to\\your\\transactions.csv" }
}
}
}Validated: holdings reconciled to the cent against a broker export, risk stats to 4 decimals against quantstats. 660 tests, strict mypy, ruff clean.
v2.11.4 — first public release
First public release
A personal asset-management tool that turns an append-only transaction log into a
drawdown-first brief — max drawdown with dates and recovery, Ulcer index, CDaR, and
Sharpe/Sortino/Calmar, every sampled statistic with a bootstrap confidence interval — plus
deterministic rebalance suggestions toward a target you choose, and a walk-forward benchmark
verdict that says "inconclusive" when the evidence is thin. A read-only MCP addon exposes the
same validated core to Claude: the AI writes prose, never numbers.
Try it — one command, no setup (bundled example book)
uvx --from git+https://github.com/disin7c9/asset-management asset-management --demoVerified from a completely cold cache the day of this release: ~30 seconds end to end,
including the environment build.
Chat with your portfolio — Claude Desktop (works on the free plan)
Settings → Developer → Edit Config:
{
"mcpServers": {
"asset-management": {
"command": "uvx",
"args": ["--from",
"https://github.com/disin7c9/asset-management/releases/download/v2.11.4/asset_management-2.11.4-py3-none-any.whl",
"asset-management-mcp"],
"env": { "ASSET_BOOK": "C:\\path\\to\\your\\transactions.csv" }
}
}
}Drop ASSET_BOOK to explore the bundled demo portfolio first. Eight read-only tools; the
server is offline except a one-time cache warm; every figure comes from the deterministic
core, and a figure it can't compute honestly is null — never a guess.
Assets
asset-management-2.11.4.mcpb— one-click extension bundle for Claude Code
(Desktop's chat does not call sideloaded extension tools — use the config route above there).asset_management-2.11.4-py3-none-any.whl— install without git:
uvx --from https://github.com/disin7c9/asset-management/releases/download/v2.11.4/asset_management-2.11.4-py3-none-any.whl asset-management --demo
Numbers are reconciled against Ghostfolio (to the cent) and quantstats (to 4 decimals);
630 tests, strict typing, CI-gated. Read-only by construction — it never executes trades.
Not financial advice, structurally: every suggestion is paired to the named rule that
produced it, and the AI is fenced out of the arithmetic.