Skip to content

feat(datasource): add wind, imf, gildata, sec_edgar, and sp_data sources#2029

Merged
wbxl2000 merged 5 commits into
mainfrom
feat/datasource-add-5-sources
Jul 22, 2026
Merged

feat(datasource): add wind, imf, gildata, sec_edgar, and sp_data sources#2029
wbxl2000 merged 5 commits into
mainfrom
feat/datasource-add-5-sources

Conversation

@wbxl2000

@wbxl2000 wbxl2000 commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

Related Issue

No tracking issue — see the problem below.

Problem

The datasource gateway has launched five new backend data sources, but the kimi-datasource plugin only advertises 7 names in its get_data_source_desc enum, so the model cannot discover or route to them:

  • wind — Wind 万得: A-share/fund/bond/index quotes and financials, announcements, research, macro data
  • imf — IMF official datasets (IFS/BOP/DOTS/WEO/...): FX, CPI, balance of payments, GDP forecasts
  • gildata — 恒生聚源: natural-language stock/fund/fund-manager screening, research reports, announcements
  • sec_edgar — US SEC filings: 10-K/10-Q, XBRL metrics, Form 4 insider trades, 13F holdings, 8-K events
  • sp_data — S&P Capital IQ: US company fundamentals, estimates, holders, executives, competitors

What changed

  • Registered the five names in the get_data_source_desc input-schema enum and bumped the plugin 3.2.0 → 3.3.0 (bin/kimi-datasource.mjs VERSION, kimi.plugin.json, plugins/marketplace.json), following the same pattern as feat(datasource): add yuandian_law legal data source and request-id trace #611.
  • SKILL.md: source count 7 → 12, five new capability rows (wording pulled from the live backend docs via get_data_source_desc), and an explicit selection policy: a user-named source is used directly; one source per simple lookup (stop after the first sufficient result); otherwise the model picks from objective capability boundaries — no prescriptive routing and no cost assumptions.
  • Objective capability boundaries documented in both SKILL.md and the get_data_source_desc name schema description (e.g. yahoo_finance FX history ≈ 2 years, minute-level intraday series on wind, holders covered by yahoo_finance / sec_edgar (13F) / sp_data), so the model has neutral facts to choose with.
  • Credential rotation: retry once with re-read credentials when the backend rejects the previous access token (401), so a host-side token refresh no longer fails the call.
  • CHANGELOG.md 3.3.0 entry; docs (docs/zh + docs/en/customization/plugins.md): intro, latest version v3.3.0, five coverage-table rows, new US-equity-research scenario.
  • Tests: the enum assertion pins all 12 sources; routing-contract assertions on the schema text; a credential-rotation retry test.
  • No changeset: plugins/ changes are versioned via kimi.plugin.json / plugins/marketplace.json and shipped through the marketplace CDN (per .changeset/README.md).

Verification

  • Unit: test/utils/kimi-datasource-plugin.test.ts 6/6 green.
  • Live gateway, one real call_data_source_tool per new source: sec_edgar_get_company_info(AAPL), sp_get_company_info(AAPL), wind_get_stock_quote(600519.SH), imf_ifs_data(ENDE_XDC_USD_RATE, CHN), gildata_fin_query(贵州茅台最新收盘价) — all returned real data.
  • Headless routing (kimi -p, fresh sessions, isolated working dirs): user-named source honored 3/3 (wind / imf / sp_data, one desc + one call each); unspecified FX query → imf (2-year Yahoo limit applied); unspecified holders query → general quote sources.

Checklist

  • I have read the CONTRIBUTING document.
  • I have linked a related issue, or explained the problem above.
  • I have added tests that prove my feature works.
  • Ran gen-changesets skill, or this PR needs no changeset. (no changeset — plugin ships via marketplace CDN)
  • Ran gen-docs skill, or this PR needs no doc update. (zh/en plugin docs updated in this PR)

@changeset-bot

changeset-bot Bot commented Jul 21, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 4baddd1

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@pkg-pr-new

pkg-pr-new Bot commented Jul 21, 2026

Copy link
Copy Markdown
pnpm dlx https://pkg.pr.new/@moonshot-ai/kimi-code@4baddd1
npx https://pkg.pr.new/@moonshot-ai/kimi-code@4baddd1

commit: 4baddd1

@wbxl2000
wbxl2000 merged commit e0f2a41 into main Jul 22, 2026
23 of 24 checks passed
@wbxl2000
wbxl2000 deleted the feat/datasource-add-5-sources branch July 22, 2026 14:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant