langgenius / langgenius/dify

[Feature Request] Skills should be managed globally, independent of Agent instances

Open
#39,316 1 comment 4 reactions 0 assignees View on GitHub
💪 enhancement 1.16.0
Dominant language
TypeScript
Stars
156k
Forks
24.6k
Avg merge
22h 9m
Merged PRs (30d)
610

Description

### Self Checks

- [x] I have read the [Contributing Guide](https://github.com/langgenius/dify/blob/main/CONTRIBUTING.md) and [Language Policy](https://github.com/langgenius/dify/issues/1542).
- [x] I have searched for existing issues [search for existing issues](https://github.com/langgenius/dify/issues), including closed ones.
- [x] I confirm that I am using English to submit this report, otherwise it will be closed.
- [x] Please do not modify this template :) and fill in all the required fields.

### 1. Is this request related to a challenge you're experiencing? Tell me about your story.

Background
We are an enterprise software team in the city gas industry (Hanwei Technology Group), building multiple AI Agents on Dify 1.16.0 for gas business scenarios (dispatch assistance, customer service, safety inspection, emergency response).

The Agent Skills mechanism introduced in 1.16.0 fits our needs perfectly — distilling industry expertise into standardized skill packages for Agents to invoke contextually. However, we've identified a critical architectural limitation in practice:

Skills must be bound to a specific Agent instance and cannot be managed as independent global resources.

Problem
Currently, Skills can only be added via an Agent's Configure → Skills section. This causes:

1. High reuse cost
The same skill (e.g., "Pipeline Pressure Anomaly Diagnosis") must be uploaded separately to the dispatch Agent, customer service Agent, and inspection Agent. When a skill is updated, every referencing Agent requires re-packaging and re-uploading. Maintenance cost grows linearly with Agent count.

2. No unified governance view
In enterprise scenarios, we need to answer these questions but currently cannot:

What skills do we have in total?
Which Agents reference each skill?
What version of a skill is mounted on each Agent?
Which skills are deprecated or need upgrading?
3. Insufficient composability
Skills are statically bound at Agent creation/configuration time. At runtime, an Agent cannot dynamically borrow skills from another Agent. In practice, a single emergency response may need to invoke "pressure diagnosis," "leak localization," and "user notification" skills that belong to different Agents.

Proposed Solution
Referencing the skill management patterns in products like QoderWork and WorkBuddy:

Skills as global entities: Add a standalone "Skills" management page in Dify (similar to how Plugins are managed), supporting upload, versioning, enable/disable.
Reference instead of embed: Agents associate with global skills by reference rather than each storing a copy. Skill updates propagate automatically to all referencing Agents.
Skill marketplace / sharing (long-term): Support organization-level skill sharing, and eventually a community skill marketplace for vertical-domain skill packages.
Business Value
For enterprise users deploying Agents across multiple business lines (energy, manufacturing, finance, etc.), global skill management is foundational infrastructure for moving from "single-point experiments" to "scaled deployment." Without this layer, operational complexity becomes unmanageable as skills and Agents grow.

Environment
Dify version: 1.16.0 (Docker self-hosted)
Deployment: Docker Compose
Use case: City gas industry multi-Agent collaboration (dispatch / customer service / inspection / emergency)
Submitted by: Smart Gas Software Product Team, Hanwei Technology Group

### 2. Additional context or comments

_No response_

### 3. Can you help us with this feature?

- [x] I am interested in contributing to this feature.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the Agent Configure → Skills entry point and the existing Plugins management pattern described in the issue. Define what a standalone Skills page must support for upload, versioning, enable/disable, Agent references, and update propagation; the issue names no files or tests, so the implementation scope needs project investigation first.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker-compose
Domain
ai, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.