bentoworks 0.9.2__tar.gz
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.
- bentoworks-0.9.2/.gitignore +26 -0
- bentoworks-0.9.2/CHANGELOG.md +82 -0
- bentoworks-0.9.2/Cargo.lock +410 -0
- bentoworks-0.9.2/Cargo.toml +40 -0
- bentoworks-0.9.2/LICENSE +26 -0
- bentoworks-0.9.2/PKG-INFO +22 -0
- bentoworks-0.9.2/README.md +302 -0
- bentoworks-0.9.2/include/bentobox.h +100 -0
- bentoworks-0.9.2/pyproject.toml +45 -0
- bentoworks-0.9.2/python/bentoworks/__init__.py +14 -0
- bentoworks-0.9.2/python/bentoworks/bentobox.py +235 -0
- bentoworks-0.9.2/python/bentoworks/cli.py +135 -0
- bentoworks-0.9.2/python/bentoworks/compartments/__init__.py +12 -0
- bentoworks-0.9.2/python/bentoworks/compartments/base.py +71 -0
- bentoworks-0.9.2/python/bentoworks/compartments/config.py +39 -0
- bentoworks-0.9.2/python/bentoworks/compartments/message.py +12 -0
- bentoworks-0.9.2/python/bentoworks/compartments/runtime.py +219 -0
- bentoworks-0.9.2/python/bentoworks/engine/__init__.py +7 -0
- bentoworks-0.9.2/python/bentoworks/engine/events.py +36 -0
- bentoworks-0.9.2/python/bentoworks/engine/tracer.py +143 -0
- bentoworks-0.9.2/python/bentoworks/errors.py +6 -0
- bentoworks-0.9.2/python/bentoworks/runtime.py +15 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/__init__.py +11 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/behaviour.py +64 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/box.py +139 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/compression.py +92 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/credential_module.py +45 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/enforcer.py +213 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/lid.py +69 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/proxy.py +235 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/snapshot.py +115 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/snapshot_module.py +61 -0
- bentoworks-0.9.2/python/bentoworks/sandbox/task_profile.py +19 -0
- bentoworks-0.9.2/sdk/README.md +97 -0
- bentoworks-0.9.2/sdk/typescript/index.d.ts +25 -0
- bentoworks-0.9.2/sdk/typescript/index.js +327 -0
- bentoworks-0.9.2/sdk/typescript/package-lock.json +46 -0
- bentoworks-0.9.2/sdk/typescript/package.json +57 -0
- bentoworks-0.9.2/sdk/typescript/test/smoke.mjs +88 -0
- bentoworks-0.9.2/src/c_api.rs +616 -0
- bentoworks-0.9.2/src/compress.rs +4 -0
- bentoworks-0.9.2/src/engines/compression/adaptive_sizer.rs +415 -0
- bentoworks-0.9.2/src/engines/compression/anchor_selector.rs +841 -0
- bentoworks-0.9.2/src/engines/compression/bm25.rs +82 -0
- bentoworks-0.9.2/src/engines/compression/content_detector.rs +544 -0
- bentoworks-0.9.2/src/engines/compression/diff_compressor.rs +1234 -0
- bentoworks-0.9.2/src/engines/compression/log_compressor.rs +1111 -0
- bentoworks-0.9.2/src/engines/compression/mod.rs +89 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/analyzer.rs +949 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/anchors.rs +260 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/classifier.rs +118 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/compaction/classifier.rs +239 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/compaction/compactor.rs +722 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/compaction/formatter.rs +491 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/compaction/ir.rs +177 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/compaction/mod.rs +44 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/compaction/walker.rs +50 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/crusher.rs +1322 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/crushers.rs +633 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/field_detect.rs +295 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/mod.rs +250 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/orchestration.rs +340 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/outliers.rs +341 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/planning.rs +753 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/statistics.rs +361 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/stats_math.rs +214 -0
- bentoworks-0.9.2/src/engines/compression/smart_crusher/types.rs +152 -0
- bentoworks-0.9.2/src/engines/compression/text_crusher/config.rs +24 -0
- bentoworks-0.9.2/src/engines/compression/text_crusher/crusher.rs +266 -0
- bentoworks-0.9.2/src/engines/compression/text_crusher/mod.rs +5 -0
- bentoworks-0.9.2/src/engines/mod.rs +1 -0
- bentoworks-0.9.2/src/lib.rs +17 -0
- bentoworks-0.9.2/src/py_bindings.rs +49 -0
- bentoworks-0.9.2/src/runtime/ccr/mod.rs +174 -0
- bentoworks-0.9.2/src/runtime/compartments/mod.rs +218 -0
- bentoworks-0.9.2/src/runtime/credential.rs +155 -0
- bentoworks-0.9.2/src/runtime/enforcer.rs +87 -0
- bentoworks-0.9.2/src/runtime/mod.rs +5 -0
- bentoworks-0.9.2/src/runtime/snapshot.rs +204 -0
- bentoworks-0.9.2/src/sandbox/linux.rs +354 -0
- bentoworks-0.9.2/src/sandbox/macos.rs +329 -0
- bentoworks-0.9.2/src/sandbox/mod.rs +98 -0
- bentoworks-0.9.2/tests/bentoworks/test_bentoworks_e2e.py +147 -0
- bentoworks-0.9.2/tests/test_box_lifecycle.py +55 -0
- bentoworks-0.9.2/tests/test_cli.py +62 -0
- bentoworks-0.9.2/tests/test_e2e_full_suite.py +484 -0
- bentoworks-0.9.2/tests/test_proxy.py +125 -0
- bentoworks-0.9.2/tests/test_snapshot.py +307 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Rust build artifacts
|
|
2
|
+
/target/
|
|
3
|
+
|
|
4
|
+
# Python artifacts
|
|
5
|
+
__pycache__/
|
|
6
|
+
*.pyc
|
|
7
|
+
*.pyo
|
|
8
|
+
*.pyd
|
|
9
|
+
*.so
|
|
10
|
+
*.dylib
|
|
11
|
+
*.egg-info/
|
|
12
|
+
dist/
|
|
13
|
+
build/
|
|
14
|
+
.pytest_cache/
|
|
15
|
+
.venv/
|
|
16
|
+
|
|
17
|
+
# BentoBox transient state
|
|
18
|
+
.bentoworks/
|
|
19
|
+
|
|
20
|
+
# Language SDK artifacts
|
|
21
|
+
sdk/typescript/node_modules/
|
|
22
|
+
sdk/typescript/*.node
|
|
23
|
+
sdk/typescript/native/target/
|
|
24
|
+
sdk/typescript/native/Cargo.lock
|
|
25
|
+
sdk/typescript/*.tgz
|
|
26
|
+
sdk/typescript/sdk-darwin-*/
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to BentoBox are documented here.
|
|
4
|
+
|
|
5
|
+
## [0.9.2] - 2026-08-01
|
|
6
|
+
|
|
7
|
+
### Removed
|
|
8
|
+
|
|
9
|
+
- **Go SDK removed.** The `sdk/go/` module was dropped; BentoBox now ships
|
|
10
|
+
Python and TypeScript SDKs only. `Cargo.toml` no longer emits a
|
|
11
|
+
`staticlib` archive, `include/bentobox.h` no longer references the Go
|
|
12
|
+
bindings, and all Go code samples were stripped from the docs.
|
|
13
|
+
|
|
14
|
+
### Changed
|
|
15
|
+
|
|
16
|
+
- **Product rebrand.** The README is now a product landing page rather than a
|
|
17
|
+
technical writeup: a one-line hero promise ("Sandbox any AI agent in
|
|
18
|
+
seconds"), a "Why BentoBox" section, benefit-led features, real use cases
|
|
19
|
+
(coding agents, builds/tests, deploys, pipelines), and an honest security
|
|
20
|
+
model. SDK, CLI, and package metadata descriptions now carry the same
|
|
21
|
+
product voice.
|
|
22
|
+
- **CLI branding.** `bentoworks --version` and `--help` now surface the
|
|
23
|
+
tagline, and `bentoworks run`/`why` print a brand banner on interactive
|
|
24
|
+
terminals. Non-TTY output stays machine-friendly for scripts and CI.
|
|
25
|
+
- **TypeScript SDK package metadata.** `@bentwork/sdk` descriptions updated;
|
|
26
|
+
the publish layout is trimmed to the shipped macOS platform packages
|
|
27
|
+
(`darwin-arm64`, `darwin-x64`) at version `0.9.2`.
|
|
28
|
+
- **Version bumped to `0.9.2`** across the Rust core, Python package, and
|
|
29
|
+
TypeScript SDK to publish the rebranded build to PyPI.
|
|
30
|
+
|
|
31
|
+
## [0.9.1] - 2026-07-31
|
|
32
|
+
|
|
33
|
+
### Fixed
|
|
34
|
+
|
|
35
|
+
- **CLI: `bentoworks run` now prints command output.** The compartment
|
|
36
|
+
function returned a `subprocess.CompletedProcess` while the CLI only
|
|
37
|
+
printed dict results, so `stdout`/`stderr` were silently swallowed. The
|
|
38
|
+
CLI now captures and prints `Stdout:`/`Stderr:` blocks after the run
|
|
39
|
+
summary.
|
|
40
|
+
- **CLI: non-zero command exit codes now surface.** `bentoworks run "exit 3"`
|
|
41
|
+
previously reported `Status: success`; the CLI now exits with status `1`
|
|
42
|
+
when the shell command fails.
|
|
43
|
+
- **Credential proxy: absolute-form (`HTTP_PROXY`) requests now get
|
|
44
|
+
credential-injected.** Route matching now uses the path component of the
|
|
45
|
+
request target, so both origin-form (`/openai/v1/chat`) and absolute-form
|
|
46
|
+
(`http://host/openai/v1/chat`, as sent by `HTTP_PROXY` clients) are
|
|
47
|
+
matched and rewritten. Query strings survive the rewrite.
|
|
48
|
+
- **TypeScript SDK: fixed compile error.** `Runtime::names()` in the napi
|
|
49
|
+
wrapper called a method that had been removed from the Rust `Runtime`
|
|
50
|
+
struct; the `names()` method was restored, so `npm run build` and
|
|
51
|
+
`npm test` pass again.
|
|
52
|
+
|
|
53
|
+
### Changed
|
|
54
|
+
|
|
55
|
+
- **Docs restyled.** The README and SDK docs now follow the structure used
|
|
56
|
+
by top YC developer-tool projects: a one-line value proposition, an
|
|
57
|
+
above-the-fold quickstart, a "Why" section, a feature table, and a
|
|
58
|
+
professional footer. The stale `bentoworks.runtime` import in the
|
|
59
|
+
"Advanced Users" example was replaced with the correct
|
|
60
|
+
`bentoworks.compartments` subclass pattern.
|
|
61
|
+
- **Tests import the installed package.** The pytest `pythonpath = ["python"]`
|
|
62
|
+
config was removed because the source tree no longer contains a compiled
|
|
63
|
+
native core (`_core` ships inside the wheel). Install the package
|
|
64
|
+
(`pip install .`) before running the test suite.
|
|
65
|
+
- **Test isolation.** `Box.enter()` calls in the box-lifecycle tests now pass
|
|
66
|
+
`sandbox=False`, so the irreversible kernel Seatbelt sandbox is no longer
|
|
67
|
+
applied to the shared pytest process (which poisoned `os.getcwd()` for
|
|
68
|
+
later tests).
|
|
69
|
+
|
|
70
|
+
### Added
|
|
71
|
+
|
|
72
|
+
- `tests/test_cli.py` - CLI regression tests (stdout/stderr printing, exit
|
|
73
|
+
codes, `goal` positional, `why`).
|
|
74
|
+
- `tests/test_proxy.py` - credential proxy regression tests (origin-form,
|
|
75
|
+
absolute-form, no-match pass-through, query preservation).
|
|
76
|
+
|
|
77
|
+
### Verified
|
|
78
|
+
|
|
79
|
+
- Python: 73 tests pass (installed wheel).
|
|
80
|
+
- Rust core: 425 tests pass.
|
|
81
|
+
- Go SDK: `go vet` clean, 15 tests pass.
|
|
82
|
+
- TypeScript SDK: builds and all smoke tests pass.
|
|
@@ -0,0 +1,410 @@
|
|
|
1
|
+
# This file is automatically @generated by Cargo.
|
|
2
|
+
# It is not intended for manual editing.
|
|
3
|
+
version = 4
|
|
4
|
+
|
|
5
|
+
[[package]]
|
|
6
|
+
name = "adler2"
|
|
7
|
+
version = "2.0.1"
|
|
8
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
9
|
+
checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
|
|
10
|
+
|
|
11
|
+
[[package]]
|
|
12
|
+
name = "aho-corasick"
|
|
13
|
+
version = "1.1.4"
|
|
14
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
15
|
+
checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301"
|
|
16
|
+
dependencies = [
|
|
17
|
+
"memchr",
|
|
18
|
+
]
|
|
19
|
+
|
|
20
|
+
[[package]]
|
|
21
|
+
name = "arrayref"
|
|
22
|
+
version = "0.3.9"
|
|
23
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
24
|
+
checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb"
|
|
25
|
+
|
|
26
|
+
[[package]]
|
|
27
|
+
name = "arrayvec"
|
|
28
|
+
version = "0.7.8"
|
|
29
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
30
|
+
checksum = "d3fb67a6e08acf24fdeccbac2cb6ac4305825bd1f117462e0e6f2f193345ad56"
|
|
31
|
+
|
|
32
|
+
[[package]]
|
|
33
|
+
name = "bentoworks-core"
|
|
34
|
+
version = "0.9.2"
|
|
35
|
+
dependencies = [
|
|
36
|
+
"aho-corasick",
|
|
37
|
+
"blake3",
|
|
38
|
+
"flate2",
|
|
39
|
+
"landlock",
|
|
40
|
+
"pyo3",
|
|
41
|
+
"regex",
|
|
42
|
+
"serde",
|
|
43
|
+
"serde_json",
|
|
44
|
+
]
|
|
45
|
+
|
|
46
|
+
[[package]]
|
|
47
|
+
name = "blake3"
|
|
48
|
+
version = "1.8.5"
|
|
49
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
50
|
+
checksum = "0aa83c34e62843d924f905e0f5c866eb1dd6545fc4d719e803d9ba6030371fce"
|
|
51
|
+
dependencies = [
|
|
52
|
+
"arrayref",
|
|
53
|
+
"arrayvec",
|
|
54
|
+
"cc",
|
|
55
|
+
"cfg-if",
|
|
56
|
+
"constant_time_eq",
|
|
57
|
+
"cpufeatures",
|
|
58
|
+
]
|
|
59
|
+
|
|
60
|
+
[[package]]
|
|
61
|
+
name = "cc"
|
|
62
|
+
version = "1.3.0"
|
|
63
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
64
|
+
checksum = "c89588d05638b5b4594a3348a2d6c20277e43a7f5c5202b05cc56888475a47b8"
|
|
65
|
+
dependencies = [
|
|
66
|
+
"find-msvc-tools",
|
|
67
|
+
"shlex",
|
|
68
|
+
]
|
|
69
|
+
|
|
70
|
+
[[package]]
|
|
71
|
+
name = "cfg-if"
|
|
72
|
+
version = "1.0.4"
|
|
73
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
74
|
+
checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
|
|
75
|
+
|
|
76
|
+
[[package]]
|
|
77
|
+
name = "constant_time_eq"
|
|
78
|
+
version = "0.4.2"
|
|
79
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
80
|
+
checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b"
|
|
81
|
+
|
|
82
|
+
[[package]]
|
|
83
|
+
name = "cpufeatures"
|
|
84
|
+
version = "0.3.0"
|
|
85
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
86
|
+
checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201"
|
|
87
|
+
dependencies = [
|
|
88
|
+
"libc",
|
|
89
|
+
]
|
|
90
|
+
|
|
91
|
+
[[package]]
|
|
92
|
+
name = "crc32fast"
|
|
93
|
+
version = "1.5.0"
|
|
94
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
95
|
+
checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511"
|
|
96
|
+
dependencies = [
|
|
97
|
+
"cfg-if",
|
|
98
|
+
]
|
|
99
|
+
|
|
100
|
+
[[package]]
|
|
101
|
+
name = "enumflags2"
|
|
102
|
+
version = "0.7.12"
|
|
103
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
104
|
+
checksum = "1027f7680c853e056ebcec683615fb6fbbc07dbaa13b4d5d9442b146ded4ecef"
|
|
105
|
+
dependencies = [
|
|
106
|
+
"enumflags2_derive",
|
|
107
|
+
]
|
|
108
|
+
|
|
109
|
+
[[package]]
|
|
110
|
+
name = "enumflags2_derive"
|
|
111
|
+
version = "0.7.12"
|
|
112
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
113
|
+
checksum = "67c78a4d8fdf9953a5c9d458f9efe940fd97a0cab0941c075a813ac594733827"
|
|
114
|
+
dependencies = [
|
|
115
|
+
"proc-macro2",
|
|
116
|
+
"quote",
|
|
117
|
+
"syn 2.0.119",
|
|
118
|
+
]
|
|
119
|
+
|
|
120
|
+
[[package]]
|
|
121
|
+
name = "find-msvc-tools"
|
|
122
|
+
version = "0.1.9"
|
|
123
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
124
|
+
checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
|
|
125
|
+
|
|
126
|
+
[[package]]
|
|
127
|
+
name = "flate2"
|
|
128
|
+
version = "1.1.9"
|
|
129
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
130
|
+
checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c"
|
|
131
|
+
dependencies = [
|
|
132
|
+
"crc32fast",
|
|
133
|
+
"miniz_oxide",
|
|
134
|
+
]
|
|
135
|
+
|
|
136
|
+
[[package]]
|
|
137
|
+
name = "heck"
|
|
138
|
+
version = "0.5.0"
|
|
139
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
140
|
+
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
|
|
141
|
+
|
|
142
|
+
[[package]]
|
|
143
|
+
name = "itoa"
|
|
144
|
+
version = "1.0.18"
|
|
145
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
146
|
+
checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
|
|
147
|
+
|
|
148
|
+
[[package]]
|
|
149
|
+
name = "landlock"
|
|
150
|
+
version = "0.4.7"
|
|
151
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
152
|
+
checksum = "4cca98e95f35b29d469dade6724c6f96cec9236640f745a0e99b0334ec320ab1"
|
|
153
|
+
dependencies = [
|
|
154
|
+
"enumflags2",
|
|
155
|
+
"libc",
|
|
156
|
+
"thiserror",
|
|
157
|
+
]
|
|
158
|
+
|
|
159
|
+
[[package]]
|
|
160
|
+
name = "libc"
|
|
161
|
+
version = "0.2.187"
|
|
162
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
163
|
+
checksum = "a7743783ea728ef5c31194c6590797eed286449b4a4e87d626d8a51f0a94e732"
|
|
164
|
+
|
|
165
|
+
[[package]]
|
|
166
|
+
name = "memchr"
|
|
167
|
+
version = "2.8.3"
|
|
168
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
169
|
+
checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98"
|
|
170
|
+
|
|
171
|
+
[[package]]
|
|
172
|
+
name = "miniz_oxide"
|
|
173
|
+
version = "0.8.9"
|
|
174
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
175
|
+
checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316"
|
|
176
|
+
dependencies = [
|
|
177
|
+
"adler2",
|
|
178
|
+
"simd-adler32",
|
|
179
|
+
]
|
|
180
|
+
|
|
181
|
+
[[package]]
|
|
182
|
+
name = "once_cell"
|
|
183
|
+
version = "1.21.4"
|
|
184
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
185
|
+
checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
|
|
186
|
+
|
|
187
|
+
[[package]]
|
|
188
|
+
name = "portable-atomic"
|
|
189
|
+
version = "1.14.0"
|
|
190
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
191
|
+
checksum = "3d20d5497ef88037a52ff98267d066e7f11fcc5e99bbfbd58a42336193aacec3"
|
|
192
|
+
|
|
193
|
+
[[package]]
|
|
194
|
+
name = "proc-macro2"
|
|
195
|
+
version = "1.0.107"
|
|
196
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
197
|
+
checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
|
|
198
|
+
dependencies = [
|
|
199
|
+
"unicode-ident",
|
|
200
|
+
]
|
|
201
|
+
|
|
202
|
+
[[package]]
|
|
203
|
+
name = "pyo3"
|
|
204
|
+
version = "0.29.0"
|
|
205
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
206
|
+
checksum = "cd274650b21d4bfc26a0a47587962c1edb425f69287324355cd040c3ea66071c"
|
|
207
|
+
dependencies = [
|
|
208
|
+
"libc",
|
|
209
|
+
"once_cell",
|
|
210
|
+
"portable-atomic",
|
|
211
|
+
"pyo3-build-config",
|
|
212
|
+
"pyo3-ffi",
|
|
213
|
+
"pyo3-macros",
|
|
214
|
+
]
|
|
215
|
+
|
|
216
|
+
[[package]]
|
|
217
|
+
name = "pyo3-build-config"
|
|
218
|
+
version = "0.29.0"
|
|
219
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
220
|
+
checksum = "c5e2a7d2f0d013342f295c048ad19237add5154a55b1c5a254c0ec93d4109078"
|
|
221
|
+
dependencies = [
|
|
222
|
+
"target-lexicon",
|
|
223
|
+
]
|
|
224
|
+
|
|
225
|
+
[[package]]
|
|
226
|
+
name = "pyo3-ffi"
|
|
227
|
+
version = "0.29.0"
|
|
228
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
229
|
+
checksum = "ca85c467da1bbc8d866eea5deff9cf29ea5f7785054a17da36e65bda9c05845b"
|
|
230
|
+
dependencies = [
|
|
231
|
+
"libc",
|
|
232
|
+
"pyo3-build-config",
|
|
233
|
+
]
|
|
234
|
+
|
|
235
|
+
[[package]]
|
|
236
|
+
name = "pyo3-macros"
|
|
237
|
+
version = "0.29.0"
|
|
238
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
239
|
+
checksum = "9ac53762fd065daa3194dd09337a38bd793a188100fd1a9304c4ab312d901771"
|
|
240
|
+
dependencies = [
|
|
241
|
+
"proc-macro2",
|
|
242
|
+
"pyo3-macros-backend",
|
|
243
|
+
"quote",
|
|
244
|
+
"syn 2.0.119",
|
|
245
|
+
]
|
|
246
|
+
|
|
247
|
+
[[package]]
|
|
248
|
+
name = "pyo3-macros-backend"
|
|
249
|
+
version = "0.29.0"
|
|
250
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
251
|
+
checksum = "4ca3a1557399783172dc5bf39cfca835157732532cba56b71d2292161e53b362"
|
|
252
|
+
dependencies = [
|
|
253
|
+
"heck",
|
|
254
|
+
"proc-macro2",
|
|
255
|
+
"quote",
|
|
256
|
+
"syn 2.0.119",
|
|
257
|
+
]
|
|
258
|
+
|
|
259
|
+
[[package]]
|
|
260
|
+
name = "quote"
|
|
261
|
+
version = "1.0.47"
|
|
262
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
263
|
+
checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
|
|
264
|
+
dependencies = [
|
|
265
|
+
"proc-macro2",
|
|
266
|
+
]
|
|
267
|
+
|
|
268
|
+
[[package]]
|
|
269
|
+
name = "regex"
|
|
270
|
+
version = "1.13.1"
|
|
271
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
272
|
+
checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d"
|
|
273
|
+
dependencies = [
|
|
274
|
+
"aho-corasick",
|
|
275
|
+
"memchr",
|
|
276
|
+
"regex-automata",
|
|
277
|
+
"regex-syntax",
|
|
278
|
+
]
|
|
279
|
+
|
|
280
|
+
[[package]]
|
|
281
|
+
name = "regex-automata"
|
|
282
|
+
version = "0.4.16"
|
|
283
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
284
|
+
checksum = "8fcfdb36bda0c880c5931cdc7a2bcdc8ba4556847b9d912bca70bc94708711ad"
|
|
285
|
+
dependencies = [
|
|
286
|
+
"aho-corasick",
|
|
287
|
+
"memchr",
|
|
288
|
+
"regex-syntax",
|
|
289
|
+
]
|
|
290
|
+
|
|
291
|
+
[[package]]
|
|
292
|
+
name = "regex-syntax"
|
|
293
|
+
version = "0.8.11"
|
|
294
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
295
|
+
checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4"
|
|
296
|
+
|
|
297
|
+
[[package]]
|
|
298
|
+
name = "serde"
|
|
299
|
+
version = "1.0.229"
|
|
300
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
301
|
+
checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba"
|
|
302
|
+
dependencies = [
|
|
303
|
+
"serde_core",
|
|
304
|
+
"serde_derive",
|
|
305
|
+
]
|
|
306
|
+
|
|
307
|
+
[[package]]
|
|
308
|
+
name = "serde_core"
|
|
309
|
+
version = "1.0.229"
|
|
310
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
311
|
+
checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48"
|
|
312
|
+
dependencies = [
|
|
313
|
+
"serde_derive",
|
|
314
|
+
]
|
|
315
|
+
|
|
316
|
+
[[package]]
|
|
317
|
+
name = "serde_derive"
|
|
318
|
+
version = "1.0.229"
|
|
319
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
320
|
+
checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348"
|
|
321
|
+
dependencies = [
|
|
322
|
+
"proc-macro2",
|
|
323
|
+
"quote",
|
|
324
|
+
"syn 3.0.2",
|
|
325
|
+
]
|
|
326
|
+
|
|
327
|
+
[[package]]
|
|
328
|
+
name = "serde_json"
|
|
329
|
+
version = "1.0.151"
|
|
330
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
331
|
+
checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14"
|
|
332
|
+
dependencies = [
|
|
333
|
+
"itoa",
|
|
334
|
+
"memchr",
|
|
335
|
+
"serde",
|
|
336
|
+
"serde_core",
|
|
337
|
+
"zmij",
|
|
338
|
+
]
|
|
339
|
+
|
|
340
|
+
[[package]]
|
|
341
|
+
name = "shlex"
|
|
342
|
+
version = "2.0.1"
|
|
343
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
344
|
+
checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
|
|
345
|
+
|
|
346
|
+
[[package]]
|
|
347
|
+
name = "simd-adler32"
|
|
348
|
+
version = "0.3.10"
|
|
349
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
350
|
+
checksum = "3a219298ac11a56ea9a6d2120044824d6f01aeb034955e7af7bc16858527deea"
|
|
351
|
+
|
|
352
|
+
[[package]]
|
|
353
|
+
name = "syn"
|
|
354
|
+
version = "2.0.119"
|
|
355
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
356
|
+
checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297"
|
|
357
|
+
dependencies = [
|
|
358
|
+
"proc-macro2",
|
|
359
|
+
"quote",
|
|
360
|
+
"unicode-ident",
|
|
361
|
+
]
|
|
362
|
+
|
|
363
|
+
[[package]]
|
|
364
|
+
name = "syn"
|
|
365
|
+
version = "3.0.2"
|
|
366
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
367
|
+
checksum = "a207d6d6a2b7fc470b80443726053f18a2481b7e1eee970597051596567987a3"
|
|
368
|
+
dependencies = [
|
|
369
|
+
"proc-macro2",
|
|
370
|
+
"quote",
|
|
371
|
+
"unicode-ident",
|
|
372
|
+
]
|
|
373
|
+
|
|
374
|
+
[[package]]
|
|
375
|
+
name = "target-lexicon"
|
|
376
|
+
version = "0.13.5"
|
|
377
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
378
|
+
checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
|
|
379
|
+
|
|
380
|
+
[[package]]
|
|
381
|
+
name = "thiserror"
|
|
382
|
+
version = "2.0.19"
|
|
383
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
384
|
+
checksum = "09a43598840e33d5b0331f38c5e30d13bb11c11210a4b58f0d9b18a5a5eefcd9"
|
|
385
|
+
dependencies = [
|
|
386
|
+
"thiserror-impl",
|
|
387
|
+
]
|
|
388
|
+
|
|
389
|
+
[[package]]
|
|
390
|
+
name = "thiserror-impl"
|
|
391
|
+
version = "2.0.19"
|
|
392
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
393
|
+
checksum = "43cbfe0cf76104d42a574802844187e84a305e531ed54455f11fbde0f10541cd"
|
|
394
|
+
dependencies = [
|
|
395
|
+
"proc-macro2",
|
|
396
|
+
"quote",
|
|
397
|
+
"syn 3.0.2",
|
|
398
|
+
]
|
|
399
|
+
|
|
400
|
+
[[package]]
|
|
401
|
+
name = "unicode-ident"
|
|
402
|
+
version = "1.0.24"
|
|
403
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
404
|
+
checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
|
|
405
|
+
|
|
406
|
+
[[package]]
|
|
407
|
+
name = "zmij"
|
|
408
|
+
version = "1.0.23"
|
|
409
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
410
|
+
checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b"
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
[package]
|
|
2
|
+
name = "bentoworks-core"
|
|
3
|
+
version = "0.9.2"
|
|
4
|
+
edition = "2021"
|
|
5
|
+
license = "BUSL-1.1"
|
|
6
|
+
description = "BentoBox - kernel-level sandbox with compartmentalized isolated execution (Rust core)"
|
|
7
|
+
repository = "https://github.com/Devaretanmay/BentoBox"
|
|
8
|
+
homepage = "https://github.com/Devaretanmay/BentoBox"
|
|
9
|
+
documentation = "https://docs.rs/crate/bentoworks-core"
|
|
10
|
+
keywords = ["ai", "mcp", "compression", "execution", "sandbox"]
|
|
11
|
+
categories = ["development-tools", "command-line-utilities"]
|
|
12
|
+
readme = "README.md"
|
|
13
|
+
|
|
14
|
+
[lib]
|
|
15
|
+
name = "bentoworks_core"
|
|
16
|
+
crate-type = ["cdylib", "lib"]
|
|
17
|
+
|
|
18
|
+
[features]
|
|
19
|
+
default = []
|
|
20
|
+
# Python extension module (enabled by maturin). Plain `cargo build`
|
|
21
|
+
# without this feature produces a clean FFI cdylib for the TS SDK.
|
|
22
|
+
pyo3-binding = ["dep:pyo3", "pyo3/extension-module", "pyo3/abi3-py38"]
|
|
23
|
+
|
|
24
|
+
[dependencies]
|
|
25
|
+
pyo3 = { version = "0.29", features = ["abi3-py38"], optional = true }
|
|
26
|
+
serde = { version = "1.0.228", features = ["derive"] }
|
|
27
|
+
serde_json = { version = "1.0.150" }
|
|
28
|
+
regex = "1"
|
|
29
|
+
flate2 = "1"
|
|
30
|
+
aho-corasick = "1"
|
|
31
|
+
blake3 = "1"
|
|
32
|
+
|
|
33
|
+
[target.'cfg(target_os = "linux")'.dependencies]
|
|
34
|
+
landlock = "0.4"
|
|
35
|
+
|
|
36
|
+
[profile.release]
|
|
37
|
+
opt-level = "z"
|
|
38
|
+
lto = true
|
|
39
|
+
codegen-units = 1
|
|
40
|
+
strip = "symbols"
|
bentoworks-0.9.2/LICENSE
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
Business Source License 1.1
|
|
2
|
+
|
|
3
|
+
Parameters:
|
|
4
|
+
|
|
5
|
+
Licensor: BentoBox Labs (Devaretanmay) / Tanmay Jayant Devare
|
|
6
|
+
Licensor's Website: https://github.com/Devaretanmay/BentoBox
|
|
7
|
+
Change Date: January 1st, 2030
|
|
8
|
+
Change License: Apache License, Version 2.0
|
|
9
|
+
Additional Use Grant: Production use, personal use, academic use, and internal company use are permitted. Offering BentoBox as a managed commercial SaaS, competing commercial execution service, or commercial redistribution of BentoBox as a hosted product is NOT permitted under this Additional Use Grant without explicit authorization from Licensor.
|
|
10
|
+
|
|
11
|
+
--------------------------------------------------------------------------------
|
|
12
|
+
|
|
13
|
+
Licensor hereby grants you the right to copy, modify, create derivative works, use, and sublicense the Licensed Work, strictly in accordance with the Additional Use Grant specified above.
|
|
14
|
+
|
|
15
|
+
Under the Additional Use Grant:
|
|
16
|
+
- Production use: Allowed
|
|
17
|
+
- Personal & Academic use: Allowed
|
|
18
|
+
- Internal company use: Allowed
|
|
19
|
+
- Commercial SaaS offerings: NOT allowed
|
|
20
|
+
- Competing commercial products: NOT allowed
|
|
21
|
+
- Commercial redistribution: NOT allowed
|
|
22
|
+
|
|
23
|
+
Change License & Date:
|
|
24
|
+
On the Change Date (January 1st, 2030), this Business Source License 1.1 shall automatically terminate and the version of BentoBox licensed hereunder shall be governed by the Apache License, Version 2.0.
|
|
25
|
+
|
|
26
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: bentoworks
|
|
3
|
+
Version: 0.9.2
|
|
4
|
+
Classifier: Development Status :: 4 - Beta
|
|
5
|
+
Classifier: Intended Audience :: Developers
|
|
6
|
+
Classifier: License :: Other/Proprietary License
|
|
7
|
+
Classifier: Programming Language :: Python :: 3
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
10
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
12
|
+
Classifier: Programming Language :: Rust
|
|
13
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
14
|
+
License-File: LICENSE
|
|
15
|
+
Summary: BentoBox - sandbox any AI agent in seconds. Kernel-enforced isolation, deny-by-default, no containers, no VMs.
|
|
16
|
+
Keywords: ai-agents,developer-tools,sandbox,isolation,runtime
|
|
17
|
+
Home-Page: https://github.com/Devaretanmay/BentoBox
|
|
18
|
+
License: BUSL-1.1
|
|
19
|
+
Requires-Python: >=3.10
|
|
20
|
+
Project-URL: Homepage, https://github.com/Devaretanmay/BentoBox
|
|
21
|
+
Project-URL: Issues, https://github.com/Devaretanmay/BentoBox/issues
|
|
22
|
+
Project-URL: Repository, https://github.com/Devaretanmay/BentoBox
|