Add plugin: jcaiagent7143-ui/linkdigest v0.1.0 - #3026
Closed
jcaiagent7143-ui wants to merge 1 commit into
Closed
Conversation
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DpGW9DbqX9bkgv4RTETBmV
Member
|
Closing this PR because the current Pre Check Plugin / pre-check-plugin CI run failed. CI summary:
Please address the reported failures (or rerun CI if the failure was transient) before requesting reopening or resubmitting. |
14 tasks
Author
|
Thanks for the precise CI summary — it made this a five-minute fix rather than a guess. The seven characters were platform names in a table (
Every other file in the package is byte-identical to this one. Worth noting that my checklist here claimed the text was primarily English, which was wrong by seven characters — #3044 states the position precisely instead, including that the |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Plugin Submission
Plugin information
dify/)Submission type
What changed
New plugin. One tool,
digest_url(url, format), that turns a Xiaohongshu, Douyin, TikTok, YouTube or X link into text a workflow can use: transcript with timecodes, on-screen text, a description and OCR of every image, the caption and metadata, as Markdown or JSON.The plugin runs nothing locally. It calls the hosted LinkDigest REST API (
https://linkdigest.dev) with the user's own API key from the provider credential. Long media exceeds a single request, so the API answers 202 with a job id and the plugin polls it to completion (deadline 210 s; a 17-image Xiaohongshu note measures ~119 s end to end). Credential validation hits an authenticated endpoint that starts no digest, so validating a key spends nothing.What it does not do, stated in the README and the tool's LLM description: Bilibili is not supported (the service's address gets HTTP 412), Instagram is wired but not verified end to end, Facebook is out of scope.
Risk level
Medium because the tool accepts a user-provided URL and sends it to an external service. The plugin itself fetches only
linkdigest.dev; it does not fetch the user's URL. The URL is validated server-side (http/https, ≤2048 chars) before any fetch happens.Required checks
.envfiles,.gitdirectories, virtual environments, caches, logs, or IDE files.PRIVACY.mdor a hosted privacy policy, andmanifest.yamlreferences it.Limitation, documented as the third check requires: I have not yet run this inside a Dify Community Edition or Dify Cloud instance. What was tested: the plugin's HTTP client (
linkdigest_client.py) end to end against the production API — key validation, Markdown and JSON results on a cached link (0.5 s, 0 credits), and a dead link returning the API's own explanation rather than a stack trace. The package was built withdify plugin packagev0.6.10. If the reviewer would like a run inside Dify before merging, say so and I will provide one.Security and privacy notes
linkdigest.devonly (declared inmanifest.yaml), HTTPS.Authorization: Bearerheader; never logged; not included in error messages (the client surfaces the API's error text, which does not echo the key).PRIVACY.mdstates exactly what leaves the workspace: the URL, the format, the key.Local validation
A repo-side test (
tests/test_dify_plugin_honest.py) holds every platform claim in the manifest, provider, tool and README to the service's own coverage table, so the plugin cannot advertise a platform the service does not read.Reviewer notes
Single new file:
jcaiagent7143-ui/linkdigest/linkdigest-0.1.0.difypkg. Source is public in the repository above underdify/, identical to the package contents.🤖 Generated with Claude Code
https://claude.ai/code/session_01DpGW9DbqX9bkgv4RTETBmV