Entry point for AI agents working on Aardvark.Algodat.
| Command | Purpose |
|---|---|
dotnet tool restore |
Restore local .NET tools |
dotnet paket restore |
Restore Paket dependencies |
./build.sh or .\build.cmd |
Build entire solution (includes tool + paket restore) |
.\build.cmd restore |
Restore only (skip build) |
dotnet test src/Aardvark.Algodat.Tests |
Run tests |
dotnet paket add <package> |
Add Paket dependency |
dotnet paket update |
Update Paket dependencies |
- Required version: .NET 8.0.0 (see
global.json) - Rollforward policy:
latestFeature - Prerelease: Disabled
- Build targets:
net8.0
| Rule | Pattern | Example |
|---|---|---|
| Compatible versions | ~> X.Y.Z |
~> 5.266.0 |
| Exact lowest | >= X.Y.Z lowest_matching: true |
>= 8.0.0 |
| Framework | framework: auto-detect |
auto-detect |
| Storage | storage: none |
no local storage |
Critical rules:
- NEVER manually edit
.csprojor.fsprojpackage references - ALWAYS use
dotnet paket add <package>to add dependencies - ALWAYS run
dotnet paket restoreafter modifyingpaket.dependencies - Test dependencies go in
group Testsection withframework: net8.0
Main solution: src/Aardvark.Algodat.sln (25 projects)
| Category | Projects |
|---|---|
| Point Cloud | Aardvark.Geometry.PointSet, PointTree, Data.Points.Base, Data.Points.Ascii, Data.Points.LasZip, Data.Points.Ply |
| Geometry | Aardvark.Geometry.BspTree, Clustering, Intersection, Normals, PolyMesh |
| Importers | Aardvark.Data.E57, Ply.Net, Unofficial.laszip.netstandard |
| Physics/Geodetics | Aardvark.Physics.Sky, Aardvark.Geodetics (F#) |
| Rendering | Aardvark.Rendering.PointSet (F#) |
| Applications | Apps/Viewer (F#), HeraViewer (F#), heracli (F#), Scratch (C#), ScratchFSharp (F#), ImportTest, Geodetics (F#) |
| Tests | Aardvark.Algodat.Tests |
| Build/Import | import |
| Permission | Files |
|---|---|
| OWN (may modify) | AGENTS.md, task-specific files |
| READ (context only) | All repository files |
| NO MODIFY (without permission) | global.json, paket.dependencies, *.sln, build.sh, build.cmd, src/ (except task-specific), .github/workflows/ |
| Error | Symptom | Fix |
|---|---|---|
| Paket not restored | "Paket is not restored" | dotnet paket restore |
| SDK version | "SDK version not found" | Install .NET 8.0 SDK or verify global.json |
| Tool restore | ".NET tool restore failed" | dotnet tool restore before paket restore |
| Project reference | "Project reference not found" | Verify with dotnet sln src/Aardvark.Algodat.sln list |
| Version conflicts | Paket dependency conflicts | dotnet paket why <package> to trace chains |
- Languages: 18 C# projects + 7 F# projects
- Design: Out-of-core (supports datasets larger than RAM)
- Platforms: Windows, Linux, macOS
- Test runner:
dotnet test(notest.sh/test.cmd) - Default config: Release builds
- Import:
import.cmdfor data workflows (separate from build)
Production-quality data structures and algorithms for:
- Out-of-core point cloud management
- N-closest point queries
- Mesh intersection tests
- Point cloud import (E57, LasZip, PLY)
- Sky models and astronomical calculations
Part of Aardvark Platform for visual computing and real-time graphics.
For detailed AI agent documentation, see ai/README.md.
Last updated: 2025-12-21