FoundationaLLM.Client.Management 0.9.7-rc304

This is a prerelease version of FoundationaLLM.Client.Management.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package FoundationaLLM.Client.Management --version 0.9.7-rc304
                    
NuGet\Install-Package FoundationaLLM.Client.Management -Version 0.9.7-rc304
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FoundationaLLM.Client.Management" Version="0.9.7-rc304" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FoundationaLLM.Client.Management" Version="0.9.7-rc304" />
                    
Directory.Packages.props
<PackageReference Include="FoundationaLLM.Client.Management" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add FoundationaLLM.Client.Management --version 0.9.7-rc304
                    
#r "nuget: FoundationaLLM.Client.Management, 0.9.7-rc304"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package FoundationaLLM.Client.Management@0.9.7-rc304
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=FoundationaLLM.Client.Management&version=0.9.7-rc304&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=FoundationaLLM.Client.Management&version=0.9.7-rc304&prerelease
                    
Install as a Cake Tool

FoundationaLLM Management Client

The FoundationaLLM Management Client is a .NET client library that simplifies the process of interacting with the FoundationaLLM Management API. The client library provides a set of classes and methods that allow you to interact with the FoundationaLLM Management API in a more intuitive way.

This library contains two primary classes:

  • ManagementRESTClient: A class that provides a set of methods for interacting with the FoundationaLLM Management API using REST. This is considered the low-level client and provides direct access to all Management API endpoints.
  • ManagementClient: A class that provides a set of methods for interacting with the FoundationaLLM Management API using a higher-level abstraction. This class is designed to simplify the process of interacting with the Management API by providing a more intuitive interface. It does not contain all the methods available in the ManagementRESTClient class, but it provides a more user-friendly way to interact with the Management API.

These two classes are mutually exclusive, and you should choose one based on your requirements. If you need direct access to all Management API endpoints, use the ManagementRESTClient class. If you need a more user-friendly interface, use the ManagementClient class.

Getting started

If you do not have FoundationaLLM deployed, follow the Quick Start Deployment instructions to get FoundationaLLM deployed in your Azure subscription.

Install the NuGet package:

dotnet add package FoundationaLLM.Client.Management

Manual service instantiation

Complete the following steps if you do not want to use dependency injection:

  1. Create a new instance of the ManagementRESTClient and ManagementClient classes:

    var managementUri = "<YOUR_MANAGEMENT_API_URL>"; // e.g., "https://myfoundationallmmanagementapi.com"
    var instanceId = "<YOUR_INSTANCE_ID>"; // Each FoundationaLLM deployment has a unique (GUID) ID. Locate this value in the FoundationaLLM Management Portal or in Azure App Config (FoundationaLLM:Instance:Id key)
    
    var credential = new AzureCliCredential(); // Can use any TokenCredential implementation, such as ManagedIdentityCredential or AzureCliCredential.
    var options = new APIClientSettings // Optional settings parameter. Default timeout is 900 seconds.
    {
        Timeout = TimeSpan.FromSeconds(600)
    };
    
    var managementRestClient = new ManagementRESTClient(
        managementUri,
        credential,
        instanceId,
        options);
    var managementClient = new ManagementClient(
        managementUri,
        credential,
        instanceId,
        options);
    
  2. Make a request to the Management API with the ManagementRESTClient class:

    var status = await managementRestClient.Status.GetServiceStatusAsync();
    
  3. Make a request to the Management API with the ManagementClient class:

    await managementClient.DataSources.DeleteDataSourceAsync("<DATASOURCE_NAME>");
    // Purge the data source so we can reuse the name.
    await managementClient.DataSources.PurgeDataSourceAsync("<DATASOURCE_NAME>");
    

You can use the FoundationaLLM.Common.Authentication.DefaultAuthentication class to generate the TokenCredential. This class sets the AzureCredential property using the ManagedIdentityCredential when running in a production environment (production parameter of the Initialize method) and the AzureCliCredential when running in a development environment.

Example:

DefaultAuthentication.Initialize(false, "Test"); var credentials = DefaultAuthentication.AzureCredential;

Use dependency injection with a configuration file

Rather than manually instantiating the ManagementRESTClient and ManagementClient classes, you can use dependency injection to manage the instances. This approach is more flexible and allows you to easily switch between different implementations of the IManagementClient and IManagementRESTClient interfaces.

  1. Create a configuration file (e.g., appsettings.json) with the following content:

    {
        "FoundationaLLM": {
            "APIEndpoints": {
     	        "ManagementAPI": {
     	            "Essentials": {
                        "APIUrl": "https://localhost:63267/"
                    }
                }
            },
            "Instance": {
                "Id": "00000000-0000-0000-0000-000000000000"
            }
        }
    }
    
  2. Read the configuration file:

    var configuration = new ConfigurationBuilder()
        .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
        .Build();
    
  3. Use the ManagementClient extension method to add the ManagementClient and ManagementRESTClient to the service collection:

    var services = new ServiceCollection();
    var credential = new AzureCliCredential(); // Can use any TokenCredential implementation, such as ManagedIdentityCredential or AzureCliCredential.
    services.AddManagementClient(
        configuration[AppConfigurationKeys.FoundationaLLM_APIEndpoints_ManagementAPI_Essentials_APIUrl]!,
        credential,
        configuration[AppConfigurationKeys.FoundationaLLM_Instance_Id]!);
    
    var serviceProvider = services.BuildServiceProvider();
    
  4. Retrieve the ManagementClient and ManagementRESTClient instances from the service provider:

    var managementClient = serviceProvider.GetRequiredService<IManagementClient>();
    var managementRestClient = serviceProvider.GetRequiredService<IManagementRESTClient>();
    

Alternately, you can inject the ManagementClient and ManagementRESTClient instances directly into your classes using dependency injection.

public class MyService
{
    private readonly IManagementClient _managementClient;
    private readonly IManagementRESTClient _managementRestClient;

    public MyService(IManagementClient managementClient, IManagementRESTClient managementRestClient)
    {
        _managementClient = managementClient;
        _managementRestClient = managementRestClient;
    }
}

Use dependency injection with Azure App Configuration

If you prefer to retrieve the configuration settings from Azure App Configuration, you can use the Microsoft.Azure.AppConfiguration.AspNetCore or Microsoft.Extensions.Configuration.AzureAppConfiguration package to retrieve the configuration settings from Azure App Configuration.

  1. Connect to Azure App Configuration:

    var configuration = new ConfigurationBuilder()
        .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
        .AddEnvironmentVariables()
        .AddAzureAppConfiguration(options =>
        {
            options.Connect("<connection-string>");
            options.ConfigureKeyVault(kv =>
            {
                kv.SetCredential(Credentials);
            });
            options.Select(AppConfigurationKeyFilters.FoundationaLLM_Instance);
            options.Select(AppConfigurationKeyFilters.FoundationaLLM_APIEndpoints_ManagementAPI_Essentials);
        })
        .Build();
    

    If you have configured your local development environment, you can obtain the App Config connection string from an environment variable (Environment.GetEnvironmentVariable(EnvironmentVariables.FoundationaLLM_AppConfig_ConnectionString)) when developing locally.

  2. Use the ManagementClient extension method to add the ManagementClient and ManagementRESTClient to the service collection:

    var services = new ServiceCollection();
    var credential = new AzureCliCredential(); // Can use any TokenCredential implementation, such as ManagedIdentityCredential or AzureCliCredential.
    
    services.AddManagementClient(
        configuration[AppConfigurationKeys.FoundationaLLM_APIEndpoints_ManagementAPI_Essentials_APIUrl]!,
        credential,
        configuration[AppConfigurationKeys.FoundationaLLM_Instance_Id]!);
    
  3. Retrieve the ManagementClient and ManagementRESTClient instances from the service provider:

    var managementClient = serviceProvider.GetRequiredService<IManagementClient>();
    var managementRestClient = serviceProvider.GetRequiredService<IManagementRESTClient>();
    

Example projects

The Core.Examples test project contains several examples that demonstrate how to use the ManagementClient and ManagementRESTClient classes to interact with the Management API through a series of end-to-end tests.

FoundationaLLM: The platform for deploying, scaling, securing and governing generative AI in the enterprises 🚀

License

