Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Apr 2026 15:29:05 +0000
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 7a68de0bd6cb - main - misc/bun-decompile: New port: Extract and de-minify source code from Bun-compiled executables
Message-ID:  <69f223c1.189a1.1cc43ee4@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=7a68de0bd6cbd0a49dc0dc92ca7be5efb0599167

commit 7a68de0bd6cbd0a49dc0dc92ca7be5efb0599167
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2026-04-29 12:24:20 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2026-04-29 15:28:47 +0000

    misc/bun-decompile: New port: Extract and de-minify source code from Bun-compiled executables
---
 misc/Makefile                              |    1 +
 misc/bun-decompile/Makefile                |   47 +
 misc/bun-decompile/distinfo                |    3 +
 misc/bun-decompile/files/package-lock.json |  649 ++++
 misc/bun-decompile/pkg-descr               |   13 +
 misc/bun-decompile/pkg-plist               | 4798 ++++++++++++++++++++++++++++
 6 files changed, 5511 insertions(+)

diff --git a/misc/Makefile b/misc/Makefile
index 584d493f2e5f..4770b0fd4015 100644
--- a/misc/Makefile
+++ b/misc/Makefile
@@ -42,6 +42,7 @@
     SUBDIR += boxes
     SUBDIR += broot
     SUBDIR += bsod
+    SUBDIR += bun-decompile
     SUBDIR += caffe
     SUBDIR += camsnap
     SUBDIR += chatblade
