Pārlūkot izejas kodu

feat: support tool plugin id

Yeuoly 6 mēneši atpakaļ
vecāks
revīzija
739e15f88b

+ 6 - 0
api/core/plugin/entities/plugin.py

@@ -110,6 +110,12 @@ class PluginEntity(BasePluginEntity):
     source: PluginInstallationSource
     meta: Mapping[str, Any]
 
+    @model_validator(mode="after")
+    def set_plugin_id(self):
+        if self.declaration.tool:
+            self.declaration.tool.plugin_id = self.plugin_id
+        return self
+
 
 class GithubPackage(BaseModel):
     repo: str

+ 1 - 0
api/core/tools/entities/tool_entities.py

@@ -377,6 +377,7 @@ class ToolEntity(BaseModel):
 
 class ToolProviderEntity(BaseModel):
     identity: ToolProviderIdentity
+    plugin_id: Optional[str] = Field(None, description="The id of the plugin")
     credentials_schema: list[ProviderConfig] = Field(default_factory=list)