## Summary
- Clarifies that US stocks can be shorted directly with no additional
setup
- Clarifies that HK short selling requires activation via the mobile
app: place first HK short sell order → triggers SBL agreement signing →
wait for approval
- Notes that HK short selling is subject to a fee levied by the Hong
Kong Inland Revenue Department, with details in the in-app agreement
- Documents API error `602301` returned before the HK SBL agreement is
signed
- Updates `docs/{en,zh-CN,zh-HK}/docs/cli/orders/order.md` and
`skills/longbridge/references/cli/overview.md`
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Adds short selling documentation to
`docs/{en,zh-CN,zh-HK}/docs/cli/orders/order.md` and
`skills/longbridge/references/cli/overview.md`
- Documents that US and HK markets must each be activated separately via
the mobile app before short selling is available via CLI/API/MCP
- Activation flow: place first short sell order in the mobile app →
triggers SBL agreement signing → wait for review approval
- Notes API error `602301` returned before the SBL agreement is signed
- Notes A-share (SH/SZ) short selling is not supported
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
Ref #1003
- Replace the SG market code entry with a blockquote note explaining
that Singapore real-time quotes are currently unavailable via Longbridge
Developers (API / CLI / MCP)
- Direct users to the Longbridge client (app or desktop) for SG market
quotes
- Remove SG from the Basic quote permission level description in all
three language versions (en / zh-CN / zh-HK)
## Test plan
- [ ] Verify the note renders correctly as a blockquote in all three
locale pages
- [ ] Confirm the quote permission table looks correct without SG in the
Basic row
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- **Quote restructure**: Split flat `pull/` (25 items) into semantic
groups — `stocks/`, `options/`, `warrants/`, `analytics/`
- **Subscribe**: Merged `push/` into `subscribe/` (renamed to
"Subscribe"); added Overview page explaining WebSocket subscription
model and pull API reference links
- **Market**: Extracted `quote/market/` to standalone top-level
`market/` section (position 3.2) to accommodate future additions like
rankings, screeners, IPO
- **Trade ordering**: Fixed `execution/` (History→Today) and `order/`
(Submit→Today→History→Details→Replace→Cancel→Estimate) sidebar ordering
- **Titles**: Optimized all Quote section titles with proper securities
industry terminology; renamed "Withdraw Order" → "Cancel Order"; "Update
Watchlist Group" → "Manage Group Securities"
- **Watchlist**: Renamed group label and sorted items; `update_group`
title now reflects its actual function (add/remove securities in group)
- **Appendix**: Moved `security_list` to socket appendix as "Overnight
Eligible Securities" with accurate description
## Test plan
- [ ] Build and verify sidebar structure renders correctly
- [ ] Verify existing URLs still resolve (absolute slugs preserved for
moved files)
- [ ] Verify new `/market/*` URLs work
- [ ] Check Subscribe Overview links resolve correctly
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Translates the new CLI v0.21.0 command documentation (business-segments,
industry-rank, industry-peers, financial-report snapshot,
institution-rating --views) from English to Simplified and Traditional
Chinese.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
## Summary
Adds changelog entry for CLI v0.21.0 (consolidating v0.20.1~v0.20.3),
with MCP v0.3.0 mentioned inline.
### CLI v0.21.0
- Industry Intelligence: `industry-rank`, `industry-peers`
- Revenue Segment Breakdown: `business-segments`
- AI Earnings Snapshot: `financial-report snapshot`
- Analyst Conviction Trends: `institution-rating --views`
- MCP server updated with the same capabilities (133 tools total)
Written for end users — less technical, more about what you can now do.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
## Summary
- Add JSON `mcpServers` config block to Method B (MCP) section of the
Skill install guide
- Clarifies that the JSON format works for Claude Desktop, Cursor, Zed,
Gemini CLI, and other JSON-config-based clients
- Updated all three language versions (en, zh-CN, zh-HK)
## Test plan
- [ ] Verify the JSON block renders correctly in the docs
- [ ] Check all three language versions display properly
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Add a "Refresh Access Token" subsection covering Python, JavaScript,
Rust, Java, and C++ examples. Each example shows refreshing with a
3-year expiry and using the returned token to create a new Config.
## Summary
- Add hidden HTML comment at the top of all three locale files (`en` /
`zh-CN` / `zh-HK`) instructing the AI to follow a strict install order —
regardless of user prompts to skip steps:
1. Install CLI or configure MCP
2. Complete authentication (`longbridge auth login`)
3. Verify with "Get the latest price for TSLA" and confirm live data
4. Only then install the Skill (Step 2)
- Update English screenshots to latest versions for Claude Desktop and
Codex
- Clarify that both **Chat** and **Cowork** modes in Claude Desktop are
restricted (not just Chat)
## Test plan
- [ ] Verify HTML comments are not visible on the rendered page
- [ ] Confirm new screenshots render correctly in the en locale
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Reorder steps: connect to Longbridge platform (CLI or MCP) first,
install Skill second — the old order had Skill as Step 1, which is
useless without data access
- Lead intro with terminal-based AI tools (Claude Code, Codex, opencode,
OpenClaw) as the recommended/quickest path
- Clarify CLI vs MCP framing: CLI = best experience but needs local
install; MCP = easier, just a URL
- Add **Known restrictions by tool** section with clear guidance and
screenshots:
- **Claude Desktop Chat mode**: network whitelist blocks CLI/MCP —
switch to Code tab instead (screenshot added)
- **Codex Cloud mode**: same network restrictions — must select "Work
locally" (screenshot added)
- **Claude.ai / ChatGPT.com web**: redirect to Claude Desktop Code tab
- Add mainland China accelerated MCP endpoint
(`https://openapi.longbridge.cn/mcp`) to English version
- Rename section heading "Connect your Longbridge account" → "Connect to
the Longbridge platform"
- All changes synced across en / zh-CN / zh-HK
## Test plan
- [ ] Preview skill install page in all three locales
- [ ] Verify screenshots render correctly
- [ ] Check all links resolve (CLI reference, Claude Desktop download)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Trade commands (`buy`, `sell`, `cancel`, `replace`, `executions`,
`orders`) were missing the `order` parent command prefix — all now use
`longbridge order <subcommand>`
- `longbridge order <id>` → `longbridge order detail <id>`
- `longbridge topics SYMBOL` → `longbridge topic SYMBOL` (no trailing
`s`)
- `longbridge capital dist/flow SYMBOL` → `longbridge capital SYMBOL` /
`longbridge capital SYMBOL --flow` (`dist`/`flow` are not valid
subcommands)
- `longbridge topic create SYMBOL "body"` → `longbridge topic create
--body "..." --tickers SYMBOL` (positional args not supported)
- `longbridge watchlist update <id> --add A B` → `--add A --add B`
(`--add` is not multi-value, must be repeated)
## Test plan
- [ ] Verified each corrected command format against `longbridge <cmd>
--help`
- [ ] All 13 files updated; only `docs/en/` affected (zh-CN / zh-HK
counterparts do not exist)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- New `ipo` command group docs (subscriptions, wait-listing, listed,
calendar, detail, orders, profit-loss; HK + US variants)
- New `financial-statement` command doc (detailed hierarchical IS/BS/CF
with YoY)
- New `valuation-rank` command doc (daily PE/PB/PS industry percentile
rank)
- New `analyst-estimates` command doc (EPS consensus estimates)
- New `bank-cards`, `withdrawals`, `deposits` account command docs
- Updated `institution-rating` with `--history` and `--industry-rank`
examples
- Updated `news` and `topic` with `search` subcommand examples
- Updated `portfolio` with `short-margin` subcommand
- Added v0.20.0 Release Notes (en/zh-CN/zh-HK)
All documentation is trilingual (en / zh-CN / zh-HK).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Build now clones `longbridge/skills@main` and packs its `skills/`
contents into `longbridge.zip`, instead of zipping the local
`skills/longbridge/` folder.
- Fails the build if the clone fails or the upstream `skills/` directory
is missing — the published zip can no longer go silently stale.
- Each upstream skill (`longbridge-capital-flow`, `longbridge-depth`, …)
becomes a top-level entry in the zip, so unzip directly into
`.claude/skills/` keeps working.
## Test plan
- [ ] CI build passes and uploads `longbridge.zip`
- [ ] `unzip -l longbridge.zip` shows the upstream `longbridge-*` skill
folders at the top level
- [ ] Manually break the clone (e.g. wrong URL) locally and confirm the
build aborts with the new error message
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
## Summary
- **ArchCanvas**: replace all `--brand-color` usages with neutral vars
(`--vp-c-text-1/3`, `--vp-c-divider`, `--vp-c-bg-elv`) on arrows,
labels, API Gateway box, hover states
- **ProductCLI**: active feature item border/icon uses `--vp-c-text-2`
(dark, not brand); section gets `border-top` + `border-bottom`
- **Gray section borders**: ProductMCP, GetStarted, MarketCoverage all
get `border-top` + `border-bottom` to delineate from adjacent white
sections
- **CapSection**: switched from `bg-soft` to `bg` (white) to break
consecutive gray run with MCP section above it
- **CoreFeaturesSection**: 6 card accents now cover distinct hues across
the color wheel — teal, orange, blue, green, amber, purple (was
duplicating teal and blue-purple)
- **ProductSkill**: top-center radial gradient (`#00dbb6` 7%/12%
light/dark); code stream blocks get lighter background with solid border
- **ProductOpenAPI**: side-cell brand gradient raised from 8% → 13% for
better visibility
- **GetStarted**: removed messy 135deg multi-color gradient, replaced
with flat `bg-soft`
## Test plan
- [ ] Light mode: verify section alternation (white/gray/white) is
visually clear throughout the page
- [ ] Dark mode: verify Skill section teal gradient is visible; section
borders are subtle but present
- [ ] Developer Tools cards: confirm all 6 cards read as distinct colors
- [ ] Platform Architecture diagram: arrows and labels should appear
neutral/monochrome
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
Fixes the Pricing page mobile layout issues and replaces the dynamic
QRCode (which failed to render on mobile) with a hardcoded static SVG QR
code.
## Changes
- **Pricing.vue**: Fix responsive layout breakpoints and grid/flex rules
so the pricing comparison table renders correctly on small screens
- **Pricing.vue**: Replace dynamic QRCode component with a pre-generated
static SVG to ensure reliable display on all devices
## Motivation
The Pricing page had broken layout on mobile viewports, and the dynamic
QR code component was not rendering on mobile devices. Using a static
SVG eliminates the rendering dependency and ensures consistent display
across all platforms.
## Related
Builds on top of the Pricing page introduced in #951 and the
UnoCSS/PostCSS fixes from #955.
🤖 Auto-generated by Endless.
---------
Co-authored-by: Huacnlee Li Huashun <huacnlee@longbridge-inc.com>
Co-authored-by: Jason Lee <huacnlee@gmail.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Remove API Reference from top navigation bar (all 3 locales)
- Add API Reference entry to Docs sidebar, positioned after LLMs item
- Opens in new tab (`target: '_blank'`)
- External-link icon appended to label to signal new-tab behavior
- Add `external-link` SVG to `SIDEBAR_ICONS_MAP` in `gen.ts`
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
Implements a dedicated pricing page similar to
[financialdatasets.ai/pricing](https://www.financialdatasets.ai/pricing)
that visually compares different market data subscription levels and
their capabilities.
## Changes
- **`Pricing.vue`**: New Vue component that displays market data
subscription tiers in a pricing comparison table format, highlighting
feature availability and pricing across different permission levels
- **`index.ts`**: Registers the new `Pricing` component for use in
VitePress pages
- **`docs/en/docs/pricing.md`**: English pricing page
- **`docs/zh-CN/docs/pricing.md`**: Simplified Chinese pricing page
- **`docs/zh-HK/docs/pricing.md`**: Traditional Chinese pricing page
## Motivation
Users need a clear way to understand what market data features are
available at each subscription tier and how the tiers differ in price
and capability. A pricing comparison page makes it easy to evaluate
which subscription level fits their needs.
🤖 Auto-generated by Endless.
---------
Co-authored-by: Huacnlee Li Huashun <huacnlee@longbridge-inc.com>
Co-authored-by: Jason Lee <huacnlee@gmail.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Add `FeaturesMenu` Vue component — a mega-menu dropdown in the main
nav featuring 9 financial data product categories (Live Market Quotes,
Price History, Financial Statements, Analyst Estimates, Company News,
SEC Filings, Institutional Ownership, Options & Warrants, Order
Execution)
- Desktop: hover-triggered dropdown with 3×3 grid, icons, titles and
descriptions
- Mobile: collapsible list via `screenMenu` prop (matches VitePress
native nav screen style)
- Full i18n: en / zh-CN / zh-HK via `useData().lang`
- Replaces the Home nav link across all three locales
## Test plan
- [ ] Desktop: hover "Features" button shows dropdown with 9 items in 3
columns
- [ ] Desktop dark mode: shadow and border render cleanly
- [ ] Mobile (<768px): hamburger menu shows collapsible "Features / 功能"
section
- [ ] Switch locale (en / zh-CN / zh-HK): menu label and item text
updates accordingly
- [ ] Click any item: navigates to correct page and closes menu
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Add CLI v0.19.2 release notes to `cli.md` and `changelog.md` (EN /
zh-CN / zh-HK)
- Update `finance-calendar` command examples to reflect new subcommand
structure (`report`, `dividend`, `split`, `ipo`, `macrodata`, `closed`)
and `--filter watchlist|positions` option
## Changes
- `finance-calendar` revamp: restructured from single `<event_type>`
argument into subcommands; new `--filter` option scopes events to
watchlist or holdings
- `quote`: new "Last Chg%" column
- `corp-action`: defaults to 30 items, `--all` for full list
- `update --force`: skip version check; auto-retries with `sudo` on
permission error
- TUI: full mouse support; chart type toggle (line / candlestick) in
stock detail view
## Test plan
- [ ] Verify examples in `finance-calendar` section match `longbridge
finance-calendar --help` output
- [ ] Check all three language versions are consistent
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Add `useLoginState.ts` composable with module-level `isLoginState` ref
shared across components
- `UserAvatar` and `DashboardNavLink` both use `isLoginState` — reactive
to mock toggle without page reload
- Add `MockLoginPanel.vue` (dev-only, fixed bottom-left) to simulate
login/logout state
- `DashboardNavLink` uses `window.location.href` to bypass VitePress
router for `/account` navigation
- `initLoginState()` reads from `localStorage` in dev mode,
`window.longportInternal.isLogin()` in prod
## Test plan
- [ ] In dev mode: Mock Login/Logout button appears at bottom-left
- [ ] Clicking toggles Dashboard link and Avatar/Login button reactively
- [ ] In prod build: MockLoginPanel is not included
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Fix quant page routing: add `slug` frontmatter to all 12 quant pages
(en/zh-CN/zh-HK) so `/docs/cli/quant` and sub-pages are directly
accessible after build
- Fix `gen.ts` absolute-slug sidebar link bug — `path.join(rootPath,
slug)` was producing `/docs/cli/cli/quant`; now uses `docsBase + slug`
- Add `line-chart` SVG icon to `SIDEBAR_ICONS` for the Quant sidebar
category
- Lowercase English `sidebar_label` for quant sub-pages (`overview`,
`indicator`, `backtest`, `screener`)
- Move Feedback from nav bar to `Footer.vue` right-side links
- Add `DashboardNavLink.vue` component — shows "Dashboard / 控制台" in nav
only for logged-in users, using existing i18n key
## Test plan
- [ ] Visit `/docs/cli/quant` — should load without redirect
- [ ] Visit `/docs/cli/quant/indicator`, `/backtest`, `/screener` — all
should load directly
- [ ] Sidebar Quant section shows line-chart icon and lowercase labels
- [ ] Footer right side shows Feedback link
- [ ] Nav bar shows Dashboard link when logged in, hidden when logged
out
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Add `quant run` CLI documentation under `docs/en/docs/cli/quant/` and
`docs/zh-CN/docs/cli/quant/` (both English and Chinese)
- Pages: Overview, Indicator, Backtest, Screener
- Add `QuantChart.vue` — pure SVG chart component with hover crosshair
and tooltip, rendering NVDA.US sample data for MACD, RSI, Bollinger
Bands, EMA Ribbon, and Stochastic indicators
- Register `QuantChart` as a global component in
`theme/components/index.ts`
## Test plan
- [ ] Visit the quant docs section and verify all four pages render
correctly
- [ ] Hover over each `<QuantChart>` and verify crosshair, dots, and
tooltip appear
- [ ] Check sidebar labels: Overview / Indicator / Backtest / Screener
- [ ] Verify Chinese version renders identically under `zh-CN`
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Sunli <scott_s829@163.com>
- Save invite-code URL param as a 7-day cookie on page load and route
change
- Add User Cases section between Capabilities and Install with 3
award-winning case cards
- Cards use dynamic URLs based on current domain and locale (no lang
prefix for EN)
- Reuse skill-section layout classes; remove
uc-wrap/uc-section/uc-eyebrow/uc-subtitle
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
## Summary
- Add CLI v0.18.0 release notes to `release-notes.md` and `changelog.md`
across all three locales (en / zh-CN / zh-HK)
- TUI Orders page (PR #145): interactive orders table with trading
shortcuts and order entry dialog
- `dividend` enhancements (PR #144): `--page` pagination and `--year`
filter, 50 records per page
## Test plan
- [ ] Verify release notes appear correctly on the docs site
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
The intro text incorrectly told users to visit the website and go to
"User Center" to register an OAuth client. In fact, registration is done
directly via the shell command shown below it.