mrkeyoor.com_
Thu 05 Nov 17:58 UTC
Self-Hostedevaluationupdated 31 Oct 2026

PanWatch review

Evaluate PanWatch if you want self-hosted portfolio monitoring with AI research, and check PDF exports before relying on them. PanWatch combines holdings, alerts and TradingAgents research for A-shares, Hong Kong and US markets. Our September 21, 2026, sandbox run at commit 89bdf3f recorded two PDF text-extraction assertion failures whose cause remains unresolved. It did not establish live market-data accuracy, notification delivery, model quality or a working Docker deployment. Current documentation includes English and Simplified Chinese.

+74stars / 7d
Verdict

Evaluate PanWatch for combined portfolio monitoring and AI research, with export and integration checks before reliance. The September 21, 2026, run at commit 89bdf3f recorded two PDF text-extraction assertion failures whose cause remains unresolved, plus installation errors despite a final install exit code of zero. Current English documentation broadens accessibility but does not resolve those historical observations.

We ran it

Lab card: what happened when we ran PanWatchScreenshot of PanWatch (github.com/TNT-Likely/PanWatch)
Install✓ · 31s172 packages · 595 MB
Build✓ · 1s
Tests✗ · 34s782 passed · 2 failed · 3 skipped of 784 (pytest)
Known vulns0(pip-audit)
Repo568 files~105,888 lines of source · 13.3 MB · 2 CI workflows · Dockerfile · tests dir

Answers from our run

Does PanWatch build from source?

Dependencies installed in 31 seconds (172 packages), and the build succeeded in 1 seconds. We cloned commit 89bdf3f into a clean Debian container with 3 CPUs and no project-specific setup.

Do PanWatch's tests pass?

No. The project's own test command finished in 34 seconds and reported 782 passed, 2 failed, 3 skipped (pytest).

Does PanWatch have known vulnerabilities in its dependencies?

pip-audit found none in the dependency tree at the time of our run.

Who should not use PanWatch?

Anyone requiring verified searchable PDF reports without deployment-specific checks: the stored run recorded two PDF text-extraction assertion failures whose cause remains unresolved.

What are the alternatives to PanWatch?

TradingAgents, Ghostfolio. Evaluate PanWatch for combined portfolio monitoring and AI research, with export and integration checks before reliance.

Setup3/5Material qualifications: install returned zero but its tail contains build errors; a complete deployment was not verified.
Docs3/5The supplied documentation covers setup and configuration in English and Simplified Chinese, but current requirements differ from the measured version.
CommunityN/ARepository attention figures do not establish adoption, contributor support or response quality; the supplied evidence cannot support a numerical community assessment.
Maturity3/5The stored run recorded two PDF text-extraction assertion failures whose cause remains unresolved. Newer documented behavior has no matching supplied sandbox run.

Who it’s for

Self-hosters who want holdings, price alerts and configurable AI research in one application.
Investors monitoring mainland China, Hong Kong and US markets who will compare reports with their underlying data.
Developers prepared to configure a model provider or Ollama, notification channels and outbound data access.

Who it’s NOT for

Anyone requiring verified searchable PDF reports without deployment-specific checks: the stored run recorded two PDF text-extraction assertion failures whose cause remains unresolved.
Users seeking evidence of profitable trading or reliable investment recommendations; the recorded run tested neither.
Operators expecting the recorded build status to prove that Docker deployment, scheduled workflows or external integrations worked.
Readers requiring confirmed automatic brokerage synchronization: the supplied primary extracts do not establish that capability.

Setup reality

Our September 21, 2026, sandbox run at commit 89bdf3f recorded install exit 0 after 31 seconds, build exit 0 after 1 second and test exit 1 after 34 seconds. The recorded dependency footprint was 172 packages and 595 MB. However, the install tail contains editable-build and wheel-build errors reporting an invalid distribution name or version. The final install status does not establish an error-free installation.

The documented Docker setup exposes port 8000 and persists /app/data. First startup downloads Chromium unless browser installation is skipped. AI research needs a configured model service; notifications need channel configuration. A complete deployment was not verified in the recorded run.

Use documentation matching the version you deploy. The measured 0.14.0 README lists Python 3.10+, Node.js 18+ and pnpm; the current README lists different development requirements.

Should you try PanWatch?

Evaluate PanWatch for combined portfolio monitoring and configurable AI research if you can verify exports and integrations on your intended deployment. Our September 21, 2026, sandbox run recorded two PDF text-extraction assertion failures whose cause remains unresolved. Those results justify checking reports; they do not establish a defect in current PanWatch.

The current README documents an English interface alongside Simplified Chinese. It describes holdings, watchlists, compound price alerts, scheduled research, paper trading and a mobile PWA. English-only readers should not be excluded because the historical README was Chinese.

What the stored run established

