@blaxel/core 0.2.67-preview.87 → 0.2.67-preview.89

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.
Files changed (49) hide show
  1. package/dist/cjs/.tsbuildinfo +1 -1
  2. package/dist/cjs/agents/index.js +10 -5
  3. package/dist/cjs/common/settings.js +2 -2
  4. package/dist/cjs/image/image.browser.js +84 -0
  5. package/dist/cjs/image/image.js +567 -0
  6. package/dist/cjs/image/image.test.js +545 -0
  7. package/dist/cjs/image/index.js +7 -0
  8. package/dist/cjs/index.js +1 -0
  9. package/dist/cjs/sandbox/process/process.js +2 -1
  10. package/dist/cjs/types/agents/index.d.ts +2 -2
  11. package/dist/cjs/types/image/image.browser.d.ts +59 -0
  12. package/dist/cjs/types/image/image.d.ts +202 -0
  13. package/dist/cjs/types/image/image.test.d.ts +4 -0
  14. package/dist/cjs/types/image/index.d.ts +1 -0
  15. package/dist/cjs/types/index.d.ts +1 -0
  16. package/dist/cjs/types/sandbox/process/process.d.ts +1 -0
  17. package/dist/cjs-browser/.tsbuildinfo +1 -1
  18. package/dist/cjs-browser/agents/index.js +10 -5
  19. package/dist/cjs-browser/common/settings.js +2 -2
  20. package/dist/cjs-browser/image/image.js +84 -0
  21. package/dist/cjs-browser/image/image.test.js +545 -0
  22. package/dist/cjs-browser/image/index.js +7 -0
  23. package/dist/cjs-browser/index.js +1 -0
  24. package/dist/cjs-browser/sandbox/process/process.js +2 -1
  25. package/dist/cjs-browser/types/agents/index.d.ts +2 -2
  26. package/dist/cjs-browser/types/image/image.browser.d.ts +59 -0
  27. package/dist/cjs-browser/types/image/image.d.ts +202 -0
  28. package/dist/cjs-browser/types/image/image.test.d.ts +4 -0
  29. package/dist/cjs-browser/types/image/index.d.ts +1 -0
  30. package/dist/cjs-browser/types/index.d.ts +1 -0
  31. package/dist/cjs-browser/types/sandbox/process/process.d.ts +1 -0
  32. package/dist/esm/.tsbuildinfo +1 -1
  33. package/dist/esm/agents/index.js +10 -5
  34. package/dist/esm/common/settings.js +2 -2
  35. package/dist/esm/image/image.browser.js +80 -0
  36. package/dist/esm/image/image.js +560 -0
  37. package/dist/esm/image/image.test.js +543 -0
  38. package/dist/esm/image/index.js +1 -0
  39. package/dist/esm/index.js +1 -0
  40. package/dist/esm/sandbox/process/process.js +2 -1
  41. package/dist/esm-browser/.tsbuildinfo +1 -1
  42. package/dist/esm-browser/agents/index.js +10 -5
  43. package/dist/esm-browser/common/settings.js +2 -2
  44. package/dist/esm-browser/image/image.js +80 -0
  45. package/dist/esm-browser/image/image.test.js +543 -0
  46. package/dist/esm-browser/image/index.js +1 -0
  47. package/dist/esm-browser/index.js +1 -0
  48. package/dist/esm-browser/sandbox/process/process.js +2 -1
  49. package/package.json +4 -1
@@ -32,22 +32,27 @@ class BlAgent {
32
32
  return this.internalUrl;
33
33
  return this.externalUrl;
34
34
  }
