Skip to content

Add iFLYTEK AI skills plugin - #293

Open
FenjuFu wants to merge 7 commits into
cursor:mainfrom
FenjuFu:feat/iflytek-skills
Open

FenjuFu wants to merge 7 commits into
cursor:mainfrom
FenjuFu:feat/iflytek-skills

Conversation

@FenjuFu

@FenjuFu FenjuFu commented Aug 30, 2026 •

Copy link
Copy Markdown

Summary

  • add iflytek-skills, a third-party skill-only plugin with eight official iFLYTEK speech, OCR, transcription, proofreading, translation, and multimodal workflows
  • register the plugin in the marketplace manifest and root plugin table
  • document dependencies, credentials, data egress, service enablement/cost, and upstream provenance

Closes #292.

Scope and provenance

The skill packages are based on iflytek/iFly-Skills@beb3ae3a16d9ba952303acac1eb801f234d9c348, and the upstream Apache-2.0 license is included unchanged. Files modified for marketplace packaging carry a prominent notice.

Included skills:

  • iflytek-hyper-tts
  • iflytek-image-understanding
  • iflytek-ocr-invoice
  • iflytek-pdf-image-ocr
  • iflytek-speed-transcription
  • iflytek-text-proofread
  • iflytek-translate
  • iflytek-video-translate

The plugin has no hooks, background processes, MCP server, automatic dependency installation, or bundled credentials. The selected scripts use HTTPS or WSS service endpoints.

As proposed in #292, this initial version excludes the incomplete contract-review clients, the voice-cloning training flow (it still uses plain HTTP at the pinned revision), and the unrelated animated-diagram skill.

Packaging fixes

Upstream has since unified credentials under IFLY_* (with XFEI_*/XFYUN_* fallback) and fixed the transcription request digest, multipart chunking, and task-query flow. Those parts of this PR now come straight from upstream, so the remaining packaging changes are:

  • sign image OCR requests with the hostname rather than hostname plus path
  • align the proofreading Host header with its signed endpoint
  • allow PDF OCR with --pdf-url and no dummy local path
  • expose the seven speed-transcription task options (--output-type, --postproc-on, --enable-subtitle, --smoothproc, --colloqproc, --language-type, --dhw) that its SKILL.md documents but the CLI rejected. This is also submitted upstream as fix(speed-transcription): expose documented task options in the CLI iflytek/iFly-Skills#106.

Five offline regression tests cover these cases.

Data boundary

Invoked skills send the requested text, image, PDF, audio, or video URL to the corresponding iFLYTEK API. The plugin README tells users to confirm organizational policy, service terms, entitlement, quota, and pricing before sending sensitive content.

Validation

  • node scripts/validate-plugins.mjs passes
  • python -m compileall -q third_party/iflytek-skills passes
  • five marketplace packaging regression tests pass
  • upstream Hyper TTS unit test passes
  • all PR commits include DCO Signed-off-by trailers

Note

Medium Risk
New third-party plugin that egresses user text/media to external iFLYTEK APIs and relies on multiple credential env-var families; risk is bounded to the new package but reviewers should confirm data-boundary docs and packaging auth fixes.

Overview
Adds the iFLYTEK Skills integration plugin to the Cursor marketplace by registering iflytek-skills in marketplace.json and the root README, alongside a new third_party/iflytek-skills package (manifest, Apache-2.0 license, changelog, and plugin README).

The plugin ships eight agent skills—hyper TTS, image understanding, invoice OCR, PDF/image OCR, speed transcription, Chinese text proofreading, machine translation, and video translation—each with SKILL.md guidance and on-invoke Python CLIs that call iFLYTEK HTTPS/WSS APIs. User content is sent to those endpoints only when a skill runs; credentials come from documented env vars (XFEI_*, IFLY_*, XFYUN_*), with no bundled secrets, hooks, or MCP.

Packaging layers targeted fixes on upstream iFly-Skills (image OCR HMAC host signing, proofreading Host headers, transcription request digests and multipart uploads, --task-id / --no-poll flows, URL-only PDF OCR) plus regression tests for those behaviors. Some upstream workflows are intentionally omitted (contract review, voice cloning, animated diagram).

Reviewed by Cursor Bugbot for commit 636eaf9. Bugbot is set up for automated code reviews on this repo. Configure here.

Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 2 potential issues.

Fix All in Cursor

Bugbot Autofix is ON, but it could not run because the branch was deleted or merged before autofix could start.

Reviewed by Cursor Bugbot for commit 90d3dd8. Configure here.

Comment thread third_party/iflytek-skills/.cursor-plugin/plugin.json
Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
Upstream now unifies credentials under IFLY_* with XFEI_*/XFYUN_*
fallback and fixes the speed-transcription digest, multipart chunking and
task-query flow, so take those files as-is and drop the local
transcription patches and their tests.

Keep the image OCR, proofreading and PDF OCR packaging fixes, and expose
the speed-transcription task options that SKILL.md documents but the
CLI rejected (also submitted upstream as iflytek/iFly-Skills#106).

Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
@FenjuFu

FenjuFu commented Oct 1, 2026

Copy link
Copy Markdown
Author

Refreshed this branch: merged current main to resolve the marketplace.json/README conflicts, and re-based the vendored skills on upstream iFly-Skills@beb3ae3. Upstream now covers the transcription fixes and the IFLY_* credential unification, so the local patch set is smaller. The one new packaging change exposes the speed-transcription options that its SKILL.md documents but the CLI rejected; that is also submitted upstream as iflytek/iFly-Skills#106. Validator, compileall, and the five packaging regression tests all pass locally.

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.

Proposal: add official iFLYTEK AI skills plugin

1 participant