Skip to content
DotBoxD
Search
Ctrl
K
Cancel
GitHub
NuGet
Select theme
Dark
Light
Auto
Start here
What is DotBoxD?
Why DotBoxD?
Getting started
Tutorials & walkthroughs
Pick your journey
1 · Call — first Service (RPC)
2 · React — event pipelines
3 · Extend — Pushdown
Advanced · Hand-written IR
Concepts
The three modes
Services (RPC)
Event pipelines
Pushdown
The sandbox
Kernels
Host bindings
Kernel runtime (advanced)
Determinism (advanced)
The wire
Channels & transports
Examples
Overview
GameServer walkthrough
Coverage gaps
Project templates
RPC & transports (deep dive)
RPC quick start
API reference
Named-pipe transport
WebSocket setup
Unity integration
Performance
Security
Sandbox caveats
Security policy
Reference
Glossary
Diagnostics (DBXS / DBXK)
Consumer testing kit
Schemas
Specifications
Contributing
Migration from standalone repos
API reference
Overview
DotBoxD
Namespace overview
DotBoxD.Abstractions
Namespace overview
CapabilityAttribute
GeneratePluginRegistrationAccumulatorAttribute
GeneratePluginRegistrationRootAccumulatorAttribute
GeneratePluginServerAttribute
GeneratedKernelMethodDescriptorAttribute
GeneratedPluginServerRegistryAttribute
HandleSubtypeAttribute
HookAttribute
HookContext
HookResultAttribute
HostBindingAttribute
HostBindingIgnoreAttribute
HostBindingObjectAttribute
HostCapabilityAttribute
IRBodyOfAttribute
IRExpressionBuilder
IRFunc<TInput, TContext, TOutput>
IRFunc<TInput, TOutput>
IRInvocation<TCaptures, TDelegate, TReturn>
IRInvocation<TDelegate, TReturn>
InMemoryPluginMessageSink
KernelMethodAttribute
LiveSettingAttribute
LowerToIrAttribute
LowerToIrMethodAttribute
LoweredPipelineComposer
LoweredPipelineComposition
LoweredPipelineStep
NativeOnlyAttribute
PipelineSurfaceAttribute
PluginAttribute
PluginMessage
PolymorphicHandleAttribute
ServerExtensionAttribute
ServerExtensionClientAttribute
ServerExtensionMethodAttribute
IEventKernel<TEvent>
IExtensibleControl
IHookResult
ILiveSettingsHandle<TKernel>
IPluginEventAdapter<TEvent>
IPluginEventValueWriter<TEvent>
IPluginMessageSink
IPluginServer<TWorld>
IServerExtensionClientAccessor
IServerExtensionClientRegistry
IServerExtensionWireClient
IServiceControl
GeneratedPluginServerRegistryKind
HostBindingEffect
LoweredIrMethodKind
LoweredPipelineStepKind
PipelineTransport
RemoteServerInvocation<TWorld, TCaptures, TReturn>
DotBoxD.Codecs
Namespace overview
DotBoxD.Codecs.MessagePack
Namespace overview
MessagePackRpcSerializer
DotBoxD.Hosting
Namespace overview
SandboxHostWorkerClient
SandboxWorkerProfile
ISandboxWorkerClient
DotBoxD.Hosting.Diagnostics
Namespace overview
SandboxTelemetry
DotBoxD.Hosting.Execution
Namespace overview
ExecutionModeDecision
HostServiceBindingExtensions
HotnessExecutionModeSelector
ModuleHotnessStats
SandboxHost
SandboxHostBuilder
IExecutionModeSelector
DotBoxD.Hosting.Http
Namespace overview
SafeHttpClient
SafeInMemoryHttpMessageInvoker
SafeDnsResolver
DotBoxD.Hosting.Http.Bindings
Namespace overview
SafeHttpBindingExtensions
DotBoxD.Hosting.Http.Hosting
Namespace overview
SafeHttpHostBuilderExtensions
DotBoxD.Hosting.Http.Internal
Namespace overview
SafeHttpBindingExtensions
SafeHttpBindings
SafeHttpHostBuilderExtensions
SafeHttpPolicyBuilderExtensions
DotBoxD.Hosting.Http.Policy
Namespace overview
SafeHttpPolicyBuilderExtensions
DotBoxD.Kernels
Namespace overview
AssignmentStatement
BinaryExpression
BreakStatement
CallExpression
CapabilityGrant
CapabilityRequest
ContinueStatement
ExecutionPlan
ExecutionPlanSeal
Expression
ExpressionStatement
ForRangeStatement
FunctionAnalysis
IfStatement
LiteralExpression
Parameter
ReturnStatement
RuntimeCapabilityIds
SandboxExecutionOptions
SandboxExecutionResult
SandboxFunction
SandboxModule
SandboxPolicy
Statement
UnaryExpression
VariableExpression
WhileStatement
ExecutionMode
SandboxIsolation
DotBoxD.Kernels.Bindings
Namespace overview
BindingAuditFields
BindingAuditKinds
BindingCostModel
BindingDescriptor
BindingReferenceCollector
BindingRegistry
BindingRegistryBuilder
BindingSignature
CompiledBinding
InMemoryAuditSink
SandboxAuditEvent
SandboxRunId
IAuditSink
IBindingCatalog
AuditLevel
BindingSafety
BindingAuditResourceValidator
BindingInvoker
CapabilityGrantValidator
DotBoxD.Kernels.Compiler
Namespace overview
CacheKeyBuilder
CompileOptions
CompiledArtifact
CompiledCacheLookup
PersistentCompiledArtifactCache
ISandboxCompiler
CompiledCacheStatus
CompiledRuntimeFormKind
SandboxCompiledEntrypoint
DotBoxD.Kernels.Compiler.Emitters
Namespace overview
ReflectionEmitSandboxCompiler
DotBoxD.Kernels.Interpreter
Namespace overview
SandboxInterpreter
ISandboxInterpreter
DotBoxD.Kernels.Model
Namespace overview
CanonicalModuleHasher
EntrypointBinder
ResourceLimitValidation
ResourceLimits
ResourceMeter
RunSummaryAuditFields
SandboxDiagnostic
SandboxRuntimeException
SandboxValidationException
SemVersion
ShortCircuitExpressionOrder
SourceSpan
ShortCircuitOperands
DiagnosticSeverity
DotBoxD.Kernels.Policies
Namespace overview
CapabilityPattern
SandboxPolicyBuilder
DotBoxD.Kernels.Runtime
Namespace overview
AuditTextSanitizer
DotBoxD.Kernels.Runtime.Bindings
Namespace overview
DefaultSandboxBindings
MathBindings
SafeFileBindings
SafeFileSystem
SafeLogBindings
SafeRandomBindings
SafeTimeBindings
StringBindings
DotBoxD.Kernels.Runtime.Bindings.FileSystem
Namespace overview
SafeFileSystem
DotBoxD.Kernels.Sandbox
Namespace overview
BoolValue
F64Value
GuidValue
I32Value
I64Value
OpaqueIdValue
RecordValue
SandboxCollectionFuel
SandboxContext
SandboxDescriptorGuards
SandboxEffects
SandboxError
SandboxFloat64Math
SandboxInt32Math
SandboxInt64Math
SandboxLanguage
SandboxLiteralConstraints
SandboxNumericOperations
SandboxPath
SandboxPathValue
SandboxResourceUsage
SandboxType
SandboxUri
SandboxUriValue
SandboxValue
SandboxValueValidator
StringValue
UnitValue
SandboxEffect
SandboxErrorCode
DotBoxD.Kernels.Sandbox.Values
Namespace overview
ListValue
MapValue
DotBoxD.Kernels.Serialization
Namespace overview
DotBoxD.Kernels.Serialization.Json
Namespace overview
JsonExporter
JsonImporter
DotBoxD.Kernels.Serialization.Json.Hosting
Namespace overview
SandboxHostJsonExtensions
DotBoxD.Kernels.Serialization.Json.Schema
Namespace overview
JsonSchemas
DotBoxD.Kernels.Validation
Namespace overview
ModuleValidator
DotBoxD.Kernels.Validation.Model
Namespace overview
ModuleValidationResult
DotBoxD.Kernels.Verifier
Namespace overview
VerificationPolicy
DotBoxD.Kernels.Verifier.Diagnostics
Namespace overview
VerifierDiagnosticCodes
VerifierDiagnosticReference
VerifierDiagnosticCategory
DotBoxD.Kernels.Verifier.Generated
Namespace overview
ArtifactManifest
GeneratedAssemblyVerifier
VerificationDiagnostic
VerificationManifestIdentity
VerificationResult
IGeneratedAssemblyVerifier
DotBoxD.Plugins
Namespace overview
HookSubscriptionManifest
IRBuilder
IRBuilder<TInput>
IRKernel
IndexedPredicate
KernelEntrypoints
KernelRegistry
KernelRpcBinaryCodec
KernelRpcValueConverter
LiveSettingDefinition
PluginManifest
PluginPackage
PluginServer
PluginSession
WireOptions
KernelRpcValue
KernelWireTerminal
WireCallbacks
WireResult
IServerExtensionClientRegistry
IServerExtensionWireClient
IndexPredicateOperator
KernelRpcValueKind
KernelWireKind
DotBoxD.Plugins.Indexing
Namespace overview
EventIndexKeyAttribute
EventIndexMatcher<TEvent>
EventIndexRegistry
EventIndexStats
DotBoxD.Plugins.Json
Namespace overview
PluginPackageJsonSchemas
PluginPackageJsonSerializer
PluginServerJsonExtensions
DotBoxD.Plugins.Kernel
Namespace overview
InstalledKernel
InstalledKernelPool
KernelPackageRegistry
DotBoxD.Plugins.Policies
Namespace overview
HostMessagePolicyBuilderExtensions
DotBoxD.Plugins.Runtime
Namespace overview
HookPipeline<TEvent, TContext>
HookRegistry
LiveContext<T>
LiveSettingStore
LiveValue<T>
PluginEventAdapterRegistry
PluginExecutionObservation
PluginMessageBindings
RemoteHookPipeline<TEvent, TContext>
RemoteHookPipeline<TEvent>
RemoteHookRegistry
RemoteSubscriptionPipeline<TEvent, TContext>
RemoteSubscriptionPipeline<TEvent>
RemoteSubscriptionRegistry
ResultHookDispatchOptions<TResult>
ResultHookFault
SubscriptionDeliveryFault
SubscriptionPipeline<TEvent, TContext>
SubscriptionRegistry
TypedInstalledKernel<TSettings>
IErasedPluginEventAdapter
ILiveSetting
SubscriptionDeliveryStage
DotBoxD.Plugins.Runtime.Diagnostics
Namespace overview
PluginDiagnosticCodes
PluginDiagnosticReference
PluginDiagnosticAudience
PluginDiagnosticPhase
DotBoxD.Plugins.Runtime.Hooks
Namespace overview
HookStage<TEvent, TCurrent, TContext>
RemoteHookStage<TEvent, TCurrent, TContext>
RemoteHookStage<TEvent, TCurrent>
RemoteLocalHandlerRegistry
RemoteLocalPush
RemoteLocalResultRequest
DotBoxD.Plugins.Runtime.Lifecycle
Namespace overview
LiveUpdateMode
DotBoxD.Plugins.Runtime.Rpc
Namespace overview
KernelRpcMarshaller
ServerExtensionProxy
DotBoxD.Plugins.Runtime.Subscriptions
Namespace overview
RemoteSubscriptionStage<TEvent, TCurrent, TContext>
RemoteSubscriptionStage<TEvent, TCurrent>
SubscriptionStage<TEvent, TCurrent, TContext>
DotBoxD.Pushdown
Namespace overview
DotBoxD.Pushdown.Services
Namespace overview
NamedPipeTransportOptions
PluginConnectionHost<TConnection>
RpcMessagePackIpc
DotBoxD.Services
Namespace overview
DotBoxD.Services.Attributes
Namespace overview
RpcMethodAttribute
RpcServiceAttribute
DotBoxD.Services.Buffers
Namespace overview
Payload
PooledBufferWriter
DotBoxD.Services.Diagnostics
Namespace overview
RpcDiagnosticErrorEventArgs
RpcDiagnostics
RpcDisconnectedEventArgs
RpcDispatchErrorEventArgs
RpcErrorTypes
RpcHostErrorEventArgs
RpcPeerEventArgs
RpcProtocolErrorEventArgs
RpcReadErrorEventArgs
RpcTelemetry
RpcErrorInfo
DotBoxD.Services.Exceptions
Namespace overview
RemoteServiceException
ServiceConnectionException
ServiceException
ServiceNotFoundException
ServiceProtocolException
ServiceTimeoutException
ServiceNotFoundException.NotFoundKind
DotBoxD.Services.Generated
Namespace overview
GeneratedServiceRegistry
RpcContractChange
RpcContractManifest
RpcContractMethod
RpcContractService
GeneratedMethod
GeneratedParameter
GeneratedService
IRpcGeneratedServiceRegistrationSink
IRpcServiceRegistrationSink
GeneratedReturnKind
RpcContractChangeKind
DotBoxD.Services.Peer
Namespace overview
RpcPeer
RpcPeerOptions
RpcPeerSession
DotBoxD.Services.Protocol
Namespace overview
MessageFramer
MessageFramer.FramedMessage
RpcRequest
RpcResponse
RpcStreamHandle
ServiceHandle
MessageType
RpcStreamKind
DotBoxD.Services.Serialization
Namespace overview
SerializerExtensions
ISerializer
DotBoxD.Services.Server
Namespace overview
InstanceRegistry
RpcHost
IInstanceRegistry
INonStreamingServiceDispatcher
IRpcInvoker
IServiceDispatcher
DotBoxD.Services.Streaming
Namespace overview
DotBoxD.Services.Streaming.Frames
Namespace overview
RpcStreamAttachment
DotBoxD.Services.Streaming.Remote
Namespace overview
RpcStreamingContext
IRpcStreamingContext
DotBoxD.Services.Testing
Namespace overview
FaultInjectingRpcChannel
InMemoryRpcChannel
RpcChannelOperation
DotBoxD.Services.Transport
Namespace overview
RpcTransportExtensions
SingleConnectionServerTransport
SingleConnectionTransport
StreamConnection
RpcFrame
IRpcChannel
IRpcFrameChannel
IRpcValueTaskChannel
IServerTransport
ITransport
QueueFullMode
DotBoxD.Transports
Namespace overview
DotBoxD.Transports.NamedPipes
Namespace overview
NamedPipeClientTransport
NamedPipeServerTransport
DotBoxD.Transports.Tcp
Namespace overview
TcpConnection
TcpServerTransport
TcpTransport
GitHub
NuGet
Select theme
Dark
Light
Auto
Namespace DotBoxD.Kernels.Interpreter
Classes
Section titled “Classes”
SandboxInterpreter
Interfaces
Section titled “Interfaces”
ISandboxInterpreter