Commit Graph

852 Commits

Author SHA1 Message Date
Endless Agent 47ba4d36c8 feat(dev): 优化 skill/install.md 的内容。有用户采用 OpenClaw 或 Cursor 之类安装的时候,AI 跟据文档完成了 CLI 安装,但直接吐出 `longbridge auth log
Generated by Endless task #15.

Co-authored-by: Huacnlee Li Huashun <huacnlee@longbridge-inc.com>
2026-05-20 02:26:48 +00:00
Jason Lee bb7ecc63d7 cli: Clarify US/HK short selling setup and note HK IRD fee (#1008)
## 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>
2026-05-19 16:34:51 +08:00
Jason Lee 2b0d6b1543 cli: Document short selling activation flow for order sell (#1007)
## 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>
2026-05-19 16:04:56 +08:00
Jason Lee 68443a212b feat(nav): update FeaturesMenu links to point to feature docs instead of CLI (#1006)
## Summary

- Updated all 9 feature links in `FeaturesMenu.vue` (en/zh-CN/zh-HK) to
point to the corresponding feature documentation pages instead of CLI
command pages
- Fixed `option-quote.md` title from generic "Quotes" to "Option Quotes"
(三语言同步)

## Link mapping

| Feature | Old (CLI) | New (Docs) |
|---------|-----------|------------|
| Live Market Quotes | `/docs/cli/market-data/quote` |
`/docs/quote/pull/quote` |
| Price History | `/docs/cli/market-data/kline` |
`/docs/quote/pull/history-candlestick` |
| Financial Statements | `/docs/cli/fundamentals/financial-report` |
`/docs/fundamental/fundamental/financial-report` |
| Analyst Estimates | `/docs/cli/fundamentals/consensus` |
`/docs/fundamental/fundamental/consensus` |
| Company News | `/docs/cli/content/news` | `/docs/content/news/news` |
| SEC Filings | `/docs/cli/content/filing` | `/docs/quote/pull/filings`
|
| Institutional | `/docs/cli/research/investors` |
`/docs/fundamental/fundamental/fund-holdings` |
| Options & Warrants | `/docs/cli/derivatives/option` |
`/docs/quote/pull/option-quote` |
| Order Execution | `/docs/cli/orders/order` |
`/docs/trade/trade-overview` |

## Test plan

- [ ] 点击导航栏 Features 下拉菜单中的每个功能链接,确认跳转到对应文档页面
- [ ] 验证三语言版本链接均正确

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 14:43:25 +08:00
Jason Lee 6624dd25c5 docs(quote): clarify SG market real-time quote availability (#1005)
## 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>
2026-05-19 14:21:19 +08:00
Jason Lee 0f90b0efbe docs(qa): update paper account to support US options trading (#1002)
## Summary

- 模拟账户现已支持美股期权交易,更新 QA 文档中的品种说明
- 从「不支持」列表移除期权,加入支持品种列表
- 三语言同步更新(en / zh-CN / zh-HK)

## Files Changed

- `docs/en/docs/qa/general.md` — Q4 trading section
- `docs/en/docs/qa/trade.md` — Q4 trading rules
- `docs/zh-CN/docs/qa/general.md`
- `docs/zh-CN/docs/qa/trade.md`
- `docs/zh-HK/docs/qa/general.md`
- `docs/zh-HK/docs/qa/trade.md`

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-18 14:27:45 +08:00
Jason Lee fb32a9f35b refactor(docs): reorganize quote/trade/market sidebar structure (#1001)
## 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>
2026-05-17 19:15:58 +08:00
Hogan c5b50a913d docs(cli): translate v0.21.0 new command docs to zh-CN/zh-HK (#1000)
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>
2026-05-16 16:54:51 +08:00
Hogan 3a8e735e5a docs(cli): v0.21.0 new commands — business-segments, industry-rank, industry-peers, financial-report snapshot, institution-rating --views (#998)
## Summary

Adds documentation for the 5 new commands/flags in CLI v0.21.0.

### New docs (en / zh-CN / zh-HK)
- **`business-segments`** — revenue breakdown by segment, current or
historical
- **`industry-rank`** — industry ranking by market and indicator;
counter_id links to `industry-peers`
- **`industry-peers`** — hierarchical sub-sector tree

### Updated docs
- **`financial-report`** — added `snapshot` subcommand section (AI
earnings summary + beat/miss + peer dates)
- **`institution-rating`** — added `--views` flag section
(month-by-month rating distribution)

### Release notes
- Added v0.21.0 entry to `cli/release-notes.md` (en/zh-CN/zh-HK)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-05-15 19:04:14 +08:00
Hogan 61c5a7e05b docs(changelog): CLI v0.21.0 (#997)
## 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>
2026-05-15 18:52:06 +08:00
拉罐 f1bb0e18cb Update DESIGN.md 2026-05-15 09:51:17 +08:00
Jason Lee 9d53a0939e fix(cli): collapse all sidebar groups by default (#995)
## Summary

- CLI docs sidebar 的 `market-data` 和 `quant` 分组之前未设置折叠,导致与其他分组不一致
- 将三个语言版本(en / zh-CN / zh-HK)的这两个分组统一改为 `collapsed: true`,使 CLI sidebar
所有分组默认折叠

## Test plan

- [ ] 访问 CLI 文档页面,确认所有 sidebar 分组默认均为折叠状态

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 18:54:35 +08:00
Endless 89d39f2be1 feat: sync new SDK APIs from openapi to docs site (#962)
## Summary

Syncs new SDK interfaces introduced in openapi to the developers
documentation site, along with a range of docs, UI, and infrastructure
improvements.

## New API Documentation (EN / zh-CN / zh-HK)

### Quote APIs
- `option_volume` — option volume query
- `option_volume_daily` — daily option volume query
- `short_positions` — short position data
- `update_pinned` — update pinned securities

### Fundamental APIs
- **Calendar**: dividend, earnings, IPO, macro, split calendars
- **Fundamental**: company profile, corporate actions, dividends,
executives, financial reports, fund holdings, ratings, shareholders,
valuations
- **Market**: AH premium, broker positions, index components, market
status, trading stats, unusual items

### Account APIs
- **Alert**: create, delete, list, update alerts
- **DCA** (dollar-cost averaging): create, delete, list, update, history
- **Portfolio**: capital flow, exchange rates, profit analysis (by
market, detail, summary)
- **Sharelist**: create, delete, list, update share lists

## UI / Site Improvements

- **Pricing page**: new tri-locale pricing comparison page for market
data subscription tiers; fixes for responsive layout and static QR code
on mobile
- **FeaturesMenu**: mega-menu dropdown in main nav with 9 financial data
product categories; full i18n support
- **Nav**: moved API Reference from top nav to Docs sidebar (opens in
new tab)
- **Homepage visual polish**: neutral color vars on ArchCanvas, distinct
card accent hues, section border delineation, ProductSkill gradient,
flat GetStarted background
- **Quote permission**: added permission notices across CLI docs, API
docs, and API Reference; removed unreliable client-side permission
status detection
- **Mock login toggle**: dev-only panel to simulate login/logout state;
shared reactive `useLoginState` composable

## Docs Updates

- CLI v0.19.2 release notes + updated `finance-calendar` subcommand
examples
- Corrected quote permission names to match Quote Store (pluralization,
Nasdaq Basic rename)
- Updated skill guide to use CLI-first flow
- Fixed missing zh-HK translations

## Bug Fixes

- Fixed UnoCSS build error from arbitrary `font-feature-settings` class
- Added `result.root` null guard in `postcss.config.mjs` to prevent
PostCSS crash
- Fixed home page footer rendering
- Fixed pricing page build dist

🤖 Auto-generated by Endless.

---------

Co-authored-by: 老袁 Yuan Zhanghong <zhanghong.yuan@longbridge-inc.com>
Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Jason Lee <huacnlee@gmail.com>
2026-05-14 18:13:11 +08:00
Hogan 655bb92075 fix(pack-skills): add environment selector + fix step id conflict (#993)
## Problem

PR #992 merged a version of `pack-skills.yml` that was **missing the
environment-selection logic**. Both canary and release always upload
regardless of what you select.

## Two root causes

1. **Wrong version merged** — the file in #992 didn't include
`workflow_dispatch` inputs, the `Resolve environment` step, or the `if:`
conditions
2. **Reserved keyword** — the step used `id: env`, but `env` is a
built-in GitHub Actions context. Using it as a step ID causes
`steps.env.outputs.*` to silently fail, making every `if:` evaluate to
`true`

## Fix

- Adds `workflow_dispatch` inputs: `canary` / `release` / `both`
(default: `canary`)
- Adds `Resolve environment` step with `id: setup` (not `env`)
- Adds `if:` conditions: canary step only runs when target is `canary`
or `both`; release step only when `release` or `both`

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-05-14 17:48:26 +08:00
Jason Lee cf3d7be3e7 design: 更新 Logo、优化 footer 间距与视觉细节 (#994)
## Summary

- 替换导航栏 Logo 为新版 Longbridge Developers 图片(亮/暗双套),隐藏站点文字标题,CSS 固定宽度 145px
- 去除首页 OpenAPI SDK bento 卡片灰色背景(`bg-soft` → `bg`),移除 hover 时 border 变色
- 修复首页双 Footer 问题:`LayoutInner` page-bottom 插槽对 `new-home-page` 做条件判断
- 首页 `NewHomePage/Footer` 底部 padding 增至 2.5rem;doc 页 `HomePage/Footer`
减少顶部 margin 并增加底部空白
- `skill-chat-window` border 改用 `--lb-card-border` token;暗色模式值调整为
`rgba(255,255,255,0.1)`
- 去掉 `LayoutInner` Footer 容器多余的 `px-8`

## Test plan

- [ ] 首页:Logo 正常显示(亮/暗),无站点标题文字,宽度 145px
- [ ] 首页:SDK 卡片背景为白色,hover 无 border 变色
- [ ] 首页:页脚只有一个 Footer,底部有足够留白
- [ ] Pricing 页:Footer 底部空白正常
- [ ] Skill 页:chat window border 清晰,暗色模式不过亮
- [ ] 暗色模式全面检查

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 14:52:01 +08:00
Hogan 47cd4e6982 ci: pack-skills with environment selector (canary/release/both) (#992)
## Summary

Adds `pack-skills.yml` — triggered by `repository_dispatch` from
`longbridge/skills` or manually via `workflow_dispatch`.

## Changes from previous version

Added `environment` input parameter:

| Value | Behaviour |
|---|---|
| `canary` (default) | Upload to canary OSS only — safe for testing, no
production impact |
| `release` | Upload to release OSS only |
| `both` | Upload to both (full release) |

## How to test safely

1. Run `workflow_dispatch` in `longbridge/developers` → select
**`canary`**
2. Verify zip files appear at `oss://lb-assets/github/canary/.../skill/`
3. Once confirmed, run with **`both`** to push to production