FoundationaLLM provides the platform for deploying, scaling, securing and governing generative AI in the enterprise. With FoundationaLLM you can:

  • Create AI agents that are grounded in your enterprise data, be that text, semi-structured or structured data.
  • Make AI agents available to your users through a branded chat interface or integrate the REST API to the AI agent into your application for a copilot experience or integrate the Agent API in a machine-to-machine automated process.
  • Experiment building agents that can use a variety of large language models including OpenAI GPT-4, Mistral and Llama 2 or any models pulled from the Hugging Face model catalog that provide a REST completions endpoint.
  • Centrally manage, configure and secure your AI agents AND their underlying assets including prompts, data sources, vectorization data pipelines, vector databases and large language models using the management portal.
  • Enable everyone in your enterprise to create their own AI agents. Your non-developer users can create and deploy their own agents in a self-service fashion from the management portal, but we don't get in the way of your advanced AI developers who can deploy their own orchestrations built in LangChain, Semantic Kernel, Prompt Flow or any orchestration that exposes a completions endpoint.
  • Deploy and manage scalable vectorization data pipelines that can ingest millions of documents to provide knowledge to your model.
  • Empower your users with as many task-focused AI agents as desired.
  • Control access to the AI agents and the resources they access using role-based access controls (RBAC).
  • Harness the rapidly evolving capabilities from Azure AI and Azure OpenAI from one integrated stack.

FoundationaLLM is not a large language model. It enables you to use the large language models of your choice (e.g., OpenAI GPT-4, Mistral, LLama 2, etc.)

FoundationaLLM deploys a secure, comprehensive and highly configurable copilot platform to your Azure cloud environment:

  • Simplifies integration with enterprise data sources used by agent for in-context learning (e.g., enabling RAG, CoT, ReAct and inner monologue patterns).
  • Provides defense in depth with fine-grain security controls over data used by agent and pre/post completion filters that guard against attack.
  • Hardened solution attacked by an LLM red team from inception.
  • Scalable solution load balances across multiple LLM endpoints.
  • Extensible to new data sources, new LLM orchestrators and LLMs.

Why is FoundationaLLM Needed?

Simply put we saw a lot of folks reinventing the wheel just to get a customized copilot or AI agent that was grounded and bases its responses in their own data as opposed to the trained parametric knowledge of the model. Many of the solutions we saw made for great demos, but were effectively toys wrapping calls to OpenAI endpoints- they were not something intended or ready to take into production at enterprise scale. We built FoundationaLLM to provide a continuous journey, one that was quick to get started with so folks could experiment quickly with LLM's but not fall off a cliff after that with a solution that would be insecure, unlicensed, inflexible and not fully featured enough to grow from the prototype into a production solution without having to start all over.

The core problems to deliver enterprise copilots or AI agents are:

  • Enterprise grade copilots or AI agents are complex and have lots of moving parts (not to mention infrastructure).
  • The industry has a skills gap when it comes to filling the roles needed to deliver these complex copilot solutions.
  • The top AI risks (inaccuracy, cybersecurity, compliance, explainability, privacy) are not being mitigated by individual tools.
  • Delivery of a copilot or AI agent solution is time consuming, expensive and frustrating when starting from scratch.

Documentation

Get up to speed with FoundationaLLM by reading the documentation. This includes deployment instructions, quickstarts, architecture, and API references.

Getting Started

FoundationaLLM provides a simple command line driven approach to getting your first deployment up and running. Basically, it's two commands. After that, you can customize the solution, run it locally on your machine and update the deployment with your customizations.

Follow the Quick Start Deployment instructions to get FoundationaLLM deployed in your Azure subscription.

Reporting Issues and Support

If you encounter any issues with FoundationaLLM, please open an issue on GitHub. We will respond to your issue as soon as possible. Please use the Labels (bug, documentation, general question, release x.x.x) to categorize your issue and provide as much detail as possible to help us understand and resolve the issue.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on FoundationaLLM.Client.Management:

Package Downloads
FoundationaLLM.Core.Examples

