Skip to main content

harn_vm/
lib.rs

1#![allow(clippy::result_large_err, clippy::cloned_ref_to_slice_refs)]
2
3pub mod bridge;
4pub mod checkpoint;
5mod chunk;
6mod compiler;
7mod http;
8pub mod llm;
9pub mod llm_config;
10pub mod mcp;
11pub mod mcp_server;
12pub mod metadata;
13pub mod stdlib;
14pub mod stdlib_modules;
15pub mod store;
16pub mod tracing;
17pub mod value;
18mod vm;
19
20pub use checkpoint::register_checkpoint_builtins;
21pub use chunk::*;
22pub use compiler::*;
23pub use http::{register_http_builtins, reset_http_state};
24pub use llm::register_llm_builtins;
25pub use mcp::{connect_mcp_server, register_mcp_builtins};
26pub use mcp_server::{
27    take_mcp_serve_prompts, take_mcp_serve_registry, take_mcp_serve_resource_templates,
28    take_mcp_serve_resources, tool_registry_to_mcp_tools, McpServer,
29};
30pub use metadata::{register_metadata_builtins, register_scan_builtins};
31pub use stdlib::{
32    register_agent_stdlib, register_core_stdlib, register_io_stdlib, register_vm_stdlib,
33};
34pub use store::register_store_builtins;
35pub use value::*;
36pub use vm::*;
37
38/// Reset all thread-local state that can leak between test runs.
39/// Call this before each test execution for proper isolation.
40pub fn reset_thread_local_state() {
41    llm::reset_llm_state();
42    http::reset_http_state();
43    stdlib::reset_stdlib_state();
44}