# BT runtime information ## Function BT is a global read-only static object used to read the current interpreter version, platform, runtime snapshots, environment variable overlays, PATH entries and built-in capabilities tables. ## Syntax ```bt BT.VERSION BT.info() BT.env('PATH') BT.has('process') ``` ## API List | API | Description | | ------ | ------ | | [BT constant ](/en/docs/bt/constants) | Read VERSION, NAME, OS, ARCH, FAMILY, DEBUG, EXE_EXT, LIB_EXT, POINTER_WIDTH, THREADS. | | [BT.info](/en/docs/bt/info) | Returns the current runtime information snapshot. | | [BT.env](/en/docs/bt/env) | Read valid environment variables. | | [BT.set_env](/en/docs/bt/set_env) | Write to the BT runtime environment variable overlay. | | [BT.remove_env](/en/docs/bt/remove_env) | Remove runtime environment variables and obscure OS environment variables with the same name. | | [BT.has_env](/en/docs/bt/has_env) | Determine whether the current valid environment variable exists. | | [BT.envs](/en/docs/bt/envs) | Returns the merged effective environment variable object. | | [BT.path_entries](/en/docs/bt/path_entries) | Returns the list of currently valid PATH entries. | | [BT.add_path](/en/docs/bt/add_path) | Append or prepend a path to a valid PATH. | | [BT.remove_path](/en/docs/bt/remove_path) | Remove path from valid PATH. | | [BT.has_path](/en/docs/bt/has_path) | Determine whether the valid PATH contains a path. | | [BT.system](/en/docs/bt/system) | Returns lightweight system fields. | | [BT.runtime](/en/docs/bt/runtime) | Return the runtime uptime, threads, start_time. | | [BT.stats](/en/docs/bt/stats) | Returns I/O, task, timer, net, FFI and cache resource statistics. | | [BT.has](/en/docs/bt/has) | Determine whether the current interpreter has a built-in capability. | | [BT.features](/en/docs/bt/features) | Returns the current interpreter capability table. | | [BT.runtime_id](/en/docs/bt/runtime_id) | Returns the current BT process running instance ID. | ## Examples ```bt info = BT.info() // Output: 1.1.0 print info.version ``` ## Notes - BT is a global static object and does not require construction. - BT attributes are read-only and cannot overwrite `BT` itself, nor can attributes like `BT.VERSION` be written to. - Runtime information is read on demand; `BT.info()` uses cached snapshots. - `BT.stats()` only reads the runtime resource status when called and does not add statistical overhead to ordinary expression execution.