35
- async call(url, input) {
35
+ async call(url, input, headers = {}, params = {}) {
36
36
  let body = input;
37
37
  if (typeof body != "string") {
38
38
  body = JSON.stringify(body);
39
39
  }
40
- const response = await fetch(url, {
40
+ const fetchUrl = new URL(url.toString());
41
+ for (const [key, value] of Object.entries(params)) {
42
+ fetchUrl.searchParams.set(key, value);
43
+ }
44
+ const response = await fetch(fetchUrl, {
41
45
  method: "POST",
42
46
  headers: {
43
47
  ...settings.headers,
44
48
  "Content-Type": "application/json",
49
+ ...headers,
45
50
  },
46
51
  body,
47
52
  });
48
53
  return response;
49
54
  }
50
- async run(input) {
55
+ async run(input, headers = {}, params = {}) {
51
56
  logger.debug(`Agent Calling: ${this.agentName}`);
52
57
  const span = startSpan(this.agentName, {
53
58
  attributes: {
@@ -58,7 +63,7 @@ class BlAgent {
58
63
  isRoot: false,
59
64
  });
60
65
  try {
61
- const response = await this.call(this.url, input);
66
+ const response = await this.call(this.url, input, headers, params);
62
67
  span.setAttribute("agent.run.result", await response.text());
63
68
  return await response.text();
64
69
  }
@@ -69,7 +74,7 @@ class BlAgent {
69
74
  throw err;
70
75
  }
71
76
  try {
72
- const response = await this.call(this.fallbackUrl, input);
77
+ const response = await this.call(this.fallbackUrl, input, headers, params);
73
78
  span.setAttribute("agent.run.result", await response.text());
74
79
  return await response.text();
75
80
  }
@@ -3,8 +3,8 @@ import { authentication } from "../authentication/index.js";
3
3
  import { env } from "../common/env.js";
4
4
  import { fs, os, path } from "../common/node.js";
5
5
  // Build info - these placeholders are replaced at build time by build:replace-imports
6
- const BUILD_VERSION = "0.2.67-preview.87";
7
- const BUILD_COMMIT = "24af83338eb730bbfcfc66a38761b7ad503bc69e";
6
+ const BUILD_VERSION = "0.2.67-preview.89";
7
+ const BUILD_COMMIT = "b50894ede1940bd70249a848c99e95de2af6e3fc";
8
8
  const BUILD_SENTRY_DSN = "https://fd5e60e1c9820e1eef5ccebb84a07127@o4508714045276160.ingest.us.sentry.io/4510465864564736";
9
9
  // Cache for config.yaml tracking value
10
10
  let configTrackingValue = null;
@@ -0,0 +1,80 @@
1
+ export const SANDBOX_API_IMAGE = "ghcr.io/blaxel-ai/sandbox";
2
+ export const SANDBOX_API_PATH = "/usr/local/bin/sandbox-api";
3
+ function throwBrowserError() {
4
+ throw new Error("ImageInstance is only available in Node.js environments. " +
5
+ "Image building requires file system operations that are not supported in browsers.");
6
+ }
7
+ /**
8
+ * A fluent builder for creating sandbox images programmatically.
9
+ *
10
+ * NOTE: This class is only available in Node.js environments.
11
+ * In browser environments, all methods will throw an error.
12
+ */
13
+ export class ImageInstance {
14
+ _context;
15
+ constructor(_context) {
16
+ this._context = _context;
17
+ throwBrowserError();
18
+ }
19
+ static fromRegistry(_tag) {
20
+ throwBrowserError();
21
+ }
22
+ workdir(_path) {
23
+ throwBrowserError();
24
+ }
25
+ runCommands(..._commands) {
26
+ throwBrowserError();
27
+ }
28
+ env(_variables) {
29
+ throwBrowserError();
30
+ }
31
+ copy(_source, _destination) {
32
+ throwBrowserError();
33
+ }
34
+ addLocalFile(_sourcePath, _destination, _contextName) {
35
+ throwBrowserError();
36
+ }
37
+ addLocalDir(_sourcePath, _destination, _contextName) {
38
+ throwBrowserError();
39
+ }
40
+ expose(..._ports) {
41
+ throwBrowserError();
42
+ }
43
+ entrypoint(..._args) {
44
+ throwBrowserError();
45
+ }
46
+ user(_user) {
47
+ throwBrowserError();
48
+ }
49
+ label(_labels) {
50
+ throwBrowserError();
51
+ }
52
+ arg(_name, _defaultValue) {
53
+ throwBrowserError();
54
+ }
55
+ get dockerfile() {
56
+ throw new Error("ImageInstance is only available in Node.js environments. " +
57
+ "Image building requires file system operations that are not supported in browsers.");
58
+ }
59
+ get hash() {
60
+ throw new Error("ImageInstance is only available in Node.js environments. " +
61
+ "Image building requires file system operations that are not supported in browsers.");
62
+ }
63
+ get baseImage() {
64
+ throw new Error("ImageInstance is only available in Node.js environments. " +
65
+ "Image building requires file system operations that are not supported in browsers.");
66
+ }
67
+ write(_outputPath, _name) {
68
+ throwBrowserError();
69
+ }
70
+ writeTemp() {
71
+ throwBrowserError();
72
+ }
73
+ // eslint-disable-next-line @typescript-eslint/require-await
74
+ async build(_options) {
75
+ throwBrowserError();
76
+ }
77
+ buildSync(_options) {
78
+ throwBrowserError();
79
+ }
80
+ }