BSD Ports

misc/bun-decompile 0.2.0 MidnightBSD

Extract and de-minify source code from Bun-compiled executables

System
MidnightBSD
Repository
mports
Maintainer
[email protected]
License
gpl3
Categories
misc

Description

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

In the other systems

SystemPortVersion
MidnightBSDmisc/bun-decompile0.2.0
FreeBSDmisc/bun-decompile0.2.0

Install

Binary package:

mport install bun-decompile

From mports:

cd /usr/mports/misc/bun-decompile && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	bun-decompile>0:misc/bun-decompile

Dependencies

As this port's Makefile names them.

Runtime 1

Fetch 4

Build dependencies 4
Run dependencies 1

No port depends on this one.

Files

pkg-plist 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

The first 100 are listed.

distinfo 1
FileSizeSHA256
bun-decompile-0.2.0.tar.gz1.560384e+07baec938e52e6687769e31b7fdbfd3f830f0805d130baedb0f09b1a6eecb93cca