Meshmakers.Octo.MeshAdapter.Nodes
3.5.13
See the version list below for details.
dotnet add package Meshmakers.Octo.MeshAdapter.Nodes --version 3.5.13
NuGet\Install-Package Meshmakers.Octo.MeshAdapter.Nodes -Version 3.5.13
<PackageReference Include="Meshmakers.Octo.MeshAdapter.Nodes" Version="3.5.13" />
<PackageVersion Include="Meshmakers.Octo.MeshAdapter.Nodes" Version="3.5.13" />
<PackageReference Include="Meshmakers.Octo.MeshAdapter.Nodes" />
paket add Meshmakers.Octo.MeshAdapter.Nodes --version 3.5.13
#r "nuget: Meshmakers.Octo.MeshAdapter.Nodes, 3.5.13"
#:package Meshmakers.Octo.MeshAdapter.Nodes@3.5.13
#addin nuget:?package=Meshmakers.Octo.MeshAdapter.Nodes&version=3.5.13
#tool nuget:?package=Meshmakers.Octo.MeshAdapter.Nodes&version=3.5.13
Octo Mesh Adapter
An ETL (Extract-Transform-Load) pipeline execution engine that manages and executes mesh pipelines. Built on .NET 10.0 with a flexible, node-based architecture for creating data processing workflows.
Features
- Data Extraction: Retrieve entities from MongoDB, execute queries, enrich data from external sources
- Data Transformation: Map values, process documents (Excel, PDF with OCR), integrate AI services
- Data Loading: Persist changes to MongoDB, store time-series data in CrateDB, send email notifications
- Event-Driven Triggers: HTTP endpoints, entity watchers, command bus, email reception
Quick Start
Prerequisites
- .NET 10.0 SDK
- MongoDB
- CrateDB (optional, for time-series data)
Build
# Build the solution
dotnet build
# Build in Release mode
dotnet build -c Release
# Build in DebugL mode (uses local NuGet packages from ../nuget)
dotnet build -c DebugL
Run
dotnet run --project src/MeshAdapter/MeshAdapter.csproj
Project Structure
octo-mesh-adapter/
├── src/
│ ├── MeshAdapter/ # Main executable service
│ ├── MeshAdapter.Sdk/ # SDK with pipeline nodes and services
│ └── MeshNodes.Sdk/ # Node configuration definitions
├── tests/ # Unit tests
└── docs/ # Documentation
Pipeline Nodes
The adapter provides four categories of pipeline nodes:
| Category | Purpose | Examples |
|---|---|---|
| Extract | Data retrieval | GetRtEntitiesById, GetRtEntitiesByType, GetAssociationTargets |
| Transform | Data processing | DataMapping, MakeHttpRequest, PdfOcrExtraction, AnthropicAiQuery |
| Load | Data persistence | ApplyChanges, SaveStreamDataInArchive, EMailSender |
| Trigger | Pipeline initiation | FromHttpRequest, FromWatchRtEntity, FromEmail |
Documentation
- Developer Guide - Architecture, nodes, services, and configuration
- Test Concept - Unit and integration testing strategy
- Integration Test Concept - Testcontainers-based integration testing
- PDF OCR Extraction - PDF text extraction with IronOCR
Examples
- Email Trigger - Configure email-triggered pipelines
- Binary Upload - HTTP binary file upload handling
API reference
scripts/createDocumentation.ps1 generates the published API reference from the XML documentation
of Meshmakers.Octo.MeshAdapter.Nodes and uploads it as a build artifact. The MeshAdapter host
executable is deliberately not documented: it exposes no public API of its own, only the Program
class the compiler generates for top-level statement apps.
Helm chart: SECRET attribute key ring (AB#5536)
The runtime engine binds SecretEncryption:Keys:<kid>, SecretEncryption:ActiveKeyId and
SecretEncryption:LegacyV1Key (concept octo-construction-kit-engine/docs/concept-secret-attribute-type.md
§3.5). The chart in src/charts/octo-mesh-adapter renders them from
secrets.secretEncryption.{keys,activeKeyId,legacyV1Key} as OCTO_SECRETENCRYPTION__KEYS__<kid>,
OCTO_SECRETENCRYPTION__ACTIVEKEYID and OCTO_SECRETENCRYPTION__LEGACYV1KEY (inside
octo-mesh.system-env).
- The communication operator supplies them for
ReceivesClusterSecrets=trueworkloads: keys and the legacy key asvalueFrommaps into{release}-octo-secrets, the active key id as a plain string. - Optional: nothing is rendered when unset, the adapter starts, and only SECRET attribute access fails.
- The key id keeps its case in the variable name (lowercase, validated) because it is the id in the
enc:v2:<kid>:header. - An empty
activeKeyIdwith exactly one key selects that key; with several keys it fails the render.
License
Proprietary - Meshmakers
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Meshmakers.Octo.Sdk.Common (>= 3.5.13)
- Meshmakers.Octo.Sdk.Pipeline (>= 3.5.13)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Meshmakers.Octo.MeshAdapter.Nodes:
| Package | Downloads |
|---|---|
|
Meshmakers.Octo.Sdk.MeshAdapter
Mesh adapter SDK to create custom mesh adapters |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.5.43 | 41 | 10/24/2026 |
| 3.5.40 | 75 | 10/22/2026 |
| 3.5.39 | 92 | 10/22/2026 |
| 3.5.38 | 90 | 10/21/2026 |
| 3.5.36 | 103 | 10/20/2026 |
| 3.5.35 | 116 | 10/19/2026 |
| 3.5.34 | 113 | 10/19/2026 |
| 3.5.33 | 125 | 10/19/2026 |
| 3.5.32 | 117 | 10/19/2026 |
| 3.5.30 | 126 | 10/18/2026 |
| 3.5.27 | 108 | 10/17/2026 |
| 3.5.24 | 123 | 10/16/2026 |
| 3.5.23 | 121 | 10/15/2026 |
| 3.5.20 | 115 | 10/13/2026 |
| 3.5.19 | 119 | 10/13/2026 |
| 3.5.18 | 114 | 10/13/2026 |
| 3.5.17 | 108 | 10/12/2026 |
| 3.5.16 | 114 | 10/12/2026 |
| 3.5.15 | 111 | 10/12/2026 |
| 3.5.13 | 122 | 10/11/2026 |