tom_core_bridge
An alternative VS Code bridge server binary (`core_bs`): the base `tom_bs` from `tom_vscode_bridge` plus the complete Tom-framework D4rt bridge set registered by `tom_core_d4rt`, so editor scripts can drive a running app's core, server, and build APIs.
Overview
From the module readme.md file:
What it enables
No downstream modules declared yet.
Relationships
Standalone โ no declared relationships.
Tom Core Bridge
Extended VS Code bridge server with the full Tom Framework D4rt bridge set.
Overview
This project provides an alternative bridge server binary (core_bs) for the VS Code extension. The base
tom_bs (from tom_vscode_bridge) ships only the DCli and VS Code API bridges;
core_bs is the same bridge server plus the complete Tom Framework bridge set registered by
tom_core_d4rt (TomDartscriptBridges.register):
- tom_basics โ basic utilities, logging, platform detection
- tom_reflection โ reflection support
- tom_core_kernel โ core framework types
- tom_core_server โ server-side components
- tom_build โ build-system APIs
- tom_dist_ledger โ distributed ledger
- tom_process_monitor โ process monitoring
- tom_doc_scanner โ markdown document scanning
- tom_doc_specs โ document-spec validation
- tom_md2latex โ markdown โ LaTeX conversion
- tom_md2pdf โ markdown โ PDF conversion
The bridged surfaces are documented per module in tom_core_d4rt/doc/.
Architecture
The binary is a thin entry point: it starts the tom_vscode_bridge server and passes TomDartscriptBridges.register
as an additional bridge registrar.
tom_core_bridge (bin/core_bs.dart)
โโโ tom_vscode_bridge โ base bridge server + VS Code API bridges
โ โโโ tom_d4rt_dcli โ DCli bridges
โ โโโ tom_vscode_scripting_api โ VS Code API wrappers
โโโ tom_core_d4rt โ Tom Framework bridges (TomDartscriptBridges)
โโโ tom_basics โโโ tom_dist_ledger โโโ tom_doc_specs
โโโ tom_reflection โโโ tom_process_monitor โโโ tom_md2latex
โโโ tom_core_kernel โโโ tom_doc_scanner โโโ tom_md2pdf
โโโ tom_core_server
โโโ tom_build
// bin/core_bs.dart โ the whole entry point
void main() {
VSCodeBridgeServer(
additionalBridgeRegistrars: [TomDartscriptBridges.register],
).start();
}
It is launched by the VS Code extension and communicates over stdin/stdout using a JSON-RPC-like protocol.
Build
The binary is compiled ahead-of-time and published into the workspace binary tree ($TOM_BINARY_PATH/<platform-vs>/core_bs). The build is driven by
buildkit.yaml (a versioner step that regenerates
lib/src/version.versioner.dart, then per-platform dart compile exe pipelines that also cross-compile the Linux targets from macOS ARM64).
# Via the workspace build tool (regenerates the versioner, then compiles):
tom build tom_core_bridge
# Or compile the entry point directly for the current platform:
dart compile exe bin/core_bs.dart -o core_bs
> Note: core_bs links the generated tom_core_d4rt bridge set, so its > compilation currently shares the blockers tracked in the
tom_core_d4rt > refactoring plan (the tom_d4rt_generator B3/B4 codegen defects in the >
tom_core_server / tom_dist_ledger bridges, and a tom_d4rt version > alignment โ run
dart pub get here after upgrading tom_core_d4rt). The > source entry point itself is trivial; the binary builds once those upstream > issues are resolved. See
tom_core_d4rt/CHANGELOG.md "Known issues".
VS Code registration
The extension launches a bridge process whose command and arguments come from its bridge-profile configuration (DartBridgeClient). When no explicit command is configured it falls back to
dart run bin/tom_bs.dart. To run the extended server instead, point the bridge command/args at
core_bs:
- Compiled binary โ set the bridge command to the published
core_bs executable ($TOM_BINARY_PATH/<platform-vs>/core_bs), no args. -
From source โ set the command to dart with args ['run', '<path>/tom_core_bridge/bin/core_bs.dart'].
Once registered, every D4rt script run through the VS Code bridge has the full Tom Framework bridge set available in addition to the DCli and VS Code APIs.
Operations
For the full operational runbook โ build pipeline and artifact locations, the bridge-profile configuration shape, switching profiles, and a troubleshooting table for failed launches โ see
doc/operations.md.
License
Proprietary and confidential โ see LICENSE.
License
Copyright (c) 2024-2026 Peter Nicolai Alexis Kyaw. All rights reserved. This code is proprietary and confidential. Unauthorized copying, modification, distribution, or use of this software, via any medium, is strictly prohibited. For licensing inquiries, find me on LinkedIn under "Alexis Kyaw".