FoundationaLLM.Core.Examples contains custom development examples packaged as tests.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.9.7-rc452 33 10/28/2025
0.9.7-rc451 32 10/28/2025
0.9.7-rc440 151 10/21/2025
0.9.7-rc439 156 10/20/2025
0.9.7-rc428 150 10/1/2025
0.9.7-rc418 152 9/29/2025
0.9.7-rc408 124 9/26/2025
0.9.7-rc407 130 9/26/2025
0.9.7-rc406 172 9/25/2025
0.9.7-rc405 149 9/25/2025
0.9.7-rc404 151 9/25/2025
0.9.7-rc403 169 9/25/2025
0.9.7-rc402 157 9/24/2025
0.9.7-rc401 164 9/23/2025
0.9.7-rc400 148 9/23/2025
0.9.7-rc399 163 9/23/2025
0.9.7-rc398 165 9/23/2025
0.9.7-rc397 161 9/23/2025
0.9.7-rc396 160 9/23/2025
0.9.7-rc395 159 9/23/2025
0.9.7-rc394 164 9/23/2025
0.9.7-rc393 177 9/22/2025
0.9.7-rc392 173 9/22/2025
0.9.7-rc391 168 9/22/2025
0.9.7-rc390 175 9/22/2025
0.9.7-rc389 187 9/22/2025
0.9.7-rc388 184 9/22/2025
0.9.7-rc387 194 9/22/2025
0.9.7-rc386 181 9/22/2025
0.9.7-rc385 201 9/22/2025
0.9.7-rc384 219 9/22/2025
0.9.7-rc383 234 9/19/2025
0.9.7-rc382 287 9/17/2025
0.9.7-rc381 292 9/17/2025
0.9.7-rc380 300 9/16/2025
0.9.7-rc379 305 9/16/2025
0.9.7-rc378 302 9/16/2025
0.9.7-rc377 301 9/16/2025
0.9.7-rc376 295 9/16/2025
0.9.7-rc375 294 9/16/2025
0.9.7-rc374 295 9/16/2025
0.9.7-rc373 229 9/15/2025
0.9.7-rc372 117 9/12/2025
0.9.7-rc371 126 9/12/2025
0.9.7-rc370 129 9/12/2025
0.9.7-rc369 123 9/12/2025
0.9.7-rc368 165 9/11/2025
0.9.7-rc367 170 9/10/2025
0.9.7-rc366 164 9/10/2025
0.9.7-rc365 156 9/10/2025
0.9.7-rc364 162 9/9/2025
0.9.7-rc363 158 9/9/2025
0.9.7-rc362 162 9/9/2025
0.9.7-rc361 164 9/9/2025
0.9.7-rc360 164 9/9/2025
0.9.7-rc359 164 9/9/2025
0.9.7-rc358 160 9/9/2025
0.9.7-rc357 179 9/8/2025
0.9.7-rc356 124 9/5/2025
0.9.7-rc355 132 9/5/2025
0.9.7-rc354 148 9/5/2025
0.9.7-rc353 131 9/5/2025
0.9.7-rc352 146 9/5/2025
0.9.7-rc351 145 9/5/2025
0.9.7-rc350 173 9/5/2025
0.9.7-rc349 177 9/5/2025
0.9.7-rc348 174 9/4/2025
0.9.7-rc347 185 9/4/2025
0.9.7-rc346 179 9/4/2025
0.9.7-rc345 178 9/3/2025
0.9.7-rc344 170 9/3/2025
0.9.7-rc343 178 9/3/2025
0.9.7-rc342 175 9/3/2025
0.9.7-rc341 173 9/3/2025
0.9.7-rc340 171 9/3/2025
0.9.7-rc339 174 9/3/2025
0.9.7-rc338 183 9/3/2025
0.9.7-rc337 175 9/2/2025
0.9.7-rc336 171 9/2/2025
0.9.7-rc335 167 9/2/2025
0.9.7-rc334 158 9/2/2025
0.9.7-rc333 157 9/2/2025
0.9.7-rc332 157 9/2/2025
0.9.7-rc331 171 9/2/2025
0.9.7-rc330 165 9/1/2025
0.9.7-rc329 177 8/31/2025
0.9.7-rc328 161 8/31/2025
0.9.7-rc327 162 8/31/2025
0.9.7-rc326 163 8/31/2025
0.9.7-rc325 184 8/31/2025
0.9.7-rc324 195 8/29/2025
0.9.7-rc323 197 8/29/2025
0.9.7-rc322 216 8/29/2025
0.9.7-rc321 198 8/29/2025
0.9.7-rc320 206 8/29/2025
0.9.7-rc319 208 8/28/2025
0.9.7-rc318 208 8/28/2025
0.9.7-rc317 214 8/28/2025
0.9.7-rc316 213 8/26/2025
0.9.7-rc315 208 8/26/2025
0.9.7-rc314 212 8/26/2025
0.9.7-rc313 212 8/26/2025
0.9.7-rc312 213 8/26/2025
0.9.7-rc311 230 8/26/2025
0.9.7-rc310 229 8/26/2025
0.9.7-rc309 181 8/25/2025
0.9.7-rc308 183 8/25/2025
0.9.7-rc307 179 8/25/2025
0.9.7-rc306 183 8/25/2025
0.9.7-rc305 302 8/25/2025
0.9.7-rc304 300 8/25/2025
0.9.7-rc303 273 8/25/2025
0.9.7-rc302 274 8/25/2025
0.9.7-rc301 112 8/22/2025
0.9.7-rc300 103 8/22/2025
0.9.7-rc299 132 8/22/2025
0.9.7-rc298 131 8/22/2025
0.9.7-rc297 162 8/21/2025
0.9.7-rc296 157 8/21/2025
0.9.7-rc295 161 8/21/2025
0.9.7-rc293 155 8/21/2025
0.9.7-rc292 159 8/21/2025
0.9.7-rc291 157 8/21/2025
0.9.7-rc290 146 8/20/2025
0.9.7-rc289 164 8/19/2025
0.9.7-rc288 164 8/19/2025
0.9.7-rc287 160 8/19/2025
0.9.7-rc286 170 8/19/2025
0.9.7-rc285 170 8/18/2025
0.9.7-rc284 159 8/18/2025
0.9.7-rc283 158 8/18/2025
0.9.7-rc282 155 8/18/2025
0.9.7-rc281 165 8/18/2025
0.9.7-rc280 161 8/18/2025
0.9.7-rc279 159 8/18/2025
0.9.7-rc278 157 8/18/2025
0.9.7-rc277 158 8/18/2025
0.9.7-rc276 158 8/18/2025
0.9.7-rc275 156 8/18/2025
0.9.7-rc274 165 8/18/2025
0.9.7-rc273 162 8/17/2025
0.9.7-rc272 147 8/16/2025
0.9.7-rc271 160 8/10/2025
0.9.7-rc270 122 8/9/2025
0.9.7-rc269 145 8/9/2025
0.9.7-rc268 152 8/9/2025
0.9.7-rc267 159 8/9/2025
0.9.7-rc266 178 8/8/2025
0.9.7-rc265 171 8/8/2025
0.9.7-rc264 181 8/8/2025
0.9.7-rc263 203 8/8/2025
0.9.7-rc262 209 8/8/2025
0.9.7-rc261 210 8/8/2025
0.9.7-rc260 217 8/8/2025
0.9.7-rc259 238 8/7/2025
0.9.7-rc258 196 8/4/2025
0.9.7-rc257 180 8/4/2025
0.9.7-rc256 167 7/27/2025
0.9.7-rc255 506 7/24/2025
0.9.7-rc254 547 7/22/2025
0.9.7-rc253 541 7/22/2025
0.9.7-rc252 506 7/21/2025
0.9.7-rc251 437 7/21/2025
0.9.7-rc250 352 7/20/2025
0.9.7-rc249.1 301 7/20/2025
0.9.7-rc249 249 7/20/2025
0.9.7-rc248.1 162 8/29/2025
0.9.7-rc248 91 7/18/2025
0.9.7-rc247 94 7/18/2025
0.9.7-rc246 97 7/18/2025
0.9.7-rc245 105 7/18/2025
0.9.7-rc244 120 7/18/2025
0.9.7-rc243 125 7/18/2025
0.9.7-rc242 140 7/18/2025
0.9.7-rc241 164 7/17/2025
0.9.7-rc240 157 7/17/2025
0.9.7-rc239 157 7/17/2025
0.9.7-rc238 158 7/17/2025
0.9.7-rc237 158 7/17/2025
0.9.7-rc236 154 7/17/2025
0.9.7-rc235 167 7/17/2025
0.9.7-rc234 164 7/16/2025
0.9.7-rc233 157 7/16/2025
0.9.7-rc232 156 7/16/2025
0.9.7-rc231 168 7/16/2025
0.9.7-rc230 159 7/16/2025
0.9.7-rc229 160 7/16/2025
0.9.7-rc228 164 7/16/2025
0.9.7-rc227 149 7/16/2025
0.9.7-rc226 162 7/16/2025
0.9.7-rc225 153 7/15/2025
0.9.7-rc224 152 7/15/2025
0.9.7-rc223 164 7/15/2025
0.9.7-rc222 163 7/15/2025
0.9.7-rc220 178 7/10/2025
0.9.7-rc219 162 7/10/2025
0.9.7-rc218 164 7/10/2025
0.9.7-rc217 159 7/10/2025
0.9.7-rc216 163 7/10/2025
0.9.7-rc215 168 7/10/2025
0.9.7-rc214 160 7/9/2025
0.9.7-rc213 161 7/8/2025
0.9.7-rc212 157 7/8/2025
0.9.7-rc211 170 7/8/2025
0.9.7-rc208 167 7/8/2025
0.9.7-rc207 167 7/8/2025
0.9.7-rc206 176 7/8/2025
0.9.7-rc205 160 7/7/2025
0.9.7-rc204 162 7/7/2025
0.9.7-rc203 162 7/7/2025
0.9.7-rc202 168 7/7/2025
0.9.7-rc201 152 7/7/2025
0.9.7-rc200 147 7/3/2025
0.9.7-rc199 149 7/3/2025
0.9.7-rc198 157 7/3/2025
0.9.7-rc197 163 7/3/2025
0.9.7-rc196 164 7/2/2025
0.9.7-rc195 148 7/2/2025
0.9.7-rc194 175 7/1/2025
0.9.7-rc193 161 7/1/2025
0.9.7-rc192 158 7/1/2025
0.9.7-rc191 161 6/30/2025
0.9.7-rc190 154 6/30/2025
0.9.7-rc188 162 6/26/2025
0.9.7-rc187 157 6/26/2025
0.9.7-rc186 158 6/26/2025
0.9.7-rc185 150 6/26/2025
0.9.7-rc184 155 6/24/2025
0.9.7-rc181 191 6/23/2025
0.9.7-rc180 165 6/23/2025
0.9.7-rc179 169 6/23/2025
0.9.7-rc178 166 6/23/2025
0.9.7-rc177 129 6/20/2025
0.9.7-rc176 106 6/20/2025
0.9.7-rc175 104 6/20/2025
0.9.7-rc174 104 6/20/2025
0.9.7-rc173 105 6/20/2025
0.9.7-rc172 170 6/19/2025
0.9.7-rc171 170 6/19/2025
0.9.7-rc170 164 6/19/2025
0.9.7-rc169 172 6/19/2025
0.9.7-rc168 186 6/19/2025
0.9.7-rc167 154 6/19/2025
0.9.7-rc166 181 6/17/2025
0.9.7-rc165 162 6/17/2025
0.9.7-rc164 158 6/16/2025
0.9.7-rc163 168 6/16/2025
0.9.7-rc162 152 6/16/2025
0.9.7-rc161 173 6/15/2025
0.9.7-rc160 249 6/13/2025
0.9.7-rc159 273 6/13/2025
0.9.7-rc158 307 6/12/2025
0.9.7-rc157 312 6/11/2025
0.9.7-rc156 300 6/11/2025
0.9.7-rc155 331 6/10/2025
0.9.7-rc154 315 6/10/2025
0.9.7-rc153 310 6/10/2025
0.9.7-rc152 320 6/10/2025
0.9.7-rc151 307 6/10/2025
0.9.7-rc150.4 468 7/23/2025
0.9.7-rc150.3 120 6/23/2025
0.9.7-rc150.2 126 6/23/2025
0.9.7-rc150 311 6/10/2025
0.9.7-rc149 297 6/9/2025
0.9.7-rc148 288 6/9/2025
0.9.7-rc147 298 6/9/2025
0.9.7-rc146 288 6/9/2025
0.9.7-rc145 293 6/9/2025
0.9.7-rc144 262 6/9/2025
0.9.7-rc143 226 6/8/2025
0.9.7-rc142 225 6/8/2025
0.9.7-rc141 137 6/8/2025
0.9.7-rc140 140 6/7/2025
0.9.7-rc139 123 6/6/2025
0.9.7-rc138 131 6/6/2025
0.9.7-rc137 131 6/6/2025
0.9.7-rc136 162 6/5/2025
0.9.7-rc135 169 6/5/2025
0.9.7-rc134 172 6/5/2025
0.9.7-rc133 167 6/5/2025
0.9.7-rc132 156 6/5/2025
0.9.7-rc131 174 6/5/2025
0.9.7-rc130 170 6/5/2025
0.9.7-rc129 171 6/5/2025
0.9.7-rc128 161 6/4/2025
0.9.7-rc127 193 6/4/2025
0.9.7-rc126 145 6/4/2025
0.9.7-rc125 159 6/4/2025
0.9.7-rc124 171 6/3/2025
0.9.7-rc123 186 6/3/2025
0.9.7-rc122 168 6/3/2025
0.9.7-rc121 171 6/3/2025
0.9.7-rc120 173 6/3/2025
0.9.7-rc119 170 6/2/2025
0.9.7-rc118 163 6/2/2025
0.9.7-rc117 174 6/2/2025
0.9.7-rc116 123 5/30/2025
0.9.7-rc115 171 5/30/2025
0.9.7-rc114 158 5/29/2025
0.9.7-rc113 187 5/29/2025
0.9.7-rc112 172 5/29/2025
0.9.7-rc111 173 5/29/2025
0.9.7-rc110 164 5/29/2025
0.9.7-rc109 171 5/28/2025
0.9.7-rc108 156 5/28/2025
0.9.7-rc107 167 5/27/2025
0.9.7-rc106 196 5/27/2025
0.9.7-rc105 177 5/27/2025
0.9.7-rc104 175 5/26/2025
0.9.7-rc103 175 5/25/2025
0.9.7-rc102 193 5/25/2025
0.9.7-rc101 85 5/24/2025
0.9.7-rc100 131 5/23/2025
0.9.7-ex331 151 9/2/2025
0.9.7-beta159 173 5/20/2025
0.9.7-beta158 205 5/16/2025
0.9.7-beta157 247 5/13/2025
0.9.7-beta156 251 5/12/2025
0.9.7-beta155 180 5/6/2025
0.9.7-beta154 173 5/6/2025
0.9.7-beta153 173 5/5/2025
0.9.7-beta152 196 4/30/2025
0.9.7-beta151 181 4/21/2025
0.9.7-beta150 194 4/21/2025
0.9.7-beta149 185 4/20/2025
0.9.7-beta148 177 4/18/2025
0.9.7-beta147 231 4/17/2025
0.9.7-beta146 228 4/17/2025
0.9.7-beta145 130 4/11/2025
0.9.7-beta144 171 4/11/2025
0.9.7-beta143 186 4/11/2025
0.9.7-beta142 155 4/11/2025
0.9.7-beta141 167 4/11/2025
0.9.7-beta140 207 4/10/2025
0.9.7-beta139 195 4/10/2025
0.9.7-beta138 202 4/9/2025
0.9.7-beta137 192 4/3/2025
0.9.7-beta136 185 4/2/2025
0.9.7-beta135 187 4/2/2025
0.9.7-beta134 186 4/2/2025
0.9.7-beta133 183 4/2/2025
0.9.7-beta132 190 4/2/2025
0.9.7-beta131 206 4/1/2025
0.9.7-beta130 190 4/1/2025
0.9.7-beta129 200 3/31/2025
0.9.7-beta128 192 3/31/2025
0.9.7-beta127 196 3/30/2025
0.9.7-beta126 187 3/30/2025
0.9.7-beta125 508 3/26/2025
0.9.7-beta124 522 3/26/2025
0.9.7-beta123 509 3/26/2025
0.9.7-beta122 510 3/25/2025
0.9.7-beta121 530 3/25/2025
0.9.7-beta120 505 3/25/2025
0.9.7-beta119 522 3/25/2025
0.9.7-beta118 516 3/25/2025
0.9.7-beta117 535 3/25/2025
0.9.7-beta116 528 3/24/2025
0.9.7-beta115 440 3/24/2025
0.9.7-beta114 306 3/23/2025
0.9.7-beta113 122 3/21/2025
0.9.7-beta112 150 3/21/2025
0.9.7-beta111 186 3/19/2025
0.9.7-beta110 183 3/19/2025
0.9.7-beta109 183 3/18/2025
0.9.7-beta108 184 3/17/2025
0.9.7-beta107 181 3/17/2025
0.9.7-beta106 194 3/17/2025
0.9.7-beta105 192 3/13/2025
0.9.7-beta104 191 3/12/2025
0.9.7-beta103 213 3/11/2025
0.9.7-beta102 191 3/9/2025
0.9.7-beta101 242 3/7/2025
0.9.7-beta100 237 3/5/2025
0.9.6 285 3/3/2025
0.9.6-rc100 148 2/28/2025
0.9.5 167 2/26/2025
0.9.5-rc102 138 2/25/2025
0.9.5-rc101 137 2/24/2025
0.9.5-rc100 144 2/23/2025
0.9.4 153 2/21/2025
0.9.3 156 2/17/2025
0.9.3-rc018 138 2/17/2025
0.9.3-rc017 155 2/12/2025
0.9.3-rc016 170 2/12/2025
0.9.3-rc015 153 2/7/2025
0.9.3-rc014 151 2/6/2025
0.9.3-rc013 152 2/5/2025
0.9.3-rc012 178 2/5/2025
0.9.3-rc011 141 2/5/2025
0.9.3-rc010 145 2/5/2025
0.9.3-rc009 150 2/4/2025
0.9.3-rc008 141 2/4/2025
0.9.3-rc007 142 2/4/2025
0.9.3-rc006 131 2/3/2025
0.9.3-rc005 143 2/3/2025
0.9.3-rc004 135 1/31/2025
0.9.3-rc003 142 1/30/2025
0.9.3-rc002 134 1/29/2025
0.9.3-rc001 140 1/29/2025
0.9.2 153 1/24/2025
0.9.2-rc007 131 1/24/2025
0.9.2-rc006 141 1/23/2025
0.9.2-rc005 142 1/23/2025
0.9.2-rc004 146 1/23/2025
0.9.2-rc003 135 1/23/2025
0.9.2-rc002 136 1/23/2025
0.9.2-rc001 135 1/22/2025
0.9.2-a001 150 1/21/2025
0.9.1 170 1/21/2025
0.9.1-rc131 134 1/19/2025
0.9.1-rc130 132 1/19/2025
0.9.1-rc129 123 1/19/2025
0.9.1-rc128 131 1/18/2025
0.9.1-rc127 138 1/18/2025
0.9.1-rc126 133 1/17/2025
0.9.1-rc125 139 1/17/2025
0.9.1-rc124 130 1/16/2025
0.9.1-rc123 134 1/15/2025
0.9.1-rc122 140 1/14/2025
0.9.1-rc121 126 1/14/2025
0.9.1-rc120 128 1/14/2025
0.9.1-rc118 136 1/13/2025
0.9.1-rc117 134 1/13/2025
0.9.1-rc116 128 1/8/2025
0.9.1-rc115 152 1/2/2025
0.9.1-rc114 134 12/24/2024
0.9.1-rc113 139 12/23/2024
0.9.1-rc112 146 12/22/2024
0.9.1-rc111 135 12/22/2024
0.9.1-rc110 133 12/21/2024
0.9.1-rc109 141 12/21/2024
0.9.1-rc108 128 12/21/2024
0.9.1-rc107 144 12/20/2024
0.9.1-rc106 142 12/20/2024
0.9.1-rc105 133 12/19/2024
0.9.1-rc104 143 12/19/2024
0.9.1-rc100 142 12/16/2024
0.9.1-alpha4 172 12/15/2024
0.9.1-alpha3 145 12/15/2024
0.9.0-rc3 134 12/9/2024
0.9.0-rc2 137 12/9/2024
0.9.0-alpha5 139 11/28/2024
0.9.0-alpha1 141 11/27/2024
0.8.4 161 11/20/2024
0.8.3 172 9/18/2024
0.8.2 186 9/3/2024
0.8.2-alpha2 145 9/23/2024
0.8.1 192 8/23/2024
0.8.1-alpha2 157 9/18/2024