@sweetoburrito/backstage-plugin-ai-assistant-backend-module-tool-provider-backstage 0.0.0-snapshot-20251029150521

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 ADDED
@@ -0,0 +1,5 @@
1
+ # @sweetoburrito/backstage-plugin-ai-assistant-backend-module-tool-provider-backstage
2
+
3
+ The tool-provider-backstage backend module for the ai-assistant plugin.
4
+
5
+ _This plugin was created through the Backstage CLI_
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var module$1 = require('./module.cjs.js');
6
+
7
+
8
+
9
+ exports.default = module$1.aiAssistantModuleToolProviderBackstage;
10
+ //# sourceMappingURL=index.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1,5 @@
1
+ import * as _backstage_backend_plugin_api from '@backstage/backend-plugin-api';
2
+
3
+ declare const aiAssistantModuleToolProviderBackstage: _backstage_backend_plugin_api.BackendFeature;
4
+
5
+ export { aiAssistantModuleToolProviderBackstage as default };
@@ -0,0 +1,48 @@
1
+ 'use strict';
2
+
3
+ var backendPluginApi = require('@backstage/backend-plugin-api');
4
+ var alpha = require('@backstage/backend-plugin-api/alpha');
5
+ var backstagePluginAiAssistantNode = require('@sweetoburrito/backstage-plugin-ai-assistant-node');
6
+ var jsonSchemaToZod = require('@n8n/json-schema-to-zod');
7
+
8
+ const aiAssistantModuleToolProviderBackstage = backendPluginApi.createBackendModule({
9
+ pluginId: "ai-assistant",
10
+ moduleId: "tool-provider-backstage",
11
+ register(reg) {
12
+ reg.registerInit({
13
+ deps: {
14
+ actionsService: alpha.actionsServiceRef,
15
+ auth: backendPluginApi.coreServices.auth,
16
+ toolExtension: backstagePluginAiAssistantNode.toolExtensionPoint
17
+ },
18
+ async init({ actionsService, auth, toolExtension }) {
19
+ const credentials = await auth.getOwnServiceCredentials();
20
+ const { actions } = await actionsService.list({
21
+ credentials
22
+ });
23
+ actions.forEach((action) => {
24
+ const tool = backstagePluginAiAssistantNode.createAssistantTool({
25
+ tool: {
26
+ name: action.name,
27
+ description: action.description,
28
+ schema: jsonSchemaToZod.jsonSchemaToZod(action.schema.input),
29
+ func: async (params) => {
30
+ const callCredentials = await auth.getOwnServiceCredentials();
31
+ const { output } = await actionsService.invoke({
32
+ id: action.id,
33
+ credentials: callCredentials,
34
+ input: params
35
+ });
36
+ return JSON.stringify(output);
37
+ }
38
+ }
39
+ });
40
+ toolExtension.register(tool);
41
+ });
42
+ }
43
+ });
44
+ }
45
+ });
46
+
47
+ exports.aiAssistantModuleToolProviderBackstage = aiAssistantModuleToolProviderBackstage;
48
+ //# sourceMappingURL=module.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.cjs.js","sources":["../src/module.ts"],"sourcesContent":["import {\n coreServices,\n createBackendModule,\n} from '@backstage/backend-plugin-api';\nimport type { JsonObject } from '@backstage/types';\nimport { actionsServiceRef } from '@backstage/backend-plugin-api/alpha';\nimport {\n toolExtensionPoint,\n createAssistantTool,\n} from '@sweetoburrito/backstage-plugin-ai-assistant-node';\nimport { jsonSchemaToZod } from '@n8n/json-schema-to-zod';\n\nexport const aiAssistantModuleToolProviderBackstage = createBackendModule({\n pluginId: 'ai-assistant',\n moduleId: 'tool-provider-backstage',\n register(reg) {\n reg.registerInit({\n deps: {\n actionsService: actionsServiceRef,\n auth: coreServices.auth,\n toolExtension: toolExtensionPoint,\n },\n async init({ actionsService, auth, toolExtension }) {\n const credentials = await auth.getOwnServiceCredentials();\n\n const { actions } = await actionsService.list({\n credentials,\n });\n\n actions.forEach(action => {\n const tool = createAssistantTool({\n tool: {\n name: action.name,\n description: action.description,\n schema: jsonSchemaToZod(action.schema.input),\n func: async params => {\n const callCredentials = await auth.getOwnServiceCredentials();\n\n const { output } = await actionsService.invoke({\n id: action.id,\n credentials: callCredentials,\n input: params as JsonObject,\n });\n\n return JSON.stringify(output);\n },\n },\n });\n toolExtension.register(tool);\n });\n },\n });\n },\n});\n"],"names":["createBackendModule","actionsServiceRef","coreServices","toolExtensionPoint","createAssistantTool","jsonSchemaToZod"],"mappings":";;;;;;;AAYO,MAAM,yCAAyCA,oCAAA,CAAoB;AAAA,EACxE,QAAA,EAAU,cAAA;AAAA,EACV,QAAA,EAAU,yBAAA;AAAA,EACV,SAAS,GAAA,EAAK;AACZ,IAAA,GAAA,CAAI,YAAA,CAAa;AAAA,MACf,IAAA,EAAM;AAAA,QACJ,cAAA,EAAgBC,uBAAA;AAAA,QAChB,MAAMC,6BAAA,CAAa,IAAA;AAAA,QACnB,aAAA,EAAeC;AAAA,OACjB;AAAA,MACA,MAAM,IAAA,CAAK,EAAE,cAAA,EAAgB,IAAA,EAAM,eAAc,EAAG;AAClD,QAAA,MAAM,WAAA,GAAc,MAAM,IAAA,CAAK,wBAAA,EAAyB;AAExD,QAAA,MAAM,EAAE,OAAA,EAAQ,GAAI,MAAM,eAAe,IAAA,CAAK;AAAA,UAC5C;AAAA,SACD,CAAA;AAED,QAAA,OAAA,CAAQ,QAAQ,CAAA,MAAA,KAAU;AACxB,UAAA,MAAM,OAAOC,kDAAA,CAAoB;AAAA,YAC/B,IAAA,EAAM;AAAA,cACJ,MAAM,MAAA,CAAO,IAAA;AAAA,cACb,aAAa,MAAA,CAAO,WAAA;AAAA,cACpB,MAAA,EAAQC,+BAAA,CAAgB,MAAA,CAAO,MAAA,CAAO,KAAK,CAAA;AAAA,cAC3C,IAAA,EAAM,OAAM,MAAA,KAAU;AACpB,gBAAA,MAAM,eAAA,GAAkB,MAAM,IAAA,CAAK,wBAAA,EAAyB;AAE5D,gBAAA,MAAM,EAAE,MAAA,EAAO,GAAI,MAAM,eAAe,MAAA,CAAO;AAAA,kBAC7C,IAAI,MAAA,CAAO,EAAA;AAAA,kBACX,WAAA,EAAa,eAAA;AAAA,kBACb,KAAA,EAAO;AAAA,iBACR,CAAA;AAED,gBAAA,OAAO,IAAA,CAAK,UAAU,MAAM,CAAA;AAAA,cAC9B;AAAA;AACF,WACD,CAAA;AACD,UAAA,aAAA,CAAc,SAAS,IAAI,CAAA;AAAA,QAC7B,CAAC,CAAA;AAAA,MACH;AAAA,KACD,CAAA;AAAA,EACH;AACF,CAAC;;;;"}
package/package.json ADDED
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "@sweetoburrito/backstage-plugin-ai-assistant-backend-module-tool-provider-backstage",
3
+ "version": "0.0.0-snapshot-20251029150521",
4
+ "license": "Apache-2.0",
5
+ "description": "The tool-provider-backstage backend module for the ai-assistant plugin.",
6
+ "main": "dist/index.cjs.js",
7
+ "types": "dist/index.d.ts",
8
+ "publishConfig": {
9
+ "access": "public",
10
+ "main": "dist/index.cjs.js",
11
+ "types": "dist/index.d.ts"
12
+ },
13
+ "backstage": {
14
+ "role": "backend-plugin-module",
15
+ "pluginId": "ai-assistant",
16
+ "pluginPackage": "@sweetoburrito/backstage-plugin-ai-assistant-backend",
17
+ "features": {
18
+ ".": "@backstage/BackendFeature"
19
+ }
20
+ },
21
+ "scripts": {
22
+ "start": "backstage-cli package start",
23
+ "build": "backstage-cli package build",
24
+ "lint": "backstage-cli package lint",
25
+ "test": "backstage-cli package test",
26
+ "clean": "backstage-cli package clean",
27
+ "prepack": "backstage-cli package prepack",
28
+ "postpack": "backstage-cli package postpack"
29
+ },
30
+ "dependencies": {
31
+ "@backstage/backend-plugin-api": "^1.4.3",
32
+ "@n8n/json-schema-to-zod": "1.1.0",
33
+ "@sweetoburrito/backstage-plugin-ai-assistant-node": "0.0.0-snapshot-20251029150521"
34
+ },
35
+ "devDependencies": {
36
+ "@backstage/backend-test-utils": "^1.9.0",
37
+ "@backstage/cli": "^0.34.3",
38
+ "@backstage/types": "backstage:^"
39
+ },
40
+ "files": [
41
+ "dist"
42
+ ],
43
+ "typesVersions": {
44
+ "*": {
45
+ "package.json": [
46
+ "package.json"
47
+ ]
48
+ }
49
+ }
50
+ }