Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). We use
[SemVer](https://semver.org/) for versioning — `0.x` releases batch
related changes, breaking changes can land in `0.x → 0.y`.

## [Unreleased]
## [0.2.0] — 2026-09-15 — SQLite-first local MVP

### Changed

Expand All @@ -15,12 +15,17 @@ related changes, breaking changes can land in `0.x → 0.y`.
automatically synchronized and is not the canonical recovery format.
- `doctor` checks SQLite integrity and reads the database without migrations or
writes. `init` refuses to load demo data into a populated portfolio database.
- FX lookups use the latest stored dated rate, preserve same-day update history,
and derive stored cross-currency rates through the configured base currency.
- Broker reconciliation converts cash and each position before comparing a
mixed-currency account with the broker total.

### Added

- `finsight backup create` creates an integrity-checked native SQLite backup
with SHA-256 metadata and restrictive local file permissions.
- `finsight backup verify <file>` verifies an existing native SQLite backup.
- Mixed-currency account valuation and reconciliation now have regression tests.

## [0.1.0] — 2026-06-02 — Initial public release

Expand Down Expand Up @@ -74,4 +79,5 @@ working copy, every command outputs JSON for AI tools.
Interactive Brokers / Tiger / Futu are on the roadmap. New connectors
are welcome — see [CONTRIBUTING.md](./CONTRIBUTING.md).

[0.2.0]: https://github.com/ApeCodeAI/finsight/releases/tag/v0.2.0
[0.1.0]: https://github.com/ApeCodeAI/finsight/releases/tag/v0.1.0
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ portfolio, and opens the dashboard. Quit it (Ctrl+C) and the sandbox is wiped
nothing touches your real config.

> The web dashboard (`finsight web`) currently runs from a repo clone only —
> the production-bundled dashboard is on the v0.2 roadmap. For now,
> a production-bundled dashboard remains on the future roadmap. For now,
> `npm install -g finsight` gives you the full CLI + AI integration; clone
> the repo if you also want the visual dashboard.

Expand Down
2 changes: 1 addition & 1 deletion README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ Demo 会在 `/tmp/finsight-demo` 创建一个一次性沙箱,加载样例组
`~/.finsight/` 配置。

> Web dashboard(`finsight web`)目前只能从 clone 仓库跑 —— 生产构建版的
> dashboard 是 v0.2 的 roadmap。现在 `npm install -g finsight` 装好的是
> dashboard 仍在后续 roadmap 中。现在 `npm install -g finsight` 装好的是
> 完整 CLI + AI 集成;想要可视化 dashboard 就 clone 仓库。

## 🔭 同一份数据,三个看法
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "finsight",
"version": "0.1.0",
"version": "0.2.0",
"private": true,
"type": "module",
"description": "Local-first, AI-friendly personal portfolio tracker. SQLite is the authoritative local store; every command outputs JSON for AI tools.",
Expand Down
2 changes: 1 addition & 1 deletion packages/cli/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ All read commands support `--json`. Exit codes are semantic:

The `finsight web` command launches a Vite + React + Hono dashboard at
`localhost:3210`, but it requires running from a repo clone for now —
the production-bundled dashboard is on the v0.2 roadmap. For the full
the production-bundled dashboard remains on the future roadmap. For the full
visual experience today:

```bash
Expand Down
2 changes: 1 addition & 1 deletion packages/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "finsight",
"version": "0.1.0",
"version": "0.2.0",
"type": "module",
"bin": {
"finsight": "dist/index.js"
Expand Down
2 changes: 1 addition & 1 deletion packages/cli/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ program
" AI agents: read `skills/finsight/SKILL.md`, then start with\n" +
" `finsight context` (LLM-ready briefing) or `finsight doctor` (health check).",
)
.version("0.1.0"); // keep in sync with packages/cli/package.json#version
.version("0.2.0"); // keep in sync with packages/cli/package.json#version

program.addCommand(initCmd);
program.addCommand(accountCmd);
Expand Down
2 changes: 1 addition & 1 deletion skills/finsight/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ description: >
(XIRR), or create/verify local SQLite backups. FinSight is a local-first
portfolio tracker — NOT a budgeting / expense-tracking tool. For budgeting,
point the user at Beancount / Actual / YNAB instead.
version: 0.1.0
version: 0.2.0
---

# FinSight Skill
Expand Down
Loading