diff --git a/misc/bun-decompile/Makefile b/misc/bun-decompile/Makefile
new file mode 100644
index 000000000000..0355708b0260
--- /dev/null
+++ b/misc/bun-decompile/Makefile
@@ -0,0 +1,47 @@
+PORTNAME=	bun-decompile
+DISTVERSION=	0.2.0
+CATEGORIES=	misc
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Extract and de-minify source code from Bun-compiled executables
+WWW=		https://github.com/shepherdjerred/monorepo/tree/main/packages/bun-decompile
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKSRC}/node_modules/${PACKAGE_NAME}/LICENSE
+
+FETCH_DEPENDS=	curl:ftp/curl \
+		jq:textproc/jq \
+		npm:www/npm \
+		${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss
+
+RUN_DEPENDS=	bun:lang/bun
+
+NO_BUILD=	yes
+NO_ARCH=	yes
+
+WRKSRC=		${WRKDIR}/bun-decompile-${DISTVERSION}
+
+PACKAGE_NAME=	@shepherdjerred/bun-decompile
+
+FETCH_SCRIPT=	${PORTSDIR}/Tools/scripts/npmjs-fetch-with-dependencies.sh
+
+do-fetch:
+	@if ! [ -f ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} ]; then \
+		${SETENV} TMPDIR=${WRKDIR} LOCALBASE=${LOCALBASE} ${FETCH_SCRIPT} \
+			${PACKAGE_NAME} ${DISTVERSION} \
+			${FILESDIR}/package-lock.json \
+			${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}; \
+	fi
+
+do-install:
+	# install node_modules
+	@${MKDIR} ${STAGEDIR}${PREFIX}/lib
+	@cd ${WRKSRC} && \
+		${COPYTREE_SHARE} node_modules ${STAGEDIR}${PREFIX}/lib
+	# create wrapper script
+	@${MKDIR} ${STAGEDIR}${PREFIX}/bin
+	@${ECHO_CMD} '#!/bin/sh' > ${STAGEDIR}${PREFIX}/bin/bun-decompile
+	@${ECHO_CMD} 'exec bun ${PREFIX}/lib/node_modules/${PACKAGE_NAME}/src/index.ts "$$@"' >> ${STAGEDIR}${PREFIX}/bin/bun-decompile
+	@${CHMOD} +x ${STAGEDIR}${PREFIX}/bin/bun-decompile
+
+.include <bsd.port.mk>
diff --git a/misc/bun-decompile/distinfo b/misc/bun-decompile/distinfo
new file mode 100644
index 000000000000..958808b49203
--- /dev/null
+++ b/misc/bun-decompile/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1776711542
+SHA256 (bun-decompile-0.2.0.tar.gz) = baec938e52e6687769e31b7fdbfd3f830f0805d130baedb0f09b1a6eecb93cca
+SIZE (bun-decompile-0.2.0.tar.gz) = 15603840
diff --git a/misc/bun-decompile/files/package-lock.json b/misc/bun-decompile/files/package-lock.json
new file mode 100644
index 000000000000..60b28174bac3
--- /dev/null
+++ b/misc/bun-decompile/files/package-lock.json
@@ -0,0 +1,649 @@
+{
+  "name": "bun-decompile-installer",
+  "version": "1.0.0",
+  "lockfileVersion": 3,
+  "requires": true,
+  "packages": {
+    "": {
+      "name": "bun-decompile-installer",
+      "version": "1.0.0",
+      "dependencies": {
+        "@shepherdjerred/bun-decompile": "0.2.0"
+      }
+    },
+    "node_modules/@anthropic-ai/sdk": {
+      "version": "0.52.0",
+      "resolved": "https://registry.npmjs.org/@anthropic-ai/sdk/-/sdk-0.52.0.tgz",
+      "integrity": "sha512-d4c+fg+xy9e46c8+YnrrgIQR45CZlAi7PwdzIfDXDM6ACxEZli1/fxhURsq30ZpMZy6LvSkr41jGq5aF5TD7rQ==",
+      "license": "MIT",
+      "bin": {
+        "anthropic-ai-sdk": "bin/cli"
+      }
+    },
+    "node_modules/@anthropic-ai/tokenizer": {
+      "version": "0.0.4",
+      "resolved": "https://registry.npmjs.org/@anthropic-ai/tokenizer/-/tokenizer-0.0.4.tgz",
+      "integrity": "sha512-EHRKbxlxlc8W4KCBEseByJ7YwyYCmgu9OyN59H9+IYIGPoKv8tXyQXinkeGDI+cI8Tiuz9wk2jZb/kK7AyvL7g==",
+      "license": "Apache-2.0",
+      "dependencies": {
+        "@types/node": "^18.11.18",
+        "tiktoken": "^1.0.10"
+      }
+    },
+    "node_modules/@babel/code-frame": {
+      "version": "7.29.0",
+      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz",
+      "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/helper-validator-identifier": "^7.28.5",
+        "js-tokens": "^4.0.0",
+        "picocolors": "^1.1.1"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/compat-data": {
+      "version": "7.29.0",
+      "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz",
+      "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/core": {
+      "version": "7.29.0",
+      "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz",
+      "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "^7.29.0",
+        "@babel/generator": "^7.29.0",
+        "@babel/helper-compilation-targets": "^7.28.6",
+        "@babel/helper-module-transforms": "^7.28.6",
+        "@babel/helpers": "^7.28.6",
+        "@babel/parser": "^7.29.0",
+        "@babel/template": "^7.28.6",
+        "@babel/traverse": "^7.29.0",
+        "@babel/types": "^7.29.0",
+        "@jridgewell/remapping": "^2.3.5",
+        "convert-source-map": "^2.0.0",
+        "debug": "^4.1.0",
+        "gensync": "^1.0.0-beta.2",
+        "json5": "^2.2.3",
+        "semver": "^6.3.1"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/babel"
+      }
+    },
+    "node_modules/@babel/generator": {
+      "version": "7.29.1",
+      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz",
+      "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/parser": "^7.29.0",
+        "@babel/types": "^7.29.0",
+        "@jridgewell/gen-mapping": "^0.3.12",
+        "@jridgewell/trace-mapping": "^0.3.28",
+        "jsesc": "^3.0.2"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/helper-compilation-targets": {
+      "version": "7.28.6",
+      "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz",
+      "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/compat-data": "^7.28.6",
+        "@babel/helper-validator-option": "^7.27.1",
+        "browserslist": "^4.24.0",
+        "lru-cache": "^5.1.1",
+        "semver": "^6.3.1"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/helper-globals": {
+      "version": "7.28.0",
+      "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz",
+      "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/helper-module-imports": {
+      "version": "7.28.6",
+      "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz",
+      "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/traverse": "^7.28.6",
+        "@babel/types": "^7.28.6"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/helper-module-transforms": {
+      "version": "7.28.6",
+      "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz",
+      "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/helper-module-imports": "^7.28.6",
+        "@babel/helper-validator-identifier": "^7.28.5",
+        "@babel/traverse": "^7.28.6"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      },
+      "peerDependencies": {
+        "@babel/core": "^7.0.0"
+      }
+    },
+    "node_modules/@babel/helper-plugin-utils": {
+      "version": "7.28.6",
+      "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz",
+      "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/helper-string-parser": {
+      "version": "7.27.1",
+      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz",
+      "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/helper-validator-identifier": {
+      "version": "7.28.5",
+      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz",
+      "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/helper-validator-option": {
+      "version": "7.27.1",
+      "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz",
+      "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/helpers": {
+      "version": "7.29.2",
+      "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz",
+      "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/template": "^7.28.6",
+        "@babel/types": "^7.29.0"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/parser": {
+      "version": "7.29.2",
+      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz",
+      "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/types": "^7.29.0"
+      },
+      "bin": {
+        "parser": "bin/babel-parser.js"
+      },
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
+    "node_modules/@babel/plugin-syntax-jsx": {
+      "version": "7.28.6",
+      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.28.6.tgz",
+      "integrity": "sha512-wgEmr06G6sIpqr8YDwA2dSRTE3bJ+V0IfpzfSY3Lfgd7YWOaAdlykvJi13ZKBt8cZHfgH1IXN+CL656W3uUa4w==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/helper-plugin-utils": "^7.28.6"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      },
+      "peerDependencies": {
+        "@babel/core": "^7.0.0-0"
+      }
+    },
+    "node_modules/@babel/plugin-syntax-typescript": {
+      "version": "7.28.6",
+      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.28.6.tgz",
+      "integrity": "sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc6rdiYhomzv/A==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/helper-plugin-utils": "^7.28.6"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      },
+      "peerDependencies": {
+        "@babel/core": "^7.0.0-0"
+      }
+    },
+    "node_modules/@babel/template": {
+      "version": "7.28.6",
+      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz",
+      "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "^7.28.6",
+        "@babel/parser": "^7.28.6",
+        "@babel/types": "^7.28.6"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/traverse": {
+      "version": "7.29.0",
+      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz",
+      "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/code-frame": "^7.29.0",
+        "@babel/generator": "^7.29.0",
+        "@babel/helper-globals": "^7.28.0",
+        "@babel/parser": "^7.29.0",
+        "@babel/template": "^7.28.6",
+        "@babel/types": "^7.29.0",
+        "debug": "^4.3.1"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@babel/types": {
+      "version": "7.29.0",
+      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz",
+      "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==",
+      "license": "MIT",
+      "dependencies": {
+        "@babel/helper-string-parser": "^7.27.1",
+        "@babel/helper-validator-identifier": "^7.28.5"
+      },
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/@jridgewell/gen-mapping": {
+      "version": "0.3.13",
+      "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz",
+      "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==",
+      "license": "MIT",
+      "dependencies": {
+        "@jridgewell/sourcemap-codec": "^1.5.0",
+        "@jridgewell/trace-mapping": "^0.3.24"
+      }
+    },
+    "node_modules/@jridgewell/remapping": {
+      "version": "2.3.5",
+      "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz",
+      "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==",
+      "license": "MIT",
+      "dependencies": {
+        "@jridgewell/gen-mapping": "^0.3.5",
+        "@jridgewell/trace-mapping": "^0.3.24"
+      }
+    },
+    "node_modules/@jridgewell/resolve-uri": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+      "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
+    "node_modules/@jridgewell/sourcemap-codec": {
+      "version": "1.5.5",
+      "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz",
+      "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==",
+      "license": "MIT"
+    },
+    "node_modules/@jridgewell/trace-mapping": {
+      "version": "0.3.31",
+      "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz",
+      "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==",
+      "license": "MIT",
+      "dependencies": {
+        "@jridgewell/resolve-uri": "^3.1.0",
+        "@jridgewell/sourcemap-codec": "^1.4.14"
+      }
+    },
+    "node_modules/@shepherdjerred/bun-decompile": {
+      "version": "0.2.0",
+      "resolved": "https://registry.npmjs.org/@shepherdjerred/bun-decompile/-/bun-decompile-0.2.0.tgz",
+      "integrity": "sha512-VDBXlUkcmeY8appE4+wuOqGMG9hsMcjAgES1uP2KDTbFJWAQ3okTE9e1dSzK/QPji2v40lPi0HL7KBTM3Mov/Q==",
+      "license": "GPL-3.0",
+      "dependencies": {
+        "@anthropic-ai/sdk": "^0.52.0",
+        "@anthropic-ai/tokenizer": "^0.0.4",
+        "@babel/core": "^7.28.5",
+        "@babel/generator": "^7.28.5",
+        "@babel/parser": "^7.28.5",
+        "@babel/plugin-syntax-jsx": "^7.27.1",
+        "@babel/plugin-syntax-typescript": "^7.27.1",
+        "@babel/traverse": "^7.28.5",
+        "@babel/types": "^7.28.5",
+        "acorn": "^8.15.0",
+        "acorn-walk": "^8.3.4",
+        "openai": "^6.15.0",
+        "tiktoken": "^1.0.22"
+      },
+      "bin": {
+        "bun-decompile": "src/index.ts"
+      },
+      "engines": {
+        "bun": ">=1.0.0"
+      }
+    },
+    "node_modules/@types/node": {
+      "version": "18.19.130",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.130.tgz",
+      "integrity": "sha512-GRaXQx6jGfL8sKfaIDD6OupbIHBr9jv7Jnaml9tB7l4v068PAOXqfcujMMo5PhbIs6ggR1XODELqahT2R8v0fg==",
+      "license": "MIT",
+      "dependencies": {
+        "undici-types": "~5.26.4"
+      }
+    },
+    "node_modules/acorn": {
+      "version": "8.16.0",
+      "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz",
+      "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==",
+      "license": "MIT",
+      "bin": {
+        "acorn": "bin/acorn"
+      },
+      "engines": {
+        "node": ">=0.4.0"
+      }
+    },
+    "node_modules/acorn-walk": {
+      "version": "8.3.5",
+      "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.5.tgz",
+      "integrity": "sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==",
+      "license": "MIT",
+      "dependencies": {
+        "acorn": "^8.11.0"
+      },
+      "engines": {
+        "node": ">=0.4.0"
+      }
+    },
+    "node_modules/baseline-browser-mapping": {
+      "version": "2.10.20",
+      "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.20.tgz",
+      "integrity": "sha512-1AaXxEPfXT+GvTBJFuy4yXVHWJBXa4OdbIebGN/wX5DlsIkU0+wzGnd2lOzokSk51d5LUmqjgBLRLlypLUqInQ==",
+      "license": "Apache-2.0",
+      "bin": {
+        "baseline-browser-mapping": "dist/cli.cjs"
+      },
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
+    "node_modules/browserslist": {
+      "version": "4.28.2",
+      "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz",
+      "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==",
+      "funding": [
+        {
+          "type": "opencollective",
+          "url": "https://opencollective.com/browserslist"
+        },
+        {
+          "type": "tidelift",
+          "url": "https://tidelift.com/funding/github/npm/browserslist"
+        },
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/ai"
+        }
+      ],
+      "license": "MIT",
+      "dependencies": {
+        "baseline-browser-mapping": "^2.10.12",
+        "caniuse-lite": "^1.0.30001782",
+        "electron-to-chromium": "^1.5.328",
+        "node-releases": "^2.0.36",
+        "update-browserslist-db": "^1.2.3"
+      },
+      "bin": {
+        "browserslist": "cli.js"
+      },
+      "engines": {
+        "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
+      }
+    },
+    "node_modules/caniuse-lite": {
+      "version": "1.0.30001788",
+      "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001788.tgz",
+      "integrity": "sha512-6q8HFp+lOQtcf7wBK+uEenxymVWkGKkjFpCvw5W25cmMwEDU45p1xQFBQv8JDlMMry7eNxyBaR+qxgmTUZkIRQ==",
+      "funding": [
+        {
+          "type": "opencollective",
+          "url": "https://opencollective.com/browserslist"
+        },
+        {
+          "type": "tidelift",
+          "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+        },
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/ai"
+        }
+      ],
+      "license": "CC-BY-4.0"
+    },
+    "node_modules/convert-source-map": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+      "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+      "license": "MIT"
+    },
+    "node_modules/debug": {
+      "version": "4.4.3",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
+      "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
+      "license": "MIT",
+      "dependencies": {
+        "ms": "^2.1.3"
+      },
+      "engines": {
+        "node": ">=6.0"
+      },
+      "peerDependenciesMeta": {
+        "supports-color": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/electron-to-chromium": {
+      "version": "1.5.340",
+      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.340.tgz",
+      "integrity": "sha512-908qahOGocRMinT2nM3ajCEM99H4iPdv84eagPP3FfZy/1ZGeOy2CZYzjhms81ckOPCXPlW7LkY4XpxD8r1DrA==",
+      "license": "ISC"
+    },
+    "node_modules/escalade": {
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
+      "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/gensync": {
+      "version": "1.0.0-beta.2",
+      "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
+      "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
+      "license": "MIT",
+      "engines": {
+        "node": ">=6.9.0"
+      }
+    },
+    "node_modules/js-tokens": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+      "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
+      "license": "MIT"
+    },
+    "node_modules/jsesc": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
+      "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==",
+      "license": "MIT",
+      "bin": {
+        "jsesc": "bin/jsesc"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/json5": {
+      "version": "2.2.3",
+      "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+      "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
+      "license": "MIT",
+      "bin": {
+        "json5": "lib/cli.js"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/lru-cache": {
+      "version": "5.1.1",
+      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
+      "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
+      "license": "ISC",
+      "dependencies": {
+        "yallist": "^3.0.2"
+      }
+    },
+    "node_modules/ms": {
+      "version": "2.1.3",
+      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+      "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+      "license": "MIT"
+    },
+    "node_modules/node-releases": {
+      "version": "2.0.37",
+      "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.37.tgz",
+      "integrity": "sha512-1h5gKZCF+pO/o3Iqt5Jp7wc9rH3eJJ0+nh/CIoiRwjRxde/hAHyLPXYN4V3CqKAbiZPSeJFSWHmJsbkicta0Eg==",
+      "license": "MIT"
+    },
+    "node_modules/openai": {
+      "version": "6.34.0",
+      "resolved": "https://registry.npmjs.org/openai/-/openai-6.34.0.tgz",
+      "integrity": "sha512-yEr2jdGf4tVFYG6ohmr3pF6VJuveP0EA/sS8TBx+4Eq5NT10alu5zg2dmxMXMgqpihRDQlFGpRt2XwsGj+Fyxw==",
+      "license": "Apache-2.0",
+      "bin": {
+        "openai": "bin/cli"
+      },
+      "peerDependencies": {
+        "ws": "^8.18.0",
+        "zod": "^3.25 || ^4.0"
+      },
+      "peerDependenciesMeta": {
+        "ws": {
+          "optional": true
+        },
+        "zod": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/picocolors": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
+      "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
+      "license": "ISC"
+    },
+    "node_modules/semver": {
+      "version": "6.3.1",
+      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+      "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+      "license": "ISC",
+      "bin": {
+        "semver": "bin/semver.js"
+      }
+    },
+    "node_modules/tiktoken": {
+      "version": "1.0.22",
+      "resolved": "https://registry.npmjs.org/tiktoken/-/tiktoken-1.0.22.tgz",
+      "integrity": "sha512-PKvy1rVF1RibfF3JlXBSP0Jrcw2uq3yXdgcEXtKTYn3QJ/cBRBHDnrJ5jHky+MENZ6DIPwNUGWpkVx+7joCpNA==",
+      "license": "MIT"
+    },
+    "node_modules/undici-types": {
+      "version": "5.26.5",
+      "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
+      "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==",
+      "license": "MIT"
+    },
+    "node_modules/update-browserslist-db": {
+      "version": "1.2.3",
+      "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz",
+      "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==",
+      "funding": [
+        {
+          "type": "opencollective",
+          "url": "https://opencollective.com/browserslist"
+        },
+        {
+          "type": "tidelift",
+          "url": "https://tidelift.com/funding/github/npm/browserslist"
+        },
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/ai"
+        }
+      ],
+      "license": "MIT",
+      "dependencies": {
+        "escalade": "^3.2.0",
+        "picocolors": "^1.1.1"
+      },
+      "bin": {
+        "update-browserslist-db": "cli.js"
+      },
+      "peerDependencies": {
+        "browserslist": ">= 4.21.0"
+      }
+    },
+    "node_modules/yallist": {
+      "version": "3.1.1",
+      "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
+      "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
+      "license": "ISC"
+    }
+  }
+}
diff --git a/misc/bun-decompile/pkg-descr b/misc/bun-decompile/pkg-descr
new file mode 100644
index 000000000000..3e6453a15fd3
--- /dev/null
+++ b/misc/bun-decompile/pkg-descr
@@ -0,0 +1,13 @@
+bun-decompile extracts and de-minifies source code from Bun-compiled
+executables using AI. Originally developed to inspect the Claude Code CLI,
+which ships as a Bun-compiled binary.
+
+Features:
+- Binary extraction: parse Bun's embedded module graph to extract all bundled
+  sources
+- Sourcemap recovery: automatically recover original TypeScript/JSX sources
+  from embedded sourcemaps
+- AI de-minification: use OpenAI or Anthropic to rename minified identifiers
+  back to meaningful names
+- Functional equivalence: Babel-based renaming guarantees the de-minified
+  code works identically
diff --git a/misc/bun-decompile/pkg-plist b/misc/bun-decompile/pkg-plist
new file mode 100644
index 000000000000..a26e5b2d954f
--- /dev/null
+++ b/misc/bun-decompile/pkg-plist
@@ -0,0 +1,4798 @@
+bin/bun-decompile
+lib/node_modules/.bin/acorn
+lib/node_modules/.bin/anthropic-ai-sdk
+lib/node_modules/.bin/baseline-browser-mapping
+lib/node_modules/.bin/browserslist
+lib/node_modules/.bin/bun-decompile
+lib/node_modules/.bin/jsesc
+lib/node_modules/.bin/json5
+lib/node_modules/.bin/openai
+lib/node_modules/.bin/parser
+lib/node_modules/.bin/semver
+lib/node_modules/.bin/update-browserslist-db
+lib/node_modules/@anthropic-ai/sdk/CHANGELOG.md
+lib/node_modules/@anthropic-ai/sdk/LICENSE
+lib/node_modules/@anthropic-ai/sdk/README.md
+lib/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.d.mts
+lib/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.d.ts
+lib/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.js
+lib/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.js.map
+lib/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.mjs
+lib/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.mjs.map
+lib/node_modules/@anthropic-ai/sdk/api-promise.d.mts
+lib/node_modules/@anthropic-ai/sdk/api-promise.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/api-promise.d.ts
+lib/node_modules/@anthropic-ai/sdk/api-promise.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/api-promise.js
+lib/node_modules/@anthropic-ai/sdk/api-promise.js.map
+lib/node_modules/@anthropic-ai/sdk/api-promise.mjs
+lib/node_modules/@anthropic-ai/sdk/api-promise.mjs.map
+lib/node_modules/@anthropic-ai/sdk/bin/cli
+lib/node_modules/@anthropic-ai/sdk/bin/migration-config.json
+lib/node_modules/@anthropic-ai/sdk/client.d.mts
+lib/node_modules/@anthropic-ai/sdk/client.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/client.d.ts
+lib/node_modules/@anthropic-ai/sdk/client.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/client.js
+lib/node_modules/@anthropic-ai/sdk/client.js.map
+lib/node_modules/@anthropic-ai/sdk/client.mjs
+lib/node_modules/@anthropic-ai/sdk/client.mjs.map
+lib/node_modules/@anthropic-ai/sdk/core/api-promise.d.mts
+lib/node_modules/@anthropic-ai/sdk/core/api-promise.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/core/api-promise.d.ts
+lib/node_modules/@anthropic-ai/sdk/core/api-promise.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/core/api-promise.js
+lib/node_modules/@anthropic-ai/sdk/core/api-promise.js.map
+lib/node_modules/@anthropic-ai/sdk/core/api-promise.mjs
+lib/node_modules/@anthropic-ai/sdk/core/api-promise.mjs.map
+lib/node_modules/@anthropic-ai/sdk/core/error.d.mts
+lib/node_modules/@anthropic-ai/sdk/core/error.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/core/error.d.ts
+lib/node_modules/@anthropic-ai/sdk/core/error.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/core/error.js
+lib/node_modules/@anthropic-ai/sdk/core/error.js.map
+lib/node_modules/@anthropic-ai/sdk/core/error.mjs
+lib/node_modules/@anthropic-ai/sdk/core/error.mjs.map
+lib/node_modules/@anthropic-ai/sdk/core/pagination.d.mts
+lib/node_modules/@anthropic-ai/sdk/core/pagination.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/core/pagination.d.ts
+lib/node_modules/@anthropic-ai/sdk/core/pagination.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/core/pagination.js
+lib/node_modules/@anthropic-ai/sdk/core/pagination.js.map
+lib/node_modules/@anthropic-ai/sdk/core/pagination.mjs
+lib/node_modules/@anthropic-ai/sdk/core/pagination.mjs.map
+lib/node_modules/@anthropic-ai/sdk/core/resource.d.mts
+lib/node_modules/@anthropic-ai/sdk/core/resource.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/core/resource.d.ts
+lib/node_modules/@anthropic-ai/sdk/core/resource.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/core/resource.js
+lib/node_modules/@anthropic-ai/sdk/core/resource.js.map
+lib/node_modules/@anthropic-ai/sdk/core/resource.mjs
+lib/node_modules/@anthropic-ai/sdk/core/resource.mjs.map
+lib/node_modules/@anthropic-ai/sdk/core/streaming.d.mts
+lib/node_modules/@anthropic-ai/sdk/core/streaming.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/core/streaming.d.ts
+lib/node_modules/@anthropic-ai/sdk/core/streaming.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/core/streaming.js
+lib/node_modules/@anthropic-ai/sdk/core/streaming.js.map
+lib/node_modules/@anthropic-ai/sdk/core/streaming.mjs
+lib/node_modules/@anthropic-ai/sdk/core/streaming.mjs.map
+lib/node_modules/@anthropic-ai/sdk/core/uploads.d.mts
+lib/node_modules/@anthropic-ai/sdk/core/uploads.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/core/uploads.d.ts
+lib/node_modules/@anthropic-ai/sdk/core/uploads.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/core/uploads.js
+lib/node_modules/@anthropic-ai/sdk/core/uploads.js.map
+lib/node_modules/@anthropic-ai/sdk/core/uploads.mjs
+lib/node_modules/@anthropic-ai/sdk/core/uploads.mjs.map
+lib/node_modules/@anthropic-ai/sdk/error.d.mts
+lib/node_modules/@anthropic-ai/sdk/error.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/error.d.ts
+lib/node_modules/@anthropic-ai/sdk/error.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/error.js
+lib/node_modules/@anthropic-ai/sdk/error.js.map
+lib/node_modules/@anthropic-ai/sdk/error.mjs
+lib/node_modules/@anthropic-ai/sdk/error.mjs.map
+lib/node_modules/@anthropic-ai/sdk/index.d.mts
+lib/node_modules/@anthropic-ai/sdk/index.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/index.d.ts
+lib/node_modules/@anthropic-ai/sdk/index.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/index.js
+lib/node_modules/@anthropic-ai/sdk/index.js.map
+lib/node_modules/@anthropic-ai/sdk/index.mjs
+lib/node_modules/@anthropic-ai/sdk/index.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/builtin-types.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/builtin-types.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/builtin-types.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/builtin-types.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/builtin-types.js
+lib/node_modules/@anthropic-ai/sdk/internal/builtin-types.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/builtin-types.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/builtin-types.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/constants.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/constants.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/constants.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/constants.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/constants.js
+lib/node_modules/@anthropic-ai/sdk/internal/constants.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/constants.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/constants.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.js
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/line.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/line.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/line.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/line.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/line.js
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/line.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/line.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/decoders/line.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/detect-platform.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/detect-platform.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/detect-platform.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/detect-platform.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/detect-platform.js
+lib/node_modules/@anthropic-ai/sdk/internal/detect-platform.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/detect-platform.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/detect-platform.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/errors.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/errors.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/errors.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/errors.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/errors.js
+lib/node_modules/@anthropic-ai/sdk/internal/errors.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/errors.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/errors.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/headers.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/headers.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/headers.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/headers.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/headers.js
+lib/node_modules/@anthropic-ai/sdk/internal/headers.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/headers.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/headers.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/parse.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/parse.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/parse.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/parse.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/parse.js
+lib/node_modules/@anthropic-ai/sdk/internal/parse.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/parse.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/parse.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/request-options.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/request-options.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/request-options.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/request-options.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/request-options.js
+lib/node_modules/@anthropic-ai/sdk/internal/request-options.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/request-options.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/request-options.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/shim-types.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/shim-types.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/shims.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/shims.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/shims.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/shims.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/shims.js
+lib/node_modules/@anthropic-ai/sdk/internal/shims.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/shims.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/shims.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/stream-utils.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/stream-utils.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/stream-utils.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/stream-utils.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/stream-utils.js
+lib/node_modules/@anthropic-ai/sdk/internal/stream-utils.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/stream-utils.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/stream-utils.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/to-file.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/to-file.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/to-file.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/to-file.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/to-file.js
+lib/node_modules/@anthropic-ai/sdk/internal/to-file.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/to-file.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/to-file.mjs.map
+lib/node_modules/@anthropic-ai/sdk/internal/tslib.js
+lib/node_modules/@anthropic-ai/sdk/internal/tslib.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/types.d.mts
+lib/node_modules/@anthropic-ai/sdk/internal/types.d.mts.map
+lib/node_modules/@anthropic-ai/sdk/internal/types.d.ts
+lib/node_modules/@anthropic-ai/sdk/internal/types.d.ts.map
+lib/node_modules/@anthropic-ai/sdk/internal/types.js
+lib/node_modules/@anthropic-ai/sdk/internal/types.js.map
+lib/node_modules/@anthropic-ai/sdk/internal/types.mjs
+lib/node_modules/@anthropic-ai/sdk/internal/types.mjs.map
*** 4585 LINES SKIPPED ***


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69f223c1.189a1.1cc43ee4>