FoundationaLLM.Client.Core 0.9.7-rc170

This is a prerelease version of FoundationaLLM.Client.Core.
There is a newer version of this package available.
See the version list below for details.
dotnet add package FoundationaLLM.Client.Core --version 0.9.7-rc170
                    
NuGet\Install-Package FoundationaLLM.Client.Core -Version 0.9.7-rc170
                    
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.Core" Version="0.9.7-rc170" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FoundationaLLM.Client.Core" Version="0.9.7-rc170" />
                    
Directory.Packages.props
<PackageReference Include="FoundationaLLM.Client.Core" />
                    
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.Core --version 0.9.7-rc170
                    
#r "nuget: FoundationaLLM.Client.Core, 0.9.7-rc170"
                    
#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.Core@0.9.7-rc170
                    
#: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.Core&version=0.9.7-rc170&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=FoundationaLLM.Client.Core&version=0.9.7-rc170&prerelease
                    
Install as a Cake Tool

FoundationaLLM Core Client

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

This library contains two primary classes:

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

These two classes are mutually exclusive, and you should choose one based on your requirements. If you need direct access to all Core API endpoints, use the CoreRESTClient class. If you need a more user-friendly interface, use the CoreClient 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.Core

Manual service instantiation

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

  1. Create a new instance of the CoreRESTClient and CoreClient classes:

    var coreUri = "<YOUR_CORE_API_URL>"; // e.g., "https://myfoundationallmcoreapi.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 coreRestClient = new CoreRESTClient(
        coreUri,
        credential,
        instanceId,
        options);
    var coreClient = new CoreClient(
        coreUri,
        credential,
        instanceId,
        options);
    
  2. Make a request to the Core API with the CoreRESTClient class:

    var status = await coreRestClient.Status.GetServiceStatusAsync();
    
  3. Make a request to the Core API with the CoreClient class:

    var results = await coreClient.GetAgentsAsync();
    

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 CoreRESTClient and CoreClient 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 ICoreClient and ICoreRESTClient interfaces.

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

    {
        "FoundationaLLM": {
            "APIEndpoints": {
     	        "CoreAPI": {
     	            "Essentials": {
     	                "APIUrl": "https://localhost:63279/"
                    }
     		    },
            },
            "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 CoreClient extension method to add the CoreClient and CoreRESTClient to the service collection:

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

    var coreClient = serviceProvider.GetRequiredService<ICoreClient>();
    var coreRestClient = serviceProvider.GetRequiredService<ICoreRESTClient>();
    

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

public class MyService
{
    private readonly ICoreClient _coreClient;
    private readonly ICoreRESTClient _coreRestClient;

    public MyService(ICoreClient coreClient, ICoreRESTClient coreRestClient)
    {
        _coreClient = coreClient;
        _coreRestClient = coreRestClient;
    }
}

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_CoreAPI_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 CoreClient extension method to add the CoreClient and CoreRESTClient to the service collection:

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

    var coreClient = serviceProvider.GetRequiredService<ICoreClient>();
    var coreRestClient = serviceProvider.GetRequiredService<ICoreRESTClient>();
    

Example projects

The Core.Examples test project contains several examples that demonstrate how to use the CoreClient and CoreRESTClient classes to interact with the Core 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.Core:

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 22 11/24/2025
0.9.7-rc488 222 11/21/2025
0.9.7-rc487 251 11/21/2025
0.9.7-rc485 381 11/19/2025
0.9.7-rc484 369 11/18/2025
0.9.7-rc483 368 11/18/2025
0.9.7-rc481 375 11/18/2025
0.9.7-rc480 373 11/17/2025
0.9.7-rc479 260 11/17/2025
0.9.7-rc474 256 11/16/2025
0.9.7-rc473 272 11/16/2025
0.9.7-rc471 247 11/10/2025
0.9.7-rc470 248 11/10/2025
0.9.7-rc467 249 11/10/2025
0.9.7-rc466 113 11/7/2025
0.9.7-rc461 174 11/4/2025
0.9.7-rc460 174 11/4/2025
0.9.7-rc452 183 10/28/2025
0.9.7-rc451 166 10/28/2025
0.9.7-rc440 158 10/21/2025
0.9.7-rc439 163 10/20/2025
0.9.7-rc428 167 10/1/2025
0.9.7-rc418 182 9/29/2025
0.9.7-rc408 129 9/26/2025
0.9.7-rc407 136 9/26/2025
0.9.7-rc406 164 9/25/2025
0.9.7-rc405 164 9/25/2025
0.9.7-rc404 163 9/25/2025
0.9.7-rc403 167 9/25/2025
0.9.7-rc402 176 9/24/2025
0.9.7-rc401 166 9/23/2025
0.9.7-rc400 158 9/23/2025
0.9.7-rc399 153 9/23/2025
0.9.7-rc398 154 9/23/2025
0.9.7-rc397 158 9/23/2025
0.9.7-rc396 158 9/23/2025
0.9.7-rc395 152 9/23/2025
0.9.7-rc394 168 9/23/2025
0.9.7-rc393 177 9/22/2025
0.9.7-rc392 167 9/22/2025
0.9.7-rc391 165 9/22/2025
0.9.7-rc390 173 9/22/2025
0.9.7-rc389 174 9/22/2025
0.9.7-rc388 178 9/22/2025
0.9.7-rc387 187 9/22/2025
0.9.7-rc386 175 9/22/2025
0.9.7-rc385 203 9/22/2025
0.9.7-rc384 219 9/22/2025
0.9.7-rc383 217 9/19/2025
0.9.7-rc382 293 9/17/2025
0.9.7-rc381 287 9/17/2025
0.9.7-rc380 291 9/16/2025
0.9.7-rc379 287 9/16/2025
0.9.7-rc378 284 9/16/2025
0.9.7-rc377 296 9/16/2025
0.9.7-rc376 296 9/16/2025
0.9.7-rc375 288 9/16/2025
0.9.7-rc374 286 9/16/2025
0.9.7-rc373 241 9/15/2025
0.9.7-rc372 106 9/12/2025
0.9.7-rc371 123 9/12/2025
0.9.7-rc370 133 9/12/2025
0.9.7-rc369 131 9/12/2025
0.9.7-rc368 157 9/11/2025
0.9.7-rc367 137 9/10/2025
0.9.7-rc366 146 9/10/2025
0.9.7-rc365 147 9/10/2025
0.9.7-rc364 145 9/9/2025
0.9.7-rc363 141 9/9/2025
0.9.7-rc362 140 9/9/2025
0.9.7-rc361 147 9/9/2025
0.9.7-rc360 142 9/9/2025
0.9.7-rc359 148 9/9/2025
0.9.7-rc358 148 9/9/2025
0.9.7-rc357 137 9/8/2025
0.9.7-rc356 99 9/5/2025
0.9.7-rc355 114 9/5/2025
0.9.7-rc354 123 9/5/2025
0.9.7-rc353 116 9/5/2025
0.9.7-rc352 128 9/5/2025
0.9.7-rc351 125 9/5/2025
0.9.7-rc350 163 9/5/2025
0.9.7-rc349 170 9/5/2025
0.9.7-rc348 158 9/4/2025
0.9.7-rc347 157 9/4/2025
0.9.7-rc346 159 9/4/2025
0.9.7-rc345 154 9/3/2025
0.9.7-rc344 167 9/3/2025
0.9.7-rc343 168 9/3/2025
0.9.7-rc342 165 9/3/2025
0.9.7-rc341 153 9/3/2025
0.9.7-rc340 156 9/3/2025
0.9.7-rc339 158 9/3/2025
0.9.7-rc338 159 9/3/2025
0.9.7-rc337 158 9/2/2025
0.9.7-rc336 152 9/2/2025
0.9.7-rc335 157 9/2/2025
0.9.7-rc334 138 9/2/2025
0.9.7-rc333 141 9/2/2025
0.9.7-rc332 141 9/2/2025
0.9.7-rc331 144 9/2/2025
0.9.7-rc330 152 9/1/2025
0.9.7-rc329 147 8/31/2025
0.9.7-rc328 155 8/31/2025
0.9.7-rc327 160 8/31/2025
0.9.7-rc326 148 8/31/2025
0.9.7-rc325 162 8/31/2025
0.9.7-rc324 176 8/29/2025
0.9.7-rc323 178 8/29/2025
0.9.7-rc322 181 8/29/2025
0.9.7-rc321 195 8/29/2025
0.9.7-rc320 196 8/29/2025
0.9.7-rc319 191 8/28/2025
0.9.7-rc318 193 8/28/2025
0.9.7-rc317 194 8/28/2025
0.9.7-rc316 199 8/26/2025
0.9.7-rc315 195 8/26/2025
0.9.7-rc314 209 8/26/2025
0.9.7-rc313 208 8/26/2025
0.9.7-rc312 195 8/26/2025
0.9.7-rc311 217 8/26/2025
0.9.7-rc310 213 8/26/2025
0.9.7-rc309 170 8/25/2025
0.9.7-rc308 163 8/25/2025
0.9.7-rc307 161 8/25/2025
0.9.7-rc306 162 8/25/2025
0.9.7-rc305 292 8/25/2025
0.9.7-rc304 292 8/25/2025
0.9.7-rc303 255 8/25/2025
0.9.7-rc302 257 8/25/2025
0.9.7-rc301 90 8/22/2025
0.9.7-rc300 83 8/22/2025
0.9.7-rc299 114 8/22/2025
0.9.7-rc298 116 8/22/2025
0.9.7-rc297 139 8/21/2025
0.9.7-rc296 140 8/21/2025
0.9.7-rc295 149 8/21/2025
0.9.7-rc293 145 8/21/2025
0.9.7-rc292 140 8/21/2025
0.9.7-rc291 141 8/21/2025
0.9.7-rc290 142 8/20/2025
0.9.7-rc289 152 8/19/2025
0.9.7-rc288 141 8/19/2025
0.9.7-rc287 143 8/19/2025
0.9.7-rc286 153 8/19/2025
0.9.7-rc285 141 8/18/2025
0.9.7-rc284 144 8/18/2025
0.9.7-rc283 144 8/18/2025
0.9.7-rc282 141 8/18/2025
0.9.7-rc281 142 8/18/2025
0.9.7-rc280 153 8/18/2025
0.9.7-rc279 141 8/18/2025
0.9.7-rc278 140 8/18/2025
0.9.7-rc277 156 8/18/2025
0.9.7-rc276 140 8/18/2025
0.9.7-rc275 141 8/18/2025
0.9.7-rc274 146 8/18/2025
0.9.7-rc273 151 8/17/2025
0.9.7-rc272 125 8/16/2025
0.9.7-rc271 141 8/10/2025
0.9.7-rc270 107 8/9/2025
0.9.7-rc269 131 8/9/2025
0.9.7-rc268 135 8/9/2025
0.9.7-rc267 137 8/9/2025
0.9.7-rc266 162 8/8/2025
0.9.7-rc265 159 8/8/2025
0.9.7-rc264 161 8/8/2025
0.9.7-rc263 200 8/8/2025
0.9.7-rc262 196 8/8/2025
0.9.7-rc261 189 8/8/2025
0.9.7-rc260 202 8/8/2025
0.9.7-rc259 236 8/7/2025
0.9.7-rc258 194 8/4/2025
0.9.7-rc257 199 8/4/2025
0.9.7-rc256 144 7/27/2025
0.9.7-rc255 484 7/24/2025
0.9.7-rc254 541 7/22/2025
0.9.7-rc253 538 7/22/2025
0.9.7-rc252 514 7/21/2025
0.9.7-rc251 420 7/21/2025
0.9.7-rc250 335 7/20/2025
0.9.7-rc249.1 302 7/20/2025
0.9.7-rc249 251 7/20/2025
0.9.7-rc248.1 166 8/29/2025
0.9.7-rc248 86 7/18/2025
0.9.7-rc247 84 7/18/2025
0.9.7-rc246 90 7/18/2025
0.9.7-rc245 92 7/18/2025
0.9.7-rc244 117 7/18/2025
0.9.7-rc243 131 7/18/2025
0.9.7-rc242 123 7/18/2025
0.9.7-rc241 153 7/17/2025
0.9.7-rc240 162 7/17/2025
0.9.7-rc239 154 7/17/2025
0.9.7-rc238 151 7/17/2025
0.9.7-rc237 148 7/17/2025
0.9.7-rc236 165 7/17/2025
0.9.7-rc235 154 7/17/2025
0.9.7-rc234 155 7/16/2025
0.9.7-rc233 175 7/16/2025
0.9.7-rc232 149 7/16/2025
0.9.7-rc231 163 7/16/2025
0.9.7-rc230 153 7/16/2025
0.9.7-rc229 154 7/16/2025
0.9.7-rc228 169 7/16/2025
0.9.7-rc227 152 7/16/2025
0.9.7-rc226 158 7/16/2025
0.9.7-rc225 168 7/15/2025
0.9.7-rc224 158 7/15/2025
0.9.7-rc223 164 7/15/2025
0.9.7-rc222 155 7/15/2025
0.9.7-rc220 174 7/10/2025
0.9.7-rc219 157 7/10/2025
0.9.7-rc218 164 7/10/2025
0.9.7-rc217 160 7/10/2025
0.9.7-rc216 176 7/10/2025
0.9.7-rc215 151 7/10/2025
0.9.7-rc214 147 7/9/2025
0.9.7-rc213 159 7/8/2025
0.9.7-rc212 154 7/8/2025
0.9.7-rc211 159 7/8/2025
0.9.7-rc208 158 7/8/2025
0.9.7-rc207 158 7/8/2025
0.9.7-rc206 153 7/8/2025
0.9.7-rc205 157 7/7/2025
0.9.7-rc204 156 7/7/2025
0.9.7-rc203 164 7/7/2025
0.9.7-rc202 151 7/7/2025
0.9.7-rc201 152 7/7/2025
0.9.7-rc200 164 7/3/2025
0.9.7-rc199 170 7/3/2025
0.9.7-rc198 161 7/3/2025
0.9.7-rc197 169 7/3/2025
0.9.7-rc196 154 7/2/2025
0.9.7-rc195 156 7/2/2025
0.9.7-rc194 154 7/1/2025
0.9.7-rc193 154 7/1/2025
0.9.7-rc192 165 7/1/2025
0.9.7-rc191 173 6/30/2025
0.9.7-rc190 155 6/30/2025
0.9.7-rc188 153 6/26/2025
0.9.7-rc187 171 6/26/2025
0.9.7-rc186 162 6/26/2025
0.9.7-rc185 155 6/26/2025
0.9.7-rc184 153 6/24/2025
0.9.7-rc181 172 6/23/2025
0.9.7-rc180 156 6/23/2025
0.9.7-rc179 171 6/23/2025
0.9.7-rc178 156 6/23/2025
0.9.7-rc177 101 6/20/2025
0.9.7-rc176 100 6/20/2025
0.9.7-rc175 108 6/20/2025
0.9.7-rc174 109 6/20/2025
0.9.7-rc173 96 6/20/2025
0.9.7-rc172 164 6/19/2025
0.9.7-rc171 160 6/19/2025
0.9.7-rc170 173 6/19/2025
0.9.7-rc169 157 6/19/2025
0.9.7-rc168 159 6/19/2025
0.9.7-rc167 167 6/19/2025
0.9.7-rc166 154 6/17/2025
0.9.7-rc165 159 6/17/2025
0.9.7-rc164 160 6/16/2025
0.9.7-rc163 166 6/16/2025
0.9.7-rc162 173 6/16/2025
0.9.7-rc161 173 6/15/2025
0.9.7-rc160 232 6/13/2025
0.9.7-rc159 252 6/13/2025
0.9.7-rc158 301 6/12/2025
0.9.7-rc157 311 6/11/2025
0.9.7-rc156 302 6/11/2025
0.9.7-rc155 299 6/10/2025
0.9.7-rc154 306 6/10/2025
0.9.7-rc153 308 6/10/2025
0.9.7-rc152 310 6/10/2025
0.9.7-rc151 303 6/10/2025
0.9.7-rc150.4 476 7/23/2025
0.9.7-rc150.3 130 6/23/2025
0.9.7-rc150.2 131 6/23/2025
0.9.7-rc150 303 6/10/2025
0.9.7-rc149 283 6/9/2025
0.9.7-rc148 289 6/9/2025
0.9.7-rc147 281 6/9/2025
0.9.7-rc146 289 6/9/2025
0.9.7-rc145 284 6/9/2025
0.9.7-rc144 257 6/9/2025
0.9.7-rc143 220 6/8/2025
0.9.7-rc142 231 6/8/2025
0.9.7-rc141 137 6/8/2025
0.9.7-rc140 130 6/7/2025
0.9.7-rc139 132 6/6/2025
0.9.7-rc138 135 6/6/2025
0.9.7-rc137 120 6/6/2025
0.9.7-rc136 174 6/5/2025
0.9.7-rc135 161 6/5/2025
0.9.7-rc134 163 6/5/2025
0.9.7-rc133 158 6/5/2025
0.9.7-rc132 165 6/5/2025
0.9.7-rc131 158 6/5/2025
0.9.7-rc130 162 6/5/2025
0.9.7-rc129 174 6/5/2025
0.9.7-rc128 160 6/4/2025
0.9.7-rc127 166 6/4/2025
0.9.7-rc126 151 6/4/2025
0.9.7-rc125 177 6/4/2025
0.9.7-rc124 174 6/3/2025
0.9.7-rc123 157 6/3/2025
0.9.7-rc122 158 6/3/2025
0.9.7-rc121 162 6/3/2025
0.9.7-rc120 176 6/3/2025
0.9.7-rc119 166 6/2/2025
0.9.7-rc118 161 6/2/2025
0.9.7-rc117 149 6/2/2025
0.9.7-rc116 132 5/30/2025
0.9.7-rc115 155 5/30/2025
0.9.7-rc114 174 5/29/2025
0.9.7-rc113 168 5/29/2025
0.9.7-rc112 170 5/29/2025
0.9.7-rc111 167 5/29/2025
0.9.7-rc110 170 5/29/2025
0.9.7-rc109 174 5/28/2025
0.9.7-rc108 167 5/28/2025
0.9.7-rc107 169 5/27/2025
0.9.7-rc106 162 5/27/2025
0.9.7-rc105 167 5/27/2025
0.9.7-rc104 171 5/26/2025
0.9.7-rc103 171 5/25/2025
0.9.7-rc102 185 5/25/2025
0.9.7-rc101 85 5/24/2025
0.9.7-rc100 121 5/23/2025
0.9.7-ex331 155 9/2/2025
0.9.7-beta159 166 5/20/2025
0.9.7-beta158 198 5/16/2025
0.9.7-beta157 257 5/13/2025
0.9.7-beta156 245 5/12/2025
0.9.7-beta155 180 5/6/2025
0.9.7-beta154 173 5/6/2025
0.9.7-beta153 178 5/5/2025
0.9.7-beta152 173 4/30/2025
0.9.7-beta151 197 4/21/2025
0.9.7-beta150 197 4/21/2025
0.9.7-beta149 194 4/20/2025
0.9.7-beta148 172 4/18/2025
0.9.7-beta147 210 4/17/2025
0.9.7-beta146 217 4/17/2025
0.9.7-beta145 139 4/11/2025
0.9.7-beta144 154 4/11/2025
0.9.7-beta143 169 4/11/2025
0.9.7-beta142 154 4/11/2025
0.9.7-beta141 152 4/11/2025
0.9.7-beta140 192 4/10/2025
0.9.7-beta139 187 4/10/2025
0.9.7-beta138 198 4/9/2025
0.9.7-beta137 180 4/3/2025
0.9.7-beta136 174 4/2/2025
0.9.7-beta135 193 4/2/2025
0.9.7-beta134 185 4/2/2025
0.9.7-beta133 183 4/2/2025
0.9.7-beta132 185 4/2/2025
0.9.7-beta131 178 4/1/2025
0.9.7-beta130 190 4/1/2025
0.9.7-beta129 193 3/31/2025
0.9.7-beta128 184 3/31/2025
0.9.7-beta127 179 3/30/2025
0.9.7-beta126 178 3/30/2025
0.9.7-beta125 489 3/26/2025
0.9.7-beta124 498 3/26/2025
0.9.7-beta123 498 3/26/2025
0.9.7-beta122 493 3/25/2025
0.9.7-beta121 500 3/25/2025
0.9.7-beta120 493 3/25/2025
0.9.7-beta119 508 3/25/2025
0.9.7-beta118 503 3/25/2025
0.9.7-beta117 504 3/25/2025
0.9.7-beta116 509 3/24/2025
0.9.7-beta115 431 3/24/2025
0.9.7-beta114 294 3/23/2025
0.9.7-beta113 132 3/21/2025
0.9.7-beta112 149 3/21/2025
0.9.7-beta111 179 3/19/2025
0.9.7-beta110 183 3/19/2025
0.9.7-beta109 181 3/18/2025
0.9.7-beta108 173 3/17/2025
0.9.7-beta107 169 3/17/2025
0.9.7-beta106 192 3/17/2025
0.9.7-beta105 178 3/13/2025
0.9.7-beta104 182 3/12/2025
0.9.7-beta103 201 3/11/2025
0.9.7-beta102 190 3/9/2025
0.9.7-beta101 235 3/7/2025
0.9.7-beta100 241 3/5/2025
0.9.6 278 3/3/2025
0.9.6-rc100 124 2/28/2025
0.9.5 145 2/26/2025
0.9.5-rc102 125 2/25/2025
0.9.5-rc101 136 2/24/2025
0.9.5-rc100 136 2/23/2025
0.9.4 146 2/21/2025
0.9.3 147 2/17/2025
0.9.3-rc018 136 2/17/2025
0.9.3-rc017 132 2/12/2025
0.9.3-rc016 132 2/12/2025
0.9.3-rc015 137 2/7/2025
0.9.3-rc014 120 2/6/2025
0.9.3-rc013 124 2/5/2025
0.9.3-rc012 135 2/5/2025
0.9.3-rc011 134 2/5/2025
0.9.3-rc010 134 2/5/2025
0.9.3-rc009 135 2/4/2025
0.9.3-rc008 135 2/4/2025
0.9.3-rc007 128 2/4/2025
0.9.3-rc006 133 2/3/2025
0.9.3-rc005 136 2/3/2025
0.9.3-rc004 129 1/31/2025
0.9.3-rc003 137 1/30/2025
0.9.3-rc002 125 1/29/2025
0.9.3-rc001 114 1/29/2025
0.9.2 131 1/24/2025
0.9.2-rc007 106 1/24/2025
0.9.2-rc006 121 1/23/2025
0.9.2-rc005 113 1/23/2025
0.9.2-rc004 121 1/23/2025
0.9.2-rc003 111 1/23/2025
0.9.2-rc002 111 1/23/2025
0.9.2-rc001 112 1/22/2025
0.9.2-a001 149 1/21/2025
0.9.1 138 1/21/2025
0.9.1-rc131 122 1/19/2025
0.9.1-rc130 125 1/19/2025
0.9.1-rc129 137 1/19/2025
0.9.1-rc128 110 1/18/2025
0.9.1-rc127 117 1/18/2025
0.9.1-rc126 130 1/17/2025
0.9.1-rc125 129 1/17/2025
0.9.1-rc124 124 1/16/2025
0.9.1-rc123 130 1/15/2025
0.9.1-rc122 115 1/14/2025
0.9.1-rc121 114 1/14/2025
0.9.1-rc120 125 1/14/2025
0.9.1-rc118 122 1/13/2025
0.9.1-rc117 130 1/13/2025
0.9.1-rc116 124 1/8/2025
0.9.1-rc115 129 1/2/2025
0.9.1-rc114 126 12/24/2024
0.9.1-rc113 129 12/23/2024
0.9.1-rc112 136 12/22/2024
0.9.1-rc111 134 12/22/2024
0.9.1-rc110 132 12/21/2024
0.9.1-rc109 132 12/21/2024
0.9.1-rc108 139 12/21/2024
0.9.1-rc107 148 12/20/2024
0.9.1-rc106 127 12/20/2024
0.9.1-rc105 140 12/19/2024
0.9.1-rc104 128 12/19/2024
0.9.1-rc100 138 12/16/2024
0.9.1-alpha4 139 12/15/2024
0.9.1-alpha3 138 12/15/2024
0.9.0-rc3 129 12/9/2024
0.9.0-rc2 135 12/9/2024
0.9.0-alpha5 133 11/28/2024
0.9.0-alpha1 122 11/27/2024
0.8.4 148 11/20/2024
0.8.3 176 9/18/2024
0.8.2 151 9/3/2024
0.8.2-alpha2 137 9/23/2024
0.8.1 182 8/23/2024
0.8.1-alpha2 138 9/18/2024