Status: Early refocus of a MedWNetworkSim-derived codebase into an agent-first behaviour simulation product. The technical rename from
MedWNetworkSimtoAgentshas not been completed yet.
Agents / Agent Behaviour Studio is intended to be a desktop studio for exploring how autonomous and semi-autonomous agents behave in graph-based worlds. Environments are represented as networks of nodes, edges, routes, capacities, costs, and constraints. Agents carry state, objectives, constraints, local knowledge, and decision policies. Movement, congestion, utilisation, backlog, and unmet demand are interpreted as emergent behaviour outcomes rather than only as static network-flow metrics.
The product direction is to help model and inspect behaviour in constrained environments, including:
- how agents choose paths through graph-based worlds;
- how local knowledge and policy constraints affect decisions;
- how bottlenecks, capacity limits, closures, and demand spikes shape movement;
- how utilisation, backlog, unmet demand, and congestion emerge over time;
- how scenario changes alter agent outcomes and system-level behaviour.
This pass keeps the repository stable for future agent-behaviour work. It does not attempt a broad product refactor.
The repository currently builds around the existing MedWNetworkSim technical structure while the product narrative is being refocused toward Agents.
Important current facts:
- Active solution:
MedWNetworkSim.slnx. - Active desktop app:
src/MedWNetworkSim.App.Avalonia. - Shared projects:
MedWNetworkSim.UI,MedWNetworkSim.Presentation,MedWNetworkSim.Interaction, andMedWNetworkSim.Rendering. - Tests:
tests/MedWNetworkSim.Tests. - Legacy files under
src/MedWNetworkSim.Appmay still be linked into the presentation layer. - Namespaces, project names, solution names, and many UI strings still use
MedWNetworkSim.
Technical renaming from MedWNetworkSim to Agents should be handled later in a focused, build-safe sequence.
This repository is derived from the design and implementation work in:
- MedWNetworkSim — https://github.com/wnj00524/MedWNetworkSim
Retain this attribution while the codebase remains derived from that upstream project.
Do not describe this repository as open source unless and until an explicit license is added by authorized maintainers.
.
├── MedWNetworkSim.slnx
├── Directory.Build.props
├── Directory.Build.targets
├── docs/
├── examples/
├── src/
│ ├── MedWNetworkSim.App/
│ ├── MedWNetworkSim.App.Avalonia/
│ ├── MedWNetworkSim.App.Verification/
│ ├── MedWNetworkSim.Avalonia.Verification/
│ ├── MedWNetworkSim.Interaction/
│ ├── MedWNetworkSim.Presentation/
│ ├── MedWNetworkSim.Rendering/
│ └── MedWNetworkSim.UI/
└── tests/
└── MedWNetworkSim.Tests/
Project roles:
| Project | Current role |
|---|---|
src/MedWNetworkSim.App.Avalonia |
Primary Avalonia desktop application entry point. |
src/MedWNetworkSim.UI |
Avalonia shell, views, controls, dashboard theme, and dialogs. |
src/MedWNetworkSim.Presentation |
Presentation and view-model layer. Links selected legacy source files from src/MedWNetworkSim.App. |
src/MedWNetworkSim.Interaction |
Graph interaction and hit-testing support. |
src/MedWNetworkSim.Rendering |
Rendering library using SkiaSharp. |
src/MedWNetworkSim.App |
Legacy/domain source tree that still contains models, services, agents, import, insights, visual analytics, and geospatial code. |
tests/MedWNetworkSim.Tests |
xUnit test suite for simulation, presentation, UI, and supporting services. |
- .NET 8
- C# with nullable reference types and implicit usings
- Avalonia 11.x for desktop UI
- SkiaSharp for rendering
- OsmSharp for OSM-related import/projection support
- Microsoft.Extensions.DependencyInjection
- xUnit for tests
Install a .NET 8 SDK, then run from the repository root:
dotnet restore MedWNetworkSim.slnx
dotnet build MedWNetworkSim.slnxRun the Avalonia desktop app from the repository root:
dotnet run --project src/MedWNetworkSim.App.Avalonia/MedWNetworkSim.App.Avalonia.csprojTechnical project names still use MedWNetworkSim, but the visible app copy is being refocused toward Agents / Agent Behaviour Studio.
Run the solution-level test command:
dotnet test MedWNetworkSim.slnxIf solution-level test execution is blocked by solution or project configuration, run the test project directly:
dotnet test tests/MedWNetworkSim.Tests/MedWNetworkSim.Tests.csproj- Keep changes build-safe and incremental until the baseline is reliable.
- Do not rename the solution, projects, namespaces, or test assemblies opportunistically.
- Preserve existing tests while refocusing terminology and user-facing concepts.
- Treat
src/MedWNetworkSim.Appas a legacy source tree until linked-file dependencies are untangled. - Avoid committing generated logs, binary logs, patch scratch files,
bin/,obj/, orTestResults/output. - Keep licensing risk visible in docs and release planning.
- Maintain the current restore/build/test baseline.
- Audit remaining
MedWNetworkSimnaming in projects, namespaces, docs, and UI copy. - Separate linked legacy files from the presentation layer where practical.
- Introduce agent-first terminology in UI surfaces without breaking existing model behaviour.
- Plan a focused technical rename only after project boundaries and tests are stable.