How it fits together
MeshWeaver treats AI agents as first-class participants in the mesh, not as a bolt-on layer. An agent reads and writes nodes through the same access-controlled message APIs that a human user does. This means business rules, permissions, and audit trails apply uniformly — the mesh doesn't know or care whether a request came from a browser or a language model.
Three ideas anchor the design:
- Agents are data. Agent definitions are versioned MeshNodes, editable without code changes.
- Tools are composable. The MeshPlugin gives every agent a small, orthogonal toolset for reading, writing, and navigating the mesh.
- Models are swappable. Provider configuration and model selection are separated from agent logic, so you can tune one without touching the other.
AI agents and human users share the same access-controlled message API — the mesh treats them identically.
MeshPlugin tools
The MeshPlugin gives AI agents a small, composable toolset to work with the mesh:
| Tool | Purpose |
|---|---|
| Get | Retrieve nodes by path (@path, @path/* for children, @path/schema/ for schemas) |
| Search | Query nodes using GitHub-style syntax |
| Create | Create new nodes with validated MeshNode JSON |
| Update | Update existing nodes (Get → modify → Update) |
| Delete | Delete nodes by path |
| NavigateTo | Display a node's visual representation instead of raw JSON |
Get understands Unified Path prefixes — @path/schema/ for the content's JSON Schema, @path/model/ for the full data model. See MeshPlugin Tools for the full reference.
Agents are data
Agents are markdown MeshNodes with nodeType: Agent, so they are versioned alongside your data and updated without code changes:
---
nodeType: Agent
name: Todo Agent
description: Manages tasks for ACME projects
icon: TaskListSquare
isDefault: true
---
Instructions for the agent...
Because agents go through the standard message interfaces, they are context-aware (they query the mesh for the current namespace, team, and schemas) and subject to the same access control as any user.
Selecting agents and models in chat
Use unified reference syntax to steer a conversation:
@agent/Documentation select an agent
@model/claude-haiku-4-5 select a model
@agent/RiskImportAgent import Microsoft.xlsx combine selection with a prompt
Slash skills work too: /agent <name>, /model <name>, /harness <name>.
Explore further
| Topic | What you'll learn |
|---|---|
| Agentic AI | Philosophy, delegation vs handoff, human-agent collaboration patterns |
| Designing agents | Cost model, round semantics, the two-phase extract-then-write protocol, hard vs. soft enforcement |
| MeshPlugin Tools | Full tool reference with call shapes and path syntax |
| Execute Script | How agents run C# scripts inside the mesh kernel |
| MCP Authentication | OAuth flow for external MCP clients connecting to MeshWeaver |
| Provider Configuration | Endpoints, keys, model tiers, and how to add a new provider |
| Model Provider Settings | Per-user and per-agent model selection in the Settings UI |