langgenius / langgenius/dify-plugin-daemon

PluginDaemonInternalServerError: failed to get plugin runtime when invoking tool with file upload via remote debug

Open
#771 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug plugin-daemon project#dify-plugin-daemon
Dominant language
Go
Stars
459
Forks
313
Avg merge
5h 17m
Merged PRs (30d)
5

Description

Environment

  • Remote debug install (debug.dify.ai:5003)
  • dify-plugin SDK v0.9.1
  • Python 3.12

Steps to reproduce
A router workflow calls a tool with command="add" and an uploaded .zip file (passed via the files param). The plugin process is confirmed running locally (python -m main logs Installed tool: ...).

Error
PluginDaemonInternalServerError: failed to get plugin runtime — occurring before any of the tool's own code executes.

What's been ruled out

  • manifest.yaml validated against the current SDK's Pydantic models (PluginConfiguration, I18nObject, etc.) — fully compliant
  • Simulated the exact file-download + zip-extraction flow locally using the real upload URL — succeeds without error
  • Added debug instrumentation directly in the tool's _invoke to confirm request routing/reachability

manifest.yaml

version: 0.0.2
type: plugin
author: pareek-ml
name: agent_skills
label:
  en_US: agent_skills
description:
  en_US: allows you to install and use custom skills
icon: icon.svg
icon_dark: icon-dark.svg
resource:
  memory: 268435456
  permission:
    tool:
      enabled: true
    model:
      enabled: true
      llm: true
      text_embedding: false
      rerank: false
      tts: false
      speech2text: false
      moderation: false
    endpoint:
      enabled: true
    app:
      enabled: true
    storage:
      enabled: true
      size: 104857600
plugins:
  tools:
    - provider/agent_skills.yaml
meta:
  version: 0.0.2
  arch:
    - amd64
    - arm64
  runner:
    language: python
    version: "3.12"
    entrypoint: main
  minimum_dify_version: null
created_at: 2026-07-15T16:56:51.72279+02:00
privacy: PRIVACY.md
verified: false

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the remote debug router workflow with command="add" and an uploaded .zip passed through files, then trace plugin runtime acquisition before the tool's _invoke runs. Compare that path with the confirmed local python -m main flow and the successful file-download and zip-extraction simulation. Done means the remote invocation obtains the plugin runtime and reaches the tool code without PluginDaemonInternalServerError.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, python
Domain
api, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.