plugin-agent-orchestrator 1.0.6 → 1.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -291
- package/dist/client/AIEmployeesContext.d.ts +7 -0
- package/dist/client/OrchestratorSettings.d.ts +2 -1
- package/dist/client/index.js +1 -1
- package/dist/client/plugin.d.ts +1 -0
- package/dist/client/skill-hub/components/ExecutionHistory.d.ts +2 -0
- package/dist/client/skill-hub/components/ExecutionProgress.d.ts +20 -0
- package/dist/client/skill-hub/components/GitSkillImport.d.ts +7 -0
- package/dist/client/skill-hub/components/SkillEditor.d.ts +7 -0
- package/dist/client/skill-hub/components/SkillManager.d.ts +2 -0
- package/dist/client/skill-hub/components/SkillMetrics.d.ts +2 -0
- package/dist/client/skill-hub/components/SkillTestPanel.d.ts +7 -0
- package/dist/client/skill-hub/index.d.ts +10 -0
- package/dist/client/skill-hub/locale.d.ts +3 -0
- package/dist/client/skill-hub/tools/InteractionSchemasProvider.d.ts +19 -0
- package/dist/client/skill-hub/tools/SkillHubCard.d.ts +3 -0
- package/dist/client/skill-hub/utils/jsonFields.d.ts +3 -0
- package/dist/externalVersion.js +6 -6
- package/dist/node_modules/adm-zip/LICENSE +21 -0
- package/dist/node_modules/adm-zip/adm-zip.js +1 -0
- package/dist/node_modules/adm-zip/headers/entryHeader.js +377 -0
- package/dist/node_modules/adm-zip/headers/index.js +2 -0
- package/dist/node_modules/adm-zip/headers/mainHeader.js +130 -0
- package/dist/node_modules/adm-zip/methods/deflater.js +33 -0
- package/dist/node_modules/adm-zip/methods/index.js +3 -0
- package/dist/node_modules/adm-zip/methods/inflater.js +34 -0
- package/dist/node_modules/adm-zip/methods/zipcrypto.js +175 -0
- package/dist/node_modules/adm-zip/package.json +1 -0
- package/dist/node_modules/adm-zip/util/constants.js +142 -0
- package/dist/node_modules/adm-zip/util/decoder.js +5 -0
- package/dist/node_modules/adm-zip/util/errors.js +63 -0
- package/dist/node_modules/adm-zip/util/fattr.js +76 -0
- package/dist/node_modules/adm-zip/util/index.js +5 -0
- package/dist/node_modules/adm-zip/util/utils.js +339 -0
- package/dist/node_modules/adm-zip/zipEntry.js +405 -0
- package/dist/node_modules/adm-zip/zipFile.js +446 -0
- package/dist/node_modules/simple-git/dist/cjs/index.js +7399 -0
- package/dist/node_modules/simple-git/dist/esm/index.js +4745 -0
- package/dist/node_modules/simple-git/dist/esm/package.json +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/api.d.ts +13 -0
- package/dist/node_modules/simple-git/dist/src/lib/args/log-format.d.ts +9 -0
- package/dist/node_modules/simple-git/dist/src/lib/errors/git-construct-error.d.ts +15 -0
- package/dist/node_modules/simple-git/dist/src/lib/errors/git-error.d.ts +30 -0
- package/dist/node_modules/simple-git/dist/src/lib/errors/git-plugin-error.d.ts +7 -0
- package/dist/node_modules/simple-git/dist/src/lib/errors/git-response-error.d.ts +32 -0
- package/dist/node_modules/simple-git/dist/src/lib/errors/task-configuration-error.d.ts +12 -0
- package/dist/node_modules/simple-git/dist/src/lib/git-factory.d.ts +15 -0
- package/dist/node_modules/simple-git/dist/src/lib/git-logger.d.ts +21 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-branch-delete.d.ts +5 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-branch.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-commit.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-diff-summary.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-fetch.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-list-log-summary.d.ts +6 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-merge.d.ts +11 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-move.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-pull.d.ts +6 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-push.d.ts +4 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-remote-messages.d.ts +5 -0
- package/dist/node_modules/simple-git/dist/src/lib/parsers/parse-remote-objects.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/abort-plugin.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/block-unsafe-operations-plugin.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/command-config-prefixing-plugin.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/completion-detection.plugin.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/custom-binary.plugin.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/error-detection.plugin.d.ts +7 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/index.d.ts +11 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/plugin-store.d.ts +11 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/progress-monitor-plugin.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/simple-git-plugin.d.ts +48 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/spawn-options-plugin.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/suffix-paths.plugin.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/plugins/timout-plugin.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/BranchDeleteSummary.d.ts +12 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/BranchSummary.d.ts +14 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/CheckIgnore.d.ts +4 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/CleanSummary.d.ts +9 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/ConfigList.d.ts +13 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/DiffSummary.d.ts +10 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/FileStatusSummary.d.ts +9 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/GetRemoteSummary.d.ts +11 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/InitSummary.d.ts +9 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/MergeSummary.d.ts +16 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/PullSummary.d.ts +25 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/StatusSummary.d.ts +19 -0
- package/dist/node_modules/simple-git/dist/src/lib/responses/TagList.d.ts +7 -0
- package/dist/node_modules/simple-git/dist/src/lib/runners/git-executor-chain.d.ts +25 -0
- package/dist/node_modules/simple-git/dist/src/lib/runners/git-executor.d.ts +14 -0
- package/dist/node_modules/simple-git/dist/src/lib/runners/promise-wrapped.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/runners/scheduler.d.ts +11 -0
- package/dist/node_modules/simple-git/dist/src/lib/runners/tasks-pending-queue.d.ts +23 -0
- package/dist/node_modules/simple-git/dist/src/lib/simple-git-api.d.ts +20 -0
- package/dist/node_modules/simple-git/dist/src/lib/task-callback.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/apply-patch.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/branch.d.ts +7 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/change-working-directory.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/check-ignore.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/check-is-repo.d.ts +9 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/checkout.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/clean.d.ts +25 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/clone.d.ts +9 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/commit.d.ts +4 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/config.d.ts +8 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/count-objects.d.ts +12 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/diff-name-status.d.ts +12 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/diff.d.ts +5 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/fetch.d.ts +4 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/first-commit.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/grep.d.ts +12 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/hash-object.d.ts +5 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/init.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/log.d.ts +32 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/merge.d.ts +4 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/move.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/pull.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/push.d.ts +9 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/remote.d.ts +8 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/reset.d.ts +11 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/show.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/stash-list.d.ts +4 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/status.d.ts +3 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/sub-module.d.ts +5 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/tag.d.ts +18 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/task.d.ts +14 -0
- package/dist/node_modules/simple-git/dist/src/lib/tasks/version.d.ts +9 -0
- package/dist/node_modules/simple-git/dist/src/lib/types/handlers.d.ts +21 -0
- package/dist/node_modules/simple-git/dist/src/lib/types/index.d.ts +136 -0
- package/dist/node_modules/simple-git/dist/src/lib/types/tasks.d.ts +19 -0
- package/dist/node_modules/simple-git/dist/src/lib/utils/argument-filters.d.ts +14 -0
- package/dist/node_modules/simple-git/dist/src/lib/utils/exit-codes.d.ts +10 -0
- package/dist/node_modules/simple-git/dist/src/lib/utils/git-output-streams.d.ts +7 -0
- package/dist/node_modules/simple-git/dist/src/lib/utils/index.d.ts +8 -0
- package/dist/node_modules/simple-git/dist/src/lib/utils/line-parser.d.ts +15 -0
- package/dist/node_modules/simple-git/dist/src/lib/utils/simple-git-options.d.ts +2 -0
- package/dist/node_modules/simple-git/dist/src/lib/utils/task-options.d.ts +13 -0
- package/dist/node_modules/simple-git/dist/src/lib/utils/task-parser.d.ts +5 -0
- package/dist/node_modules/simple-git/dist/src/lib/utils/util.d.ts +47 -0
- package/dist/node_modules/simple-git/dist/typings/errors.d.ts +5 -0
- package/dist/node_modules/simple-git/dist/typings/index.d.ts +14 -0
- package/dist/node_modules/simple-git/dist/typings/response.d.ts +556 -0
- package/dist/node_modules/simple-git/dist/typings/simple-git.d.ts +1033 -0
- package/dist/node_modules/simple-git/dist/typings/types.d.ts +22 -0
- package/dist/node_modules/simple-git/node_modules/debug/package.json +64 -0
- package/dist/node_modules/simple-git/node_modules/debug/src/browser.js +272 -0
- package/dist/node_modules/simple-git/node_modules/debug/src/common.js +292 -0
- package/dist/node_modules/simple-git/node_modules/debug/src/index.js +10 -0
- package/dist/node_modules/simple-git/node_modules/debug/src/node.js +263 -0
- package/dist/node_modules/simple-git/package.json +1 -0
- package/dist/node_modules/simple-git/promise.js +17 -0
- package/dist/server/collections/agent-execution-spans.d.ts +9 -0
- package/dist/server/collections/agent-execution-spans.js +152 -0
- package/dist/server/collections/orchestrator-config.js +16 -0
- package/dist/server/collections/orchestrator-logs.js +19 -2
- package/dist/server/collections/skill-definitions.d.ts +3 -0
- package/dist/server/collections/skill-definitions.js +158 -0
- package/dist/server/collections/skill-executions.d.ts +3 -0
- package/dist/server/collections/skill-executions.js +123 -0
- package/dist/server/collections/skill-worker-configs.d.ts +3 -0
- package/dist/server/collections/skill-worker-configs.js +115 -0
- package/dist/server/migrations/20260423000000-add-progress-fields.d.ts +4 -0
- package/dist/server/migrations/20260423000000-add-progress-fields.js +69 -0
- package/dist/server/migrations/20260425000000-add-interaction-schema.d.ts +4 -0
- package/dist/server/migrations/20260425000000-add-interaction-schema.js +61 -0
- package/dist/server/migrations/20260427000000-add-tracing-detail-fields.d.ts +7 -0
- package/dist/server/migrations/20260427000000-add-tracing-detail-fields.js +62 -0
- package/dist/server/migrations/20260427000000-change-packages-to-text.d.ts +4 -0
- package/dist/server/migrations/20260427000000-change-packages-to-text.js +70 -0
- package/dist/server/migrations/20260427000001-change-other-json-to-text.d.ts +4 -0
- package/dist/server/migrations/20260427000001-change-other-json-to-text.js +80 -0
- package/dist/server/migrations/20260429000000-add-llm-fields.d.ts +7 -0
- package/dist/server/migrations/20260429000000-add-llm-fields.js +68 -0
- package/dist/server/migrations/20260429000000-fix-inputargs-json-to-text.d.ts +16 -0
- package/dist/server/migrations/20260429000000-fix-inputargs-json-to-text.js +51 -0
- package/dist/server/migrations/20260503000000-add-orchestrator-trace-fields.d.ts +7 -0
- package/dist/server/migrations/20260503000000-add-orchestrator-trace-fields.js +57 -0
- package/dist/server/plugin.d.ts +3 -0
- package/dist/server/plugin.js +37 -1
- package/dist/server/resources/tracing.js +160 -12
- package/dist/server/services/CodeValidator.d.ts +32 -0
- package/dist/server/services/CodeValidator.js +205 -0
- package/dist/server/services/ExecutionSpanService.d.ts +44 -0
- package/dist/server/services/ExecutionSpanService.js +104 -0
- package/dist/server/services/FileManager.d.ts +28 -0
- package/dist/server/services/FileManager.js +151 -0
- package/dist/server/services/SandboxRunner.d.ts +41 -0
- package/dist/server/services/SandboxRunner.js +167 -0
- package/dist/server/services/SkillManager.d.ts +6 -0
- package/dist/server/services/SkillManager.js +640 -0
- package/dist/server/services/SkillRepositoryService.d.ts +22 -0
- package/dist/server/services/SkillRepositoryService.js +157 -0
- package/dist/server/services/WorkerEnvManager.d.ts +26 -0
- package/dist/server/services/WorkerEnvManager.js +120 -0
- package/dist/server/skill-hub/actions/git-import.d.ts +21 -0
- package/dist/server/skill-hub/actions/git-import.js +413 -0
- package/dist/server/skill-hub/mcp/McpController.d.ts +15 -0
- package/dist/server/skill-hub/mcp/McpController.js +111 -0
- package/dist/server/skill-hub/plugin.d.ts +58 -0
- package/dist/server/skill-hub/plugin.js +694 -0
- package/dist/server/skill-hub/sandbox-config.json +6 -0
- package/dist/server/skill-hub/tasks/SkillExecutionTask.d.ts +14 -0
- package/dist/server/skill-hub/tasks/SkillExecutionTask.js +267 -0
- package/dist/server/skill-hub/utils/json-fields.d.ts +7 -0
- package/dist/server/skill-hub/utils/json-fields.js +88 -0
- package/dist/server/tools/delegate-task.d.ts +4 -0
- package/dist/server/tools/delegate-task.js +832 -119
- package/dist/server/tools/skill-execute.d.ts +36 -0
- package/dist/server/tools/skill-execute.js +167 -0
- package/package.json +3 -1
- package/src/client/AIEmployeeSelect.tsx +1 -3
- package/src/client/AIEmployeesContext.tsx +28 -13
- package/src/client/OrchestratorSettings.tsx +43 -5
- package/src/client/RulesTab.tsx +368 -21
- package/src/client/TracingTab.tsx +316 -102
- package/src/client/plugin.tsx +39 -0
- package/src/client/skill-hub/components/ExecutionHistory.tsx +201 -0
- package/src/client/skill-hub/components/ExecutionProgress.tsx +55 -0
- package/src/client/skill-hub/components/GitSkillImport.tsx +555 -0
- package/src/client/skill-hub/components/SkillEditor.tsx +456 -0
- package/src/client/skill-hub/components/SkillManager.tsx +181 -0
- package/src/client/skill-hub/components/SkillMetrics.tsx +124 -0
- package/src/client/skill-hub/components/SkillTestPanel.tsx +144 -0
- package/src/client/skill-hub/index.tsx +75 -0
- package/src/client/skill-hub/locale.ts +16 -0
- package/src/client/skill-hub/tools/InteractionSchemasProvider.tsx +59 -0
- package/src/client/skill-hub/tools/SkillHubCard.tsx +78 -0
- package/src/client/skill-hub/utils/jsonFields.ts +37 -0
- package/src/server/collections/agent-execution-spans.ts +129 -0
- package/src/server/collections/orchestrator-config.ts +17 -0
- package/src/server/collections/orchestrator-logs.ts +19 -2
- package/src/server/collections/skill-definitions.ts +128 -0
- package/src/server/collections/skill-executions.ts +94 -0
- package/src/server/collections/skill-worker-configs.ts +86 -0
- package/src/server/migrations/20260423000000-add-progress-fields.ts +50 -0
- package/src/server/migrations/20260425000000-add-interaction-schema.ts +35 -0
- package/src/server/migrations/20260427000000-add-tracing-detail-fields.ts +41 -0
- package/src/server/migrations/20260427000000-change-packages-to-text.ts +47 -0
- package/src/server/migrations/20260427000001-change-other-json-to-text.ts +57 -0
- package/src/server/migrations/20260429000000-add-llm-fields.ts +46 -0
- package/src/server/migrations/20260429000000-fix-inputargs-json-to-text.ts +38 -0
- package/src/server/migrations/20260503000000-add-orchestrator-trace-fields.ts +32 -0
- package/src/server/plugin.ts +51 -3
- package/src/server/resources/tracing.ts +187 -16
- package/src/server/services/CodeValidator.ts +159 -0
- package/src/server/services/ExecutionSpanService.ts +106 -0
- package/src/server/services/FileManager.ts +144 -0
- package/src/server/services/SandboxRunner.ts +205 -0
- package/src/server/services/SkillManager.ts +623 -0
- package/src/server/services/SkillRepositoryService.ts +142 -0
- package/src/server/services/WorkerEnvManager.ts +113 -0
- package/src/server/skill-hub/actions/git-import.ts +486 -0
- package/src/server/skill-hub/mcp/McpController.ts +86 -0
- package/src/server/skill-hub/plugin.ts +771 -0
- package/src/server/skill-hub/sandbox-config.json +6 -0
- package/src/server/skill-hub/tasks/SkillExecutionTask.ts +297 -0
- package/src/server/skill-hub/utils/json-fields.ts +57 -0
- package/src/server/tools/delegate-task.ts +1085 -147
- package/src/server/tools/skill-execute.ts +157 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export declare function createSkillExecuteTool(plugin: any): {
|
|
2
|
+
scope: string;
|
|
3
|
+
execution: string;
|
|
4
|
+
defaultPermission: string;
|
|
5
|
+
introduction: {
|
|
6
|
+
title: string;
|
|
7
|
+
about: string;
|
|
8
|
+
};
|
|
9
|
+
definition: {
|
|
10
|
+
name: string;
|
|
11
|
+
description: string;
|
|
12
|
+
schema: {
|
|
13
|
+
type: string;
|
|
14
|
+
properties: {
|
|
15
|
+
action: {
|
|
16
|
+
type: string;
|
|
17
|
+
enum: string[];
|
|
18
|
+
description: string;
|
|
19
|
+
};
|
|
20
|
+
skillName: {
|
|
21
|
+
type: string;
|
|
22
|
+
description: string;
|
|
23
|
+
};
|
|
24
|
+
input: {
|
|
25
|
+
type: string;
|
|
26
|
+
description: string;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
required: string[];
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
invoke(args: Record<string, any>, options?: any): Promise<{
|
|
33
|
+
status: string;
|
|
34
|
+
content: string;
|
|
35
|
+
}>;
|
|
36
|
+
};
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
var __defProp = Object.defineProperty;
|
|
11
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
12
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14
|
+
var __export = (target, all) => {
|
|
15
|
+
for (var name in all)
|
|
16
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
17
|
+
};
|
|
18
|
+
var __copyProps = (to, from, except, desc) => {
|
|
19
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
20
|
+
for (let key of __getOwnPropNames(from))
|
|
21
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
22
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
23
|
+
}
|
|
24
|
+
return to;
|
|
25
|
+
};
|
|
26
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
27
|
+
var skill_execute_exports = {};
|
|
28
|
+
__export(skill_execute_exports, {
|
|
29
|
+
createSkillExecuteTool: () => createSkillExecuteTool
|
|
30
|
+
});
|
|
31
|
+
module.exports = __toCommonJS(skill_execute_exports);
|
|
32
|
+
var import_json_fields = require("../skill-hub/utils/json-fields");
|
|
33
|
+
function createSkillExecuteTool(plugin) {
|
|
34
|
+
return {
|
|
35
|
+
scope: "CUSTOM",
|
|
36
|
+
execution: "backend",
|
|
37
|
+
defaultPermission: "ASK",
|
|
38
|
+
introduction: {
|
|
39
|
+
title: "Skill Hub - Universal Skill Executor",
|
|
40
|
+
about: "A universal gateway to execute predefined specialized skills (data processing, complex calculations, file generation, etc.) inside a secure Python/Node.js sandbox."
|
|
41
|
+
},
|
|
42
|
+
definition: {
|
|
43
|
+
name: "skill_hub_execute",
|
|
44
|
+
description: `A universal gateway to execute various predefined specialized skills (e.g., data transformation, calculations, document/presentation generation) in an isolated sandbox.
|
|
45
|
+
HOW TO USE THIS TOOL:
|
|
46
|
+
1. If you don't know the exact 'skillName' or its required 'input' schema, first call this tool with { "action": "list" } to discover all available skills.
|
|
47
|
+
2. For complex workflow skills, call { "action": "describe", "skillName": "<exact_skill_name>" } to load the full instructions before execution.
|
|
48
|
+
3. To run a skill, call this tool with { "action": "execute", "skillName": "<exact_skill_name>", "input": { <parameters> } }.
|
|
49
|
+
CRITICAL: Do NOT guess or hallucinate the 'input' object. You MUST strictly provide the parameters matching the JSON schema defined for that specific skill.
|
|
50
|
+
The skill's output may contain text results, structured JSON data, or download URLs for generated files.
|
|
51
|
+
IMPORTANT: If the skill returns file download URLs, you MUST format them as clickable Markdown links (e.g., [Download filename.ext](/api/attachments/...)) in your final response to the user.`,
|
|
52
|
+
schema: {
|
|
53
|
+
type: "object",
|
|
54
|
+
properties: {
|
|
55
|
+
action: {
|
|
56
|
+
type: "string",
|
|
57
|
+
enum: ["list", "describe", "execute"],
|
|
58
|
+
description: '"list" to see available skills, "describe" to load full instructions, "execute" to run one'
|
|
59
|
+
},
|
|
60
|
+
skillName: {
|
|
61
|
+
type: "string",
|
|
62
|
+
description: 'Skill name (required for "execute" action)'
|
|
63
|
+
},
|
|
64
|
+
input: {
|
|
65
|
+
type: "object",
|
|
66
|
+
description: "Input parameters matching the skill inputSchema"
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
required: ["action"]
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
async invoke(args, options) {
|
|
73
|
+
var _a;
|
|
74
|
+
const ctx = options == null ? void 0 : options.context;
|
|
75
|
+
plugin.app.logger.info(`[skill-execute] Tool invoked with action: ${args.action}, skillName: ${args.skillName}`);
|
|
76
|
+
if (args.action === "list") {
|
|
77
|
+
const skills = await plugin.db.getRepository("skillDefinitions").find({
|
|
78
|
+
filter: { enabled: true },
|
|
79
|
+
fields: ["name", "title", "description", "language", "inputSchema", "instructions", "storageType"]
|
|
80
|
+
});
|
|
81
|
+
const skillList = skills.map((s) => ({
|
|
82
|
+
name: s.get("name"),
|
|
83
|
+
title: s.get("title"),
|
|
84
|
+
description: s.get("description"),
|
|
85
|
+
language: s.get("language"),
|
|
86
|
+
inputSchema: (0, import_json_fields.parseJsonText)(s.get("inputSchema"), null),
|
|
87
|
+
hasInstructions: !!s.get("instructions") || s.get("storageType") === "plugin",
|
|
88
|
+
storageType: s.get("storageType")
|
|
89
|
+
}));
|
|
90
|
+
return {
|
|
91
|
+
status: "success",
|
|
92
|
+
content: JSON.stringify({ skills: skillList })
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
if (args.action === "describe") {
|
|
96
|
+
if (!args.skillName) {
|
|
97
|
+
return { status: "error", content: "Missing skillName parameter" };
|
|
98
|
+
}
|
|
99
|
+
const skill = await plugin.db.getRepository("skillDefinitions").findOne({
|
|
100
|
+
filter: { name: args.skillName, enabled: true }
|
|
101
|
+
});
|
|
102
|
+
if (!skill) {
|
|
103
|
+
return {
|
|
104
|
+
status: "error",
|
|
105
|
+
content: `Skill "${args.skillName}" not found or disabled`
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
const instructions = typeof plugin.getSkillInstructions === "function" ? await plugin.getSkillInstructions(skill) : skill.get("instructions");
|
|
109
|
+
return {
|
|
110
|
+
status: "success",
|
|
111
|
+
content: JSON.stringify({
|
|
112
|
+
name: skill.get("name"),
|
|
113
|
+
title: skill.get("title"),
|
|
114
|
+
description: skill.get("description"),
|
|
115
|
+
language: skill.get("language"),
|
|
116
|
+
inputSchema: (0, import_json_fields.parseJsonText)(skill.get("inputSchema"), null),
|
|
117
|
+
packages: (0, import_json_fields.parseJsonText)(skill.get("packages"), []),
|
|
118
|
+
storageType: skill.get("storageType"),
|
|
119
|
+
storageUrl: skill.get("storageUrl"),
|
|
120
|
+
instructions
|
|
121
|
+
})
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
if (args.action === "execute") {
|
|
125
|
+
if (!args.skillName) {
|
|
126
|
+
return { status: "error", content: "Missing skillName parameter" };
|
|
127
|
+
}
|
|
128
|
+
const skill = await plugin.db.getRepository("skillDefinitions").findOne({
|
|
129
|
+
filter: { name: args.skillName, enabled: true }
|
|
130
|
+
});
|
|
131
|
+
if (!skill) {
|
|
132
|
+
return {
|
|
133
|
+
status: "error",
|
|
134
|
+
content: `Skill "${args.skillName}" not found or disabled`
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
try {
|
|
138
|
+
const result = await plugin.executeSkill(skill, args.input || {}, ctx);
|
|
139
|
+
return {
|
|
140
|
+
status: result.status === "succeeded" ? "success" : "error",
|
|
141
|
+
content: JSON.stringify({
|
|
142
|
+
message: result.status === "succeeded" ? `Executed successfully. ${((_a = result.files) == null ? void 0 : _a.length) || 0} file(s) generated.` : `Failed: ${result.stderr}`,
|
|
143
|
+
stdout: result.stdout,
|
|
144
|
+
stderr: result.stderr,
|
|
145
|
+
files: result.files,
|
|
146
|
+
execId: result.execId,
|
|
147
|
+
durationMs: result.durationMs
|
|
148
|
+
})
|
|
149
|
+
};
|
|
150
|
+
} catch (error) {
|
|
151
|
+
return {
|
|
152
|
+
status: "error",
|
|
153
|
+
content: `Execution error: ${error instanceof Error ? error.message : String(error)}`
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return {
|
|
158
|
+
status: "error",
|
|
159
|
+
content: `Unknown action "${args.action}". Use "list", "describe", or "execute".`
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
165
|
+
0 && (module.exports = {
|
|
166
|
+
createSkillExecuteTool
|
|
167
|
+
});
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"displayName.zh-CN": "代理协调器",
|
|
5
5
|
"displayName.vi-VN": "Điều phối Agent",
|
|
6
6
|
"description": "Hierarchical Multi-Agent orchestration for NocoBase AI Employees. Enables Leader agents to delegate tasks to Sub-Agent employees without modifying core plugin-ai.",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.14",
|
|
8
8
|
"license": "Apache-2.0",
|
|
9
9
|
"main": "dist/server/index.js",
|
|
10
10
|
"keywords": [
|
|
@@ -31,6 +31,8 @@
|
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@langchain/core": "^0.3.0",
|
|
33
33
|
"@langchain/langgraph": "^0.2.0",
|
|
34
|
+
"adm-zip": "^0.5.10",
|
|
35
|
+
"simple-git": "^3.22.0",
|
|
34
36
|
"zod": "^3.23.0"
|
|
35
37
|
},
|
|
36
38
|
"peerDependencies": {
|
|
@@ -39,9 +39,7 @@ export const AIEmployeeSelect: React.FC<{
|
|
|
39
39
|
optionRender={(option) => (
|
|
40
40
|
<div>
|
|
41
41
|
<div style={{ fontWeight: 500 }}>{option.label}</div>
|
|
42
|
-
{option.data.description &&
|
|
43
|
-
<div style={{ fontSize: 12, color: '#888' }}>{option.data.description}</div>
|
|
44
|
-
)}
|
|
42
|
+
{option.data.description && <div style={{ fontSize: 12, color: '#888' }}>{option.data.description}</div>}
|
|
45
43
|
</div>
|
|
46
44
|
)}
|
|
47
45
|
/>
|
|
@@ -5,51 +5,66 @@ interface AIEmployeeInfo {
|
|
|
5
5
|
username: string;
|
|
6
6
|
nickname: string;
|
|
7
7
|
about?: string;
|
|
8
|
+
skills: string[];
|
|
8
9
|
}
|
|
9
10
|
|
|
10
11
|
interface AIEmployeesContextType {
|
|
11
12
|
employees: AIEmployeeInfo[];
|
|
12
13
|
employeeMap: Map<string, string>;
|
|
14
|
+
skillsMap: Map<string, Set<string>>;
|
|
13
15
|
loading: boolean;
|
|
16
|
+
refresh: () => void;
|
|
14
17
|
}
|
|
15
18
|
|
|
16
19
|
const AIEmployeesContext = createContext<AIEmployeesContextType>({
|
|
17
20
|
employees: [],
|
|
18
21
|
employeeMap: new Map(),
|
|
22
|
+
skillsMap: new Map(),
|
|
19
23
|
loading: false,
|
|
24
|
+
refresh: () => {},
|
|
20
25
|
});
|
|
21
26
|
|
|
22
27
|
/**
|
|
23
28
|
* P3 FIX: Shared context provider that fetches aiEmployees once
|
|
24
29
|
* and shares the data across RulesTab, TracingTab, and AIEmployeeSelect.
|
|
30
|
+
*
|
|
31
|
+
* Also exposes each employee's configured skills so RulesTab can warn when
|
|
32
|
+
* a delegation rule exists but the leader hasn't added the corresponding
|
|
33
|
+
* delegate_<leader>_to_<sub> tool to its skillSettings.
|
|
25
34
|
*/
|
|
26
35
|
export const AIEmployeesProvider: React.FC<{ children: React.ReactNode }> = ({ children }) => {
|
|
27
|
-
const { data, loading } = useRequest({
|
|
36
|
+
const { data, loading, refresh } = useRequest({
|
|
28
37
|
url: 'aiEmployees:list',
|
|
29
38
|
params: { pageSize: 200 },
|
|
30
39
|
});
|
|
31
40
|
|
|
32
41
|
const value = React.useMemo(() => {
|
|
33
42
|
const rawEmployees = (data as any)?.data || [];
|
|
34
|
-
const employees: AIEmployeeInfo[] = rawEmployees.map((emp: any) =>
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
43
|
+
const employees: AIEmployeeInfo[] = rawEmployees.map((emp: any) => {
|
|
44
|
+
const skills = Array.isArray(emp.skillSettings?.skills)
|
|
45
|
+
? emp.skillSettings.skills
|
|
46
|
+
.map((s: any) => (typeof s === 'string' ? s : s?.name))
|
|
47
|
+
.filter((name: any): name is string => typeof name === 'string' && name.length > 0)
|
|
48
|
+
: [];
|
|
49
|
+
return {
|
|
50
|
+
username: emp.username,
|
|
51
|
+
nickname: emp.nickname || emp.username,
|
|
52
|
+
about: emp.about?.substring(0, 80),
|
|
53
|
+
skills,
|
|
54
|
+
};
|
|
55
|
+
});
|
|
39
56
|
|
|
40
57
|
const employeeMap = new Map<string, string>();
|
|
58
|
+
const skillsMap = new Map<string, Set<string>>();
|
|
41
59
|
for (const emp of employees) {
|
|
42
60
|
employeeMap.set(emp.username, emp.nickname);
|
|
61
|
+
skillsMap.set(emp.username, new Set(emp.skills));
|
|
43
62
|
}
|
|
44
63
|
|
|
45
|
-
return { employees, employeeMap, loading };
|
|
46
|
-
}, [data, loading]);
|
|
64
|
+
return { employees, employeeMap, skillsMap, loading, refresh };
|
|
65
|
+
}, [data, loading, refresh]);
|
|
47
66
|
|
|
48
|
-
return
|
|
49
|
-
<AIEmployeesContext.Provider value={value}>
|
|
50
|
-
{children}
|
|
51
|
-
</AIEmployeesContext.Provider>
|
|
52
|
-
);
|
|
67
|
+
return <AIEmployeesContext.Provider value={value}>{children}</AIEmployeesContext.Provider>;
|
|
53
68
|
};
|
|
54
69
|
|
|
55
70
|
/**
|
|
@@ -1,30 +1,68 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Tabs } from 'antd';
|
|
3
|
-
import { ApartmentOutlined, MonitorOutlined } from '@ant-design/icons';
|
|
3
|
+
import { ApartmentOutlined, BarChartOutlined, CodeOutlined, HistoryOutlined, MonitorOutlined } from '@ant-design/icons';
|
|
4
4
|
import { RulesTab } from './RulesTab';
|
|
5
5
|
import { TracingTab } from './TracingTab';
|
|
6
6
|
import { AIEmployeesProvider } from './AIEmployeesContext';
|
|
7
|
+
import { SkillManager, ExecutionHistory, SkillMetrics } from './skill-hub';
|
|
7
8
|
|
|
8
|
-
|
|
9
|
+
const OrchestratorSettings: React.FC = () => {
|
|
9
10
|
return (
|
|
10
11
|
<AIEmployeesProvider>
|
|
11
12
|
<div style={{ padding: '0 24px 24px' }}>
|
|
12
|
-
<Tabs
|
|
13
|
+
<Tabs
|
|
13
14
|
defaultActiveKey="rules"
|
|
14
15
|
items={[
|
|
15
16
|
{
|
|
16
17
|
key: 'rules',
|
|
17
|
-
label:
|
|
18
|
+
label: (
|
|
19
|
+
<span>
|
|
20
|
+
<ApartmentOutlined /> Orchestration Rules
|
|
21
|
+
</span>
|
|
22
|
+
),
|
|
18
23
|
children: <RulesTab />,
|
|
19
24
|
},
|
|
20
25
|
{
|
|
21
26
|
key: 'tracing',
|
|
22
|
-
label:
|
|
27
|
+
label: (
|
|
28
|
+
<span>
|
|
29
|
+
<MonitorOutlined /> Execution Tracing
|
|
30
|
+
</span>
|
|
31
|
+
),
|
|
23
32
|
children: <TracingTab />,
|
|
24
33
|
},
|
|
34
|
+
{
|
|
35
|
+
key: 'skill-definitions',
|
|
36
|
+
label: (
|
|
37
|
+
<span>
|
|
38
|
+
<CodeOutlined /> Skill Hub Definitions
|
|
39
|
+
</span>
|
|
40
|
+
),
|
|
41
|
+
children: <SkillManager />,
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
key: 'skill-executions',
|
|
45
|
+
label: (
|
|
46
|
+
<span>
|
|
47
|
+
<HistoryOutlined /> Execution History
|
|
48
|
+
</span>
|
|
49
|
+
),
|
|
50
|
+
children: <ExecutionHistory />,
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
key: 'skill-metrics',
|
|
54
|
+
label: (
|
|
55
|
+
<span>
|
|
56
|
+
<BarChartOutlined /> Metrics
|
|
57
|
+
</span>
|
|
58
|
+
),
|
|
59
|
+
children: <SkillMetrics />,
|
|
60
|
+
},
|
|
25
61
|
]}
|
|
26
62
|
/>
|
|
27
63
|
</div>
|
|
28
64
|
</AIEmployeesProvider>
|
|
29
65
|
);
|
|
30
66
|
};
|
|
67
|
+
|
|
68
|
+
export { OrchestratorSettings };
|