## Secrets used

Reuses existing secrets — no new secrets needed:
- `FE_LB_ASSET_ACCESS_KEY_ID`
- `FE_LB_ASSET_ACCESS_KEY_SECRET`

## Counterpart

PR #23 in `longbridge/skills` — sends the dispatch event (also updated
to manual-only + passes `environment`).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-05-14 12:02:34 +08:00
Jason Lee fc95f91c4d docs(skill): add Claude Code permission tip for Bash(longbridge *) in install guide (#990)
## Summary

- 在 Skill 安装指引(Method A CLI 章节)新增 Claude Code 专属提示
- 说明如何在 `.claude/settings.json` 中配置 `Bash(longbridge *)` 权限,避免 Claude
每次调用 `longbridge` 命令时弹出权限确认
- 三语言版本(en / zh-CN / zh-HK)同步更新

## Test plan

- [ ] 确认三语言页面渲染正常,JSON 代码块格式正确
- [ ] 确认提示位置在 `longbridge auth login` 步骤之后、CLI 文档链接之前

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 20:57:39 +08:00
Jason Lee fbce460442 docs(cli): CLI v0.20.3 release notes + v0.20.0 changelog backfill (#988)
## Summary

- Add CLI v0.20.3 release notes (3 languages): `analyst-estimates`
removal, HK symbol leading-zero fix, `ipo detail` auto-market detection
- Backfill CLI v0.20.0 changelog entry (3 languages): `ipo` command
group, `financial-statement`, `valuation-rank`, `institution-rating` new
flags, search commands, account commands

## Changes

- `docs/{en,zh-CN,zh-HK}/docs/cli/release-notes.md` — v0.20.3 entry
added at top
- `docs/{en,zh-CN,zh-HK}/docs/changelog.md` — v0.20.0 entry added
(changelog only tracks major versions)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 19:53:25 +08:00
Jason Lee 2d318616d5 docs(skill): add JSON config example for MCP server setup (#984)
## 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>
2026-05-12 14:47:57 +08:00
Sunli 7a171bb280 docs(getting-started): add refresh_access_token section for legacy API key
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.
2026-05-11 19:57:34 +08:00
Jason Lee dfe3fe41f3 docs(cli): remove analyst-estimates docs and restrict operating to HK stocks (#982)
## Summary

- 删除 `analyst-estimates` 的三语言文档(en/zh-CN/zh-HK),并从 v0.20.0 Release Notes
中移除对应条目
- 在 `operating` 文档中添加 `:::info`
提示说明仅支持港股,并将示例中的美股(AAPL.US、TSLA.US)替换为港股(700.HK、9988.HK)

## Test plan

- [ ] 确认 analyst-estimates 页面已从文档站移除
- [ ] 确认 operating 页面正确显示港股限制提示

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-11 19:09:39 +08:00
Jason Lee 011660953b docs: CLI v0.20.2 release notes + Pricing US quote session clarification (#981)
## Summary

- Add CLI v0.20.2 release notes (EN / zh-CN / zh-HK): two bug fixes —
`institution-rating --history` output formatting and IPO date display
(1970 → correct date)
- Pricing comparison table: split the misleading "盘前盘后(夜盘)行情" row into
two distinct rows — "盘前、盘中、盘后行情" (✓ Nasdaq Basic free) and "夜盘行情" (✓ US
LV1 paid only)
- Free tier card note updated to mention Nasdaq Basic covers pre-market,
regular & after-hours sessions
- `quote-permissions.yaml`: add session coverage detail to `depth` and
`kline` command descriptions, consistent with `quote` / `trades` /
`intraday`

## Test plan

- [ ] Verify Pricing page comparison table shows correct checkmarks for
the two new rows
- [ ] Verify release notes appear correctly in all three locales

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-11 16:26:21 +08:00
Jason Lee 3b8c6b3442 docs(skill): add AI step-order instruction and update en screenshots (#980)
## 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>
2026-05-11 15:23:46 +08:00
Jason Lee f40ca233fa docs(skill): restructure install guide — CLI/MCP first, add tool restrictions (#978)
## 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>
2026-05-11 14:55:10 +08:00
Jason Lee fd22a9876e fix(docs): correct CliCommand examples to use valid CLI subcommands (#974)
## 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>
2026-05-11 11:49:08 +08:00
Hogan 30ef9bfde6 fix(skill): correct install URL and package name (#972)
## Summary

Fixes #970

- **Wrong domain**: `developers.longbridge.com` → `open.longbridge.com`
- **Wrong package name**: `longbridge/developers` → `longbridge/skills`
- **Outdated flags**: removed `-y`, use `-g` only

5 files changed:
- `NewHomePage/ProductSkill.vue` — homepage AI prompt URL + CLI tab
commands
- `Skill.vue` — skill catalog npx/OpenClaw commands
- `docs/{en,zh-CN,zh-HK}/skill/install/index.md` — install guide code
blocks

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-05-09 12:43:13 +08:00
拉罐 b6cda22e13 fix(skill): ui polish — border removal, amber theme, modal scroll, in… (#968)
…stall cmd fix

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 22:10:01 +08:00
Hogan 0d241141d8 docs(skill): update install guide with correct repo and Claude Code plugin (#967)
## Summary

- Fix npx/bunx install address: `longbridge/developers` →
`longbridge/skills`(remove `-y` flag too)
- Add Claude Code plugin install as the first/recommended option for
Claude Code users:
  ```
  /plugin marketplace add longbridge/skills
  /plugin install longbridge@longbridge-skills
  ```
- Change "Two ways" → "Three ways" in all three locales (en / zh-CN /
zh-HK)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-05-08 22:00:10 +08:00
Jason Lee e339c90caf docs(cli): v0.20.0 new commands documentation (#965)
## 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>
2026-05-08 21:05:29 +08:00
拉罐 5def33f0dd feat(skill): add skill catalog page with search, modal, and plugin bar (#964)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 20:05:53 +08:00
Hogan 11e9d004a3 ci(skill): pack longbridge.zip from longbridge/skills@main (#934)
## 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>
2026-05-08 20:04:34 +08:00
Endless a2a11361f0 fix: correct API reference example URLs in openapi.yaml (#963)
## Summary

Fixes incorrect API endpoint URLs in the API Reference documentation
examples.

## Problem

Many API Reference examples were using incorrect URLs with the wrong
domain, e.g.:

```
curl --request GET \
  --url 'https://openapi.longbridge.com/watchlist/
```

## Changes

- Updated 21 incorrect API endpoint URLs in `openapi.yaml` to use the
correct domain/base URL
- Ensures all curl examples in the API Reference reflect the accurate
endpoint addresses

## Files Changed

- `openapi.yaml`: 21 URL corrections (42 lines changed)

🤖 Auto-generated by Endless.

Co-authored-by: 老袁 Yuan Zhanghong <zhanghong.yuan@longbridge-inc.com>
2026-05-08 17:37:56 +08:00
Jason Lee 3b24eb640b style(home): homepage visual polish pass (#960)
## 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>
2026-05-08 14:11:35 +08:00
Jason Lee b57d909a6f Fix pricing page build dist. (#959) 2026-05-08 10:51:18 +08:00
Endless f2483f071e fix(pricing): responsive layout & static QR code for mobile (#957)
## 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>
2026-05-08 10:16:21 +08:00
Jason Lee 04d2e2aa74 feat(nav): move API Reference from nav to Docs sidebar (#956)
## 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>
2026-05-07 22:02:41 +08:00
Jason Lee e772d79d17 fix(pricing): fix UnoCSS build errors and update page titles (#955)
## Summary

- Fix UnoCSS build error: `[font-feature-settings:'tnum']` arbitrary
class causes "Unknown word tnum&" — moved to static `style` attribute
- Fix PostCSS crash: add `result.root` null guard in
`postcss.config.mjs`
- Simplify pricing page frontmatter titles to "Pricing / 定价 / 定價"

## Test plan

- [ ] Verify `bun run build:release` completes without errors
- [ ] Verify pricing page renders correctly in all three locales

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 21:46:36 +08:00
Endless 58d538852c feat: Add pricing page comparing market data subscription tiers (#951)
## 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>
2026-05-07 21:30:02 +08:00
Jason Lee 065f5f49b6 feat(nav): add FeaturesMenu mega-menu (#952)
## 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>
2026-05-07 11:57:26 +08:00
Endless 265d570077 docs: Change skill guide to use CLI first. (#949)
🤖 Auto-generated by Endless.

Initiated by: Huacnlee Li Huashun

---------

Co-authored-by: Huacnlee Li Huashun <huacnlee@longbridge-inc.com>
2026-05-06 17:07:49 +08:00
Endless 7f906a4057 chore: Update CONTRIBUTING.md (#947)
🤖 Auto-generated by Endless.

Initiated by: Huacnlee Li Huashun

Co-authored-by: Huacnlee Li Huashun <huacnlee@longbridge-inc.com>
2026-05-06 16:32:57 +08:00
Endless 77ec65e691 Fix home page footer (#948)
🤖 Auto-generated by Endless.

Initiated by: Huacnlee Li Huashun

---------

Co-authored-by: Huacnlee Li Huashun <huacnlee@longbridge-inc.com>
2026-05-06 16:32:31 +08:00
Jason Lee 49bdcbdb27 fix(quote): correct quote permission names to match Quote Store (#946)
## Summary

- 英文文档中 `LV1 Real-time Quote (OpenAPI)` 统一改为 `LV1 Real-time Quotes
(OpenAPI)`(补复数 s)
- 英文文档中 `LV1 Nasdaq Basic` 改为 `Nasdaq Basic`
- zh-CN / zh-HK overview 中残留的英文行情卡名改为对应本地化名称
- zh-CN / zh-HK getting-started 中旧名「纳斯达克最优报价」改为「纳斯达克 Basic 行情」

## Test plan

- [ ] 确认三语言 overview 表格中行情卡名称与行情商城一致
- [ ] 确认 getting-started 夜盘说明中卡名正确
- [ ] 确认 API 文档中 trade_session / overnight_quote 说明名称正确

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 20:36:32 +08:00
Jason Lee 62fe55a617 fix(quote-permission): 移除权限状态检测,修正 depth 等级,重命名 lv2 标签
- 删除客户端权限状态检测(API 调用、activated/not_activated 徽章、loading spinner)
  原因:线上全部显示 Not activated,逻辑不可靠
- depth 命令 level 从 lv2 改为 lv1(lv1 已可查看盘口,lv2 才有十档)
- lv2 标签改为 LV2 Advanced / LV2 高级行情,去掉"订阅"一词
- 清理 QuotePermissionData.ts 及 quote-permissions.yaml 中对应的废弃字段

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 18:52:49 +08:00
Jason Lee 050039c84c docs(cli): add v0.19.2 release notes and update finance-calendar docs (#944)
## 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>
2026-05-05 18:38:11 +08:00
Endless 8becc115ca feat(quote-permission): add quote permission notices to CLI docs, API docs, and API Reference (#939)
🤖 Auto-generated by Endless.

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Jason Lee <huacnlee@gmail.com>
2026-05-05 18:37:25 +08:00
Endless 9f4d48af65 docs: Update CLI docs to match with the CLI commands. (#943)
🤖 Auto-generated by Endless.
2026-05-04 16:50:19 +08:00
Endless 76cd47f8da docs: Fix missing zh-HK translate (#942)
🤖 Auto-generated by Endless.
2026-05-04 15:49:48 +08:00
Endless cff585e01e docs: Fix zh-HK translate in skill page. (#941)
🤖 Auto-generated by Endless.
2026-05-03 22:27:41 +08:00
Jason Lee 827fcae560 feat(dev): add mock login toggle and shared login state (#937)
## 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>
2026-05-01 00:04:45 +08:00