@exulu/backend 1.6.1 → 1.6.2

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/CHANGELOG.md CHANGED
@@ -1,9 +1,9 @@
1
- ## [1.6.1](https://github.com/Qventu/exulu-backend/compare/v1.6.0...v1.6.1) (2025-08-04)
1
+ ## [1.6.2](https://github.com/Qventu/exulu-backend/compare/v1.6.1...v1.6.2) (2025-08-05)
2
2
 
3
3
 
4
4
  ### Bug Fixes
5
5
 
6
- * check if exulu db exists when connecting ([4eb22de](https://github.com/Qventu/exulu-backend/commit/4eb22deba17e28a279b70727a66b7cca16cfd6cc))
6
+ * remove browserbase from core repo ([371031b](https://github.com/Qventu/exulu-backend/commit/371031ba330b89d619b0b4cfe935521e249d6b29))
7
7
 
8
8
  # [1.1.0](https://github.com/Qventu/exulu-backend/compare/v1.0.1...v1.1.0) (2025-07-30)
9
9
 
package/dist/index.cjs CHANGED
@@ -4605,129 +4605,6 @@ var defaultAgent = new ExuluAgent({
4605
4605
  }
4606
4606
  });
4607
4607
 
4608
- // src/templates/tools/browserbase.ts
4609
- var import_zod5 = require("zod");
4610
- var import_stagehand = require("@browserbasehq/stagehand");
4611
- var import_sdk = require("@browserbasehq/sdk");
4612
- var PROJECT_ID = "811444dd-6e6d-40b5-bd90-541c93e44be6";
4613
- process.env.BROWSERBASE_PROJECT_ID = PROJECT_ID;
4614
- var BB_API_KEY = "bb_live_LwMwNgZB5cIEKcBwMuAugrgNkFM";
4615
- async function createContext() {
4616
- const bb = new import_sdk.Browserbase({ apiKey: BB_API_KEY });
4617
- const context = await bb.contexts.create({
4618
- projectId: PROJECT_ID
4619
- });
4620
- return context;
4621
- }
4622
- async function createAuthSession(contextId) {
4623
- const bb = new import_sdk.Browserbase({ apiKey: BB_API_KEY });
4624
- const session = await bb.sessions.create({
4625
- projectId: PROJECT_ID,
4626
- browserSettings: {
4627
- context: {
4628
- id: contextId,
4629
- persist: true
4630
- }
4631
- }
4632
- /* proxies: [{ // not included in the free tier
4633
- type: "browserbase",
4634
- geolocation: {
4635
- city: CITY,
4636
- country: COUNTRY
4637
- }
4638
- }] */
4639
- });
4640
- const liveViewLinks = await bb.sessions.debug(session.id);
4641
- const liveViewLink = liveViewLinks.debuggerFullscreenUrl;
4642
- console.log(`\u{1F50D} Live View Link: ${liveViewLink}`);
4643
- console.log("Session URL: https://browserbase.com/sessions/" + session.id);
4644
- return {
4645
- url: liveViewLink,
4646
- id: session.id
4647
- };
4648
- }
4649
- var createSession = new ExuluTool({
4650
- id: `1234-5178-9423-4267`,
4651
- type: "function",
4652
- name: "Create a browserbase session.",
4653
- description: `
4654
- Creates a browserbase session and returns the live view url as well as
4655
- the session id as a JSON object. A browserbase session is a headless browser
4656
- that can be used to to visit websites and perform actions.
4657
- `,
4658
- execute: async () => {
4659
- const { id } = await createContext();
4660
- return await createAuthSession(id);
4661
- }
4662
- });
4663
- var askChatgpt = new ExuluTool({
4664
- id: `1234-5178-9423-4268`,
4665
- type: "function",
4666
- name: "ChatGPT browserbase operation.",
4667
- inputSchema: import_zod5.z.object({
4668
- session: import_zod5.z.string().describe("The session id of the browserbase session."),
4669
- question: import_zod5.z.string().describe("The question to ask ChatGPT.")
4670
- }),
4671
- description: `Uses an existing, authenticated browserbase session to visit ChatGPT and perform actions such as asking questions.`,
4672
- execute: async ({ session, question }) => {
4673
- const stagehand = new import_stagehand.Stagehand({
4674
- // With npx create-browser-app, this config is found
4675
- // in a separate stagehand.config.ts file
4676
- env: "BROWSERBASE",
4677
- // set to "LOCAL" for local development
4678
- apiKey: BB_API_KEY,
4679
- // todo make this a config variable the admin can set in the UI
4680
- modelName: "openai/gpt-4.1-mini",
4681
- // todo change to claude || optionally make configurable?
4682
- browserbaseSessionID: session,
4683
- modelClientOptions: {
4684
- apiKey: process.env.OPENAI_API_KEY
4685
- // todo make this a config variable the admin can set in the UI
4686
- }
4687
- });
4688
- await stagehand.init();
4689
- const page = stagehand.page;
4690
- await page.goto("https://chatgpt.com");
4691
- await page.act(`Type in '${question}' into the search bar`);
4692
- const { answer } = await page.extract({
4693
- instruction: "The answer to the question generated by ChatGPT.",
4694
- schema: import_zod5.z.object({
4695
- answer: import_zod5.z.string()
4696
- })
4697
- });
4698
- console.log(answer);
4699
- await stagehand.close();
4700
- return {
4701
- answer
4702
- };
4703
- }
4704
- });
4705
-
4706
- // src/templates/tools/jira.ts
4707
- var import_zod6 = require("zod");
4708
- var getTicket = new ExuluTool({
4709
- id: `1414-5179-1423-1269`,
4710
- name: "JIRA ticket retrieval.",
4711
- type: "function",
4712
- inputSchema: import_zod6.z.object({
4713
- ticketId: import_zod6.z.string().describe("The id of the ticket to retrieve.")
4714
- }),
4715
- description: `Retrieves a ticket from Jira.`,
4716
- execute: async ({ session, question }) => {
4717
- return {
4718
- name: "BYD-1234",
4719
- id: "12345678",
4720
- status: "Open",
4721
- description: "This is a test ticket",
4722
- assignee: "John Doe",
4723
- createdAt: "2021-01-01",
4724
- updatedAt: "2021-01-01",
4725
- dueDate: "2021-01-01",
4726
- priority: "High"
4727
- };
4728
- }
4729
- });
4730
-
4731
4608
  // src/registry/index.ts
4732
4609
  var ExuluApp = class {
4733
4610
  _agents = [];
@@ -4755,12 +4632,7 @@ var ExuluApp = class {
4755
4632
  // Add contexts as tools
4756
4633
  ...Object.values(contexts || {}).map((context) => context.tool()),
4757
4634
  // Add agents as tools
4758
- ...(agents || []).map((agent) => agent.tool()),
4759
- ...[
4760
- createSession,
4761
- askChatgpt,
4762
- getTicket
4763
- ]
4635
+ ...(agents || []).map((agent) => agent.tool())
4764
4636
  ];
4765
4637
  const contextsArray = Object.values(contexts || {});
4766
4638
  const queues2 = [
package/dist/index.js CHANGED
@@ -4562,129 +4562,6 @@ var defaultAgent = new ExuluAgent({
4562
4562
  }
4563
4563
  });
4564
4564
 
4565
- // src/templates/tools/browserbase.ts
4566
- import { z as z4 } from "zod";
4567
- import { Stagehand } from "@browserbasehq/stagehand";
4568
- import { Browserbase } from "@browserbasehq/sdk";
4569
- var PROJECT_ID = "811444dd-6e6d-40b5-bd90-541c93e44be6";
4570
- process.env.BROWSERBASE_PROJECT_ID = PROJECT_ID;
4571
- var BB_API_KEY = "bb_live_LwMwNgZB5cIEKcBwMuAugrgNkFM";
4572
- async function createContext() {
4573
- const bb = new Browserbase({ apiKey: BB_API_KEY });
4574
- const context = await bb.contexts.create({
4575
- projectId: PROJECT_ID
4576
- });
4577
- return context;
4578
- }
4579
- async function createAuthSession(contextId) {
4580
- const bb = new Browserbase({ apiKey: BB_API_KEY });
4581
- const session = await bb.sessions.create({
4582
- projectId: PROJECT_ID,
4583
- browserSettings: {
4584
- context: {
4585
- id: contextId,
4586
- persist: true
4587
- }
4588
- }
4589
- /* proxies: [{ // not included in the free tier
4590
- type: "browserbase",
4591
- geolocation: {
4592
- city: CITY,
4593
- country: COUNTRY
4594
- }
4595
- }] */
4596
- });
4597
- const liveViewLinks = await bb.sessions.debug(session.id);
4598
- const liveViewLink = liveViewLinks.debuggerFullscreenUrl;
4599
- console.log(`\u{1F50D} Live View Link: ${liveViewLink}`);
4600
- console.log("Session URL: https://browserbase.com/sessions/" + session.id);
4601
- return {
4602
- url: liveViewLink,
4603
- id: session.id
4604
- };
4605
- }
4606
- var createSession = new ExuluTool({
4607
- id: `1234-5178-9423-4267`,
4608
- type: "function",
4609
- name: "Create a browserbase session.",
4610
- description: `
4611
- Creates a browserbase session and returns the live view url as well as
4612
- the session id as a JSON object. A browserbase session is a headless browser
4613
- that can be used to to visit websites and perform actions.
4614
- `,
4615
- execute: async () => {
4616
- const { id } = await createContext();
4617
- return await createAuthSession(id);
4618
- }
4619
- });
4620
- var askChatgpt = new ExuluTool({
4621
- id: `1234-5178-9423-4268`,
4622
- type: "function",
4623
- name: "ChatGPT browserbase operation.",
4624
- inputSchema: z4.object({
4625
- session: z4.string().describe("The session id of the browserbase session."),
4626
- question: z4.string().describe("The question to ask ChatGPT.")
4627
- }),
4628
- description: `Uses an existing, authenticated browserbase session to visit ChatGPT and perform actions such as asking questions.`,
4629
- execute: async ({ session, question }) => {
4630
- const stagehand = new Stagehand({
4631
- // With npx create-browser-app, this config is found
4632
- // in a separate stagehand.config.ts file
4633
- env: "BROWSERBASE",
4634
- // set to "LOCAL" for local development
4635
- apiKey: BB_API_KEY,
4636
- // todo make this a config variable the admin can set in the UI
4637
- modelName: "openai/gpt-4.1-mini",
4638
- // todo change to claude || optionally make configurable?
4639
- browserbaseSessionID: session,
4640
- modelClientOptions: {
4641
- apiKey: process.env.OPENAI_API_KEY
4642
- // todo make this a config variable the admin can set in the UI
4643
- }
4644
- });
4645
- await stagehand.init();
4646
- const page = stagehand.page;
4647
- await page.goto("https://chatgpt.com");
4648
- await page.act(`Type in '${question}' into the search bar`);
4649
- const { answer } = await page.extract({
4650
- instruction: "The answer to the question generated by ChatGPT.",
4651
- schema: z4.object({
4652
- answer: z4.string()
4653
- })
4654
- });
4655
- console.log(answer);
4656
- await stagehand.close();
4657
- return {
4658
- answer
4659
- };
4660
- }
4661
- });
4662
-
4663
- // src/templates/tools/jira.ts
4664
- import { z as z5 } from "zod";
4665
- var getTicket = new ExuluTool({
4666
- id: `1414-5179-1423-1269`,
4667
- name: "JIRA ticket retrieval.",
4668
- type: "function",
4669
- inputSchema: z5.object({
4670
- ticketId: z5.string().describe("The id of the ticket to retrieve.")
4671
- }),
4672
- description: `Retrieves a ticket from Jira.`,
4673
- execute: async ({ session, question }) => {
4674
- return {
4675
- name: "BYD-1234",
4676
- id: "12345678",
4677
- status: "Open",
4678
- description: "This is a test ticket",
4679
- assignee: "John Doe",
4680
- createdAt: "2021-01-01",
4681
- updatedAt: "2021-01-01",
4682
- dueDate: "2021-01-01",
4683
- priority: "High"
4684
- };
4685
- }
4686
- });
4687
-
4688
4565
  // src/registry/index.ts
4689
4566
  var ExuluApp = class {
4690
4567
  _agents = [];
@@ -4712,12 +4589,7 @@ var ExuluApp = class {
4712
4589
  // Add contexts as tools
4713
4590
  ...Object.values(contexts || {}).map((context) => context.tool()),
4714
4591
  // Add agents as tools
4715
- ...(agents || []).map((agent) => agent.tool()),
4716
- ...[
4717
- createSession,
4718
- askChatgpt,
4719
- getTicket
4720
- ]
4592
+ ...(agents || []).map((agent) => agent.tool())
4721
4593
  ];
4722
4594
  const contextsArray = Object.values(contexts || {});
4723
4595
  const queues2 = [
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@exulu/backend",
3
3
  "author": "Qventu Bv.",
4
- "version": "1.6.1",
4
+ "version": "1.6.2",
5
5
  "main": "./dist/index.js",
6
6
  "private": false,
7
7
  "publishConfig": {
@@ -31,12 +31,12 @@
31
31
  "@commitlint/cli": "^19.8.1",
32
32
  "@commitlint/config-conventional": "^19.8.1",
33
33
  "@semantic-release/changelog": "^6.0.3",
34
- "semantic-release": "^24.2.7",
35
34
  "@types/bun": "latest",
36
35
  "@types/node": "^22.14.0",
37
36
  "@types/pg": "^8.15.1",
38
37
  "conventional-changelog-atom": "^5.0.0",
39
38
  "husky": "^9.1.7",
39
+ "semantic-release": "^24.2.7",
40
40
  "tsup": "^8.5.0",
41
41
  "tsx": "^4.19.3"
42
42
  },
@@ -50,8 +50,6 @@
50
50
  "@aws-sdk/client-s3": "^3.338.0",
51
51
  "@aws-sdk/client-sts": "^3.338.0",
52
52
  "@aws-sdk/s3-request-presigner": "^3.338.0",
53
- "@browserbasehq/sdk": "^2.6.0",
54
- "@browserbasehq/stagehand": "^2.4.1",
55
53
  "@inkjs/ui": "^2.0.0",
56
54
  "@modelcontextprotocol/sdk": "^1.14.0",
57
55
  "@types/bcrypt": "^5.0.2",