The recorded run tested commit 89bdf3f, associated with release 0.14.0, on September 21, 2026. The sandbox had 3 CPUs, 8 GB of memory and a Python 3.12 Bookworm image. This correction uses that stored run; no new execution was performed.

Install and build recorded exit 0; tests recorded exit 1. The harness durations were 31 seconds for install, 1 second for build and 34 seconds for tests. The dependency footprint was 172 packages and 595 MB.

The install tail reports editable-build and wheel-build failures, including an invalid distribution name or version. The supplied evidence does not explain why the overall install step returned zero. The build tail is empty, so its successful status does not establish a running web application or a completed production workload.

The stored parser summaries record 782 passed, 2 failed, total 784 and 3 skipped. These fields do not establish exhaustive unique test coverage. The raw pytest footer reports 2 failed, 782 passed and 3 skipped in 29.26 seconds. That suite duration differs from the harness's 34-second test-step duration; neither replaces the other. Skipped tests are not failures.

MrKeyoor's testing methodology explains the recording approach and its limits. Its supplied current description does not establish which methodology revision governed this September run.

What the PDF assertions mean

Both failed assertions are in tests/test_pdf_export.py. The markdown-to-PDF test could not find the expected Chinese company name, 广汽集团, in extracted PDF text. The endpoint test could not find its expected full-analysis marker, 技术面分析正文UNIQUE, in text extracted from the PDF attachment.

The stored run recorded two PDF text-extraction assertion failures whose cause remains unresolved. Missing expected strings do not establish whether the cause was font handling, extraction, report construction or the sandbox environment. They also do not establish whether current PanWatch behaves the same way.

Before depending on exports, generate a report on your intended deployment, search and copy its Chinese text, and compare the attachment with the complete analysis shown in the application. These are recommended acceptance checks, not work completed by the sandbox. The recorded run did not verify live quotes, model responses, scheduled delivery, brokerage synchronization or trading returns.

The stored audit reports zero advisories and packages: 0. The supplied evidence does not explain that package count or establish meaningful dependency scan coverage; this result cannot support a security conclusion.

What remains to configure

The documented Docker setup exposes port 8000 and persists /app/data. Set the deployment timezone explicitly for background schedules and notification quiet hours. Chromium's first-start download requires network access unless browser installation is skipped. Model requests and market-data collection also depend on the services you configure.

Read the README pinned to the measured commit when evaluating that version. It lists Python 3.10+, Node.js 18+ and pnpm for development. Current development instructions describe different requirements and should not be treated as instructions tested in the historical run.

Start with one holding and one analysis. Check the model connection, compare the report with its sources and test one notification channel before enabling scheduled workflows. A successful command status alone does not settle these deployment checks.

Alternatives for different workflows

TradingAgents is the research framework PanWatch integrates. TradingAgents documents CLI and Python package use. Consider it directly when developing or studying the research pipeline is your main job. The supplied evidence does not establish it as a replacement for every PanWatch dashboard feature.

Ghostfolio documents transaction management, portfolio performance and transaction import and export. Consider it when maintaining investment records is your main job. It can complement a separate research tool. Neither alternative was installed or compared in the recorded PanWatch run.

How to read the ratings

The numerical ratings are editorial judgments about the supplied evidence, not benchmarks. For setup, documentation and maturity, 1 means substantial documented barriers, 2 means major limitations, 3 means material qualifications, 4 means strong corroborated evidence within that dimension and 5 means broad corroboration across deployments or versions. Missing evidence remains unassessed.

Setup ease is 3: the recorded command statuses coexist with installation errors, and complete deployment remains unverified. Documentation is 3: the supplied README covers setup and configuration, but current instructions must be kept separate from the measured version. Maturity is 3: the stored run recorded two PDF text-extraction assertion failures whose cause remains unresolved, and newer documented behavior has no matching sandbox run in the supplied evidence.

Community is unassessed. Repository attention figures do not establish adoption, contributor support or response quality, and the supplied evidence does not support a numerical judgment of those qualities.

Alternatives

ProjectWhat it isPick it when
TradingAgents gh↗The research framework integrated by PanWatch, with documented CLI and Python package use.Consider it directly to develop or study the research pipeline. The supplied evidence does not establish replacement of the whole monitoring dashboard.
GhostfolioWealth-management software with transaction records, portfolio performance and transaction import and export.Consider it for maintaining portfolio records and reviewing performance. It can complement separate AI research.

What people are saying

  1. [github-trending] TNT-Likely/PanWatch

Sources

  1. PanWatch README
  2. PanWatch repository facts
  3. PanWatch 0.14.0 release
  4. Live account synchronization request
  5. PanWatch MCP API at measured commit

More self-hosted reviews

rustdesk-server · spotifast · tapflow · lucky · zapfast · OpenConstructionERP · the whole board →