FoundationaLLM.Client.Core 0.9.7-beta141

This is a prerelease version of FoundationaLLM.Client.Core.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package FoundationaLLM.Client.Core --version 0.9.7-beta141
                    
NuGet\Install-Package FoundationaLLM.Client.Core -Version 0.9.7-beta141
                    
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-beta141" />
                    
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-beta141" />
                    
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-beta141
                    
#r "nuget: FoundationaLLM.Client.Core, 0.9.7-beta141"
                    
#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-beta141
                    
#: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-beta141&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=FoundationaLLM.Client.Core&version=0.9.7-beta141&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-rc319 0 8/28/2025
0.9.7-rc318 0 8/28/2025
0.9.7-rc317 0 8/28/2025
0.9.7-rc316 10 8/26/2025
0.9.7-rc315 8 8/26/2025
0.9.7-rc314 11 8/26/2025
0.9.7-rc313 8 8/26/2025
0.9.7-rc312 8 8/26/2025
0.9.7-rc311 12 8/26/2025
0.9.7-rc310 11 8/26/2025
0.9.7-rc309 38 8/25/2025
0.9.7-rc308 36 8/25/2025
0.9.7-rc307 33 8/25/2025
0.9.7-rc306 33 8/25/2025
0.9.7-rc305 22 8/25/2025
0.9.7-rc304 22 8/25/2025
0.9.7-rc303 20 8/25/2025
0.9.7-rc302 20 8/25/2025
0.9.7-rc301 29 8/22/2025
0.9.7-rc300 36 8/22/2025
0.9.7-rc299 60 8/22/2025
0.9.7-rc298 65 8/22/2025
0.9.7-rc297 88 8/21/2025
0.9.7-rc296 89 8/21/2025
0.9.7-rc295 89 8/21/2025
0.9.7-rc293 92 8/21/2025
0.9.7-rc292 87 8/21/2025
0.9.7-rc291 88 8/21/2025
0.9.7-rc290 102 8/20/2025
0.9.7-rc289 114 8/19/2025
0.9.7-rc288 112 8/19/2025
0.9.7-rc287 112 8/19/2025
0.9.7-rc286 111 8/19/2025
0.9.7-rc285 112 8/18/2025
0.9.7-rc284 113 8/18/2025
0.9.7-rc283 115 8/18/2025
0.9.7-rc282 112 8/18/2025
0.9.7-rc281 111 8/18/2025
0.9.7-rc280 111 8/18/2025
0.9.7-rc279 110 8/18/2025
0.9.7-rc278 110 8/18/2025
0.9.7-rc277 114 8/18/2025
0.9.7-rc276 109 8/18/2025
0.9.7-rc275 113 8/18/2025
0.9.7-rc274 112 8/18/2025
0.9.7-rc273 112 8/17/2025
0.9.7-rc272 89 8/16/2025
0.9.7-rc271 121 8/10/2025
0.9.7-rc270 85 8/9/2025
0.9.7-rc269 112 8/9/2025
0.9.7-rc268 112 8/9/2025
0.9.7-rc267 116 8/9/2025
0.9.7-rc266 127 8/8/2025
0.9.7-rc265 137 8/8/2025
0.9.7-rc264 141 8/8/2025
0.9.7-rc263 169 8/8/2025
0.9.7-rc262 172 8/8/2025
0.9.7-rc261 168 8/8/2025
0.9.7-rc260 178 8/8/2025
0.9.7-rc259 205 8/7/2025
0.9.7-rc258 173 8/4/2025
0.9.7-rc257 157 8/4/2025
0.9.7-rc256 103 7/27/2025
0.9.7-rc255 445 7/24/2025
0.9.7-rc254 485 7/22/2025
0.9.7-rc253 478 7/22/2025
0.9.7-rc252 438 7/21/2025
0.9.7-rc251 369 7/21/2025
0.9.7-rc250 277 7/20/2025
0.9.7-rc249.1 277 7/20/2025
0.9.7-rc249 193 7/20/2025
0.9.7-rc248 25 7/18/2025
0.9.7-rc247 27 7/18/2025
0.9.7-rc246 32 7/18/2025
0.9.7-rc245 38 7/18/2025
0.9.7-rc244 74 7/18/2025
0.9.7-rc243 78 7/18/2025
0.9.7-rc242 80 7/18/2025
0.9.7-rc241 114 7/17/2025
0.9.7-rc240 114 7/17/2025
0.9.7-rc239 114 7/17/2025
0.9.7-rc238 112 7/17/2025
0.9.7-rc237 110 7/17/2025
0.9.7-rc236 116 7/17/2025
0.9.7-rc235 113 7/17/2025
0.9.7-rc234 132 7/16/2025
0.9.7-rc233 133 7/16/2025
0.9.7-rc232 127 7/16/2025
0.9.7-rc231 141 7/16/2025
0.9.7-rc230 129 7/16/2025
0.9.7-rc229 132 7/16/2025
0.9.7-rc228 138 7/16/2025
0.9.7-rc227 132 7/16/2025
0.9.7-rc226 133 7/16/2025
0.9.7-rc225 137 7/15/2025
0.9.7-rc224 132 7/15/2025
0.9.7-rc223 132 7/15/2025
0.9.7-rc222 133 7/15/2025
0.9.7-rc220 138 7/10/2025
0.9.7-rc219 134 7/10/2025
0.9.7-rc218 133 7/10/2025
0.9.7-rc217 139 7/10/2025
0.9.7-rc216 136 7/10/2025
0.9.7-rc215 129 7/10/2025
0.9.7-rc214 128 7/9/2025
0.9.7-rc213 136 7/8/2025
0.9.7-rc212 133 7/8/2025
0.9.7-rc211 135 7/8/2025
0.9.7-rc208 135 7/8/2025
0.9.7-rc207 137 7/8/2025
0.9.7-rc206 132 7/8/2025
0.9.7-rc205 133 7/7/2025
0.9.7-rc204 133 7/7/2025
0.9.7-rc203 139 7/7/2025
0.9.7-rc202 132 7/7/2025
0.9.7-rc201 133 7/7/2025
0.9.7-rc200 135 7/3/2025
0.9.7-rc199 138 7/3/2025
0.9.7-rc198 138 7/3/2025
0.9.7-rc197 136 7/3/2025
0.9.7-rc196 132 7/2/2025
0.9.7-rc195 134 7/2/2025
0.9.7-rc194 133 7/1/2025
0.9.7-rc193 129 7/1/2025
0.9.7-rc192 134 7/1/2025
0.9.7-rc191 141 6/30/2025
0.9.7-rc190 132 6/30/2025
0.9.7-rc188 132 6/26/2025
0.9.7-rc187 137 6/26/2025
0.9.7-rc186 132 6/26/2025
0.9.7-rc185 132 6/26/2025
0.9.7-rc184 136 6/24/2025
0.9.7-rc181 141 6/23/2025
0.9.7-rc180 136 6/23/2025
0.9.7-rc179 137 6/23/2025
0.9.7-rc178 136 6/23/2025
0.9.7-rc177 73 6/20/2025
0.9.7-rc176 73 6/20/2025
0.9.7-rc175 73 6/20/2025
0.9.7-rc174 81 6/20/2025
0.9.7-rc173 77 6/20/2025
0.9.7-rc172 135 6/19/2025
0.9.7-rc171 141 6/19/2025
0.9.7-rc170 144 6/19/2025
0.9.7-rc169 138 6/19/2025
0.9.7-rc168 140 6/19/2025
0.9.7-rc167 144 6/19/2025
0.9.7-rc166 136 6/17/2025
0.9.7-rc165 140 6/17/2025
0.9.7-rc164 141 6/16/2025
0.9.7-rc163 136 6/16/2025
0.9.7-rc162 139 6/16/2025
0.9.7-rc161 145 6/15/2025
0.9.7-rc160 211 6/13/2025
0.9.7-rc159 230 6/13/2025
0.9.7-rc158 284 6/12/2025
0.9.7-rc157 292 6/11/2025
0.9.7-rc156 280 6/11/2025
0.9.7-rc155 283 6/10/2025
0.9.7-rc154 286 6/10/2025
0.9.7-rc153 288 6/10/2025
0.9.7-rc152 288 6/10/2025
0.9.7-rc151 285 6/10/2025
0.9.7-rc150.4 445 7/23/2025
0.9.7-rc150.3 117 6/23/2025
0.9.7-rc150.2 120 6/23/2025
0.9.7-rc150 283 6/10/2025
0.9.7-rc149 264 6/9/2025
0.9.7-rc148 265 6/9/2025
0.9.7-rc147 263 6/9/2025
0.9.7-rc146 260 6/9/2025
0.9.7-rc145 266 6/9/2025
0.9.7-rc144 239 6/9/2025
0.9.7-rc143 201 6/8/2025
0.9.7-rc142 199 6/8/2025
0.9.7-rc141 118 6/8/2025
0.9.7-rc140 113 6/7/2025
0.9.7-rc139 104 6/6/2025
0.9.7-rc138 110 6/6/2025
0.9.7-rc137 107 6/6/2025
0.9.7-rc136 142 6/5/2025
0.9.7-rc135 141 6/5/2025
0.9.7-rc134 143 6/5/2025
0.9.7-rc133 137 6/5/2025
0.9.7-rc132 142 6/5/2025
0.9.7-rc131 138 6/5/2025
0.9.7-rc130 142 6/5/2025
0.9.7-rc129 149 6/5/2025
0.9.7-rc128 139 6/4/2025
0.9.7-rc127 149 6/4/2025
0.9.7-rc126 131 6/4/2025
0.9.7-rc125 147 6/4/2025
0.9.7-rc124 146 6/3/2025
0.9.7-rc123 138 6/3/2025
0.9.7-rc122 139 6/3/2025
0.9.7-rc121 143 6/3/2025
0.9.7-rc120 146 6/3/2025
0.9.7-rc119 144 6/2/2025
0.9.7-rc118 142 6/2/2025
0.9.7-rc117 140 6/2/2025
0.9.7-rc116 112 5/30/2025
0.9.7-rc115 145 5/30/2025
0.9.7-rc114 146 5/29/2025
0.9.7-rc113 149 5/29/2025
0.9.7-rc112 147 5/29/2025
0.9.7-rc111 150 5/29/2025
0.9.7-rc110 148 5/29/2025
0.9.7-rc109 146 5/28/2025
0.9.7-rc108 145 5/28/2025
0.9.7-rc107 145 5/27/2025
0.9.7-rc106 143 5/27/2025
0.9.7-rc105 146 5/27/2025
0.9.7-rc104 149 5/26/2025
0.9.7-rc103 149 5/25/2025
0.9.7-rc102 151 5/25/2025
0.9.7-rc101 68 5/24/2025
0.9.7-rc100 101 5/23/2025
0.9.7-beta159 145 5/20/2025
0.9.7-beta158 178 5/16/2025
0.9.7-beta157 237 5/13/2025
0.9.7-beta156 222 5/12/2025
0.9.7-beta155 149 5/6/2025
0.9.7-beta154 152 5/6/2025
0.9.7-beta153 149 5/5/2025
0.9.7-beta152 152 4/30/2025
0.9.7-beta151 177 4/21/2025
0.9.7-beta150 175 4/21/2025
0.9.7-beta149 174 4/20/2025
0.9.7-beta148 150 4/18/2025
0.9.7-beta147 192 4/17/2025
0.9.7-beta146 196 4/17/2025
0.9.7-beta145 119 4/11/2025
0.9.7-beta144 131 4/11/2025
0.9.7-beta143 147 4/11/2025
0.9.7-beta142 135 4/11/2025
0.9.7-beta141 133 4/11/2025
0.9.7-beta140 171 4/10/2025
0.9.7-beta139 164 4/10/2025
0.9.7-beta138 168 4/9/2025
0.9.7-beta137 158 4/3/2025
0.9.7-beta136 154 4/2/2025
0.9.7-beta135 174 4/2/2025
0.9.7-beta134 158 4/2/2025
0.9.7-beta133 159 4/2/2025
0.9.7-beta132 166 4/2/2025
0.9.7-beta131 158 4/1/2025
0.9.7-beta130 170 4/1/2025
0.9.7-beta129 170 3/31/2025
0.9.7-beta128 162 3/31/2025
0.9.7-beta127 159 3/30/2025
0.9.7-beta126 157 3/30/2025
0.9.7-beta125 471 3/26/2025
0.9.7-beta124 475 3/26/2025
0.9.7-beta123 477 3/26/2025
0.9.7-beta122 476 3/25/2025
0.9.7-beta121 478 3/25/2025
0.9.7-beta120 470 3/25/2025
0.9.7-beta119 482 3/25/2025
0.9.7-beta118 479 3/25/2025
0.9.7-beta117 482 3/25/2025
0.9.7-beta116 491 3/24/2025
0.9.7-beta115 409 3/24/2025
0.9.7-beta114 273 3/23/2025
0.9.7-beta113 101 3/21/2025
0.9.7-beta112 121 3/21/2025
0.9.7-beta111 160 3/19/2025
0.9.7-beta110 162 3/19/2025
0.9.7-beta109 159 3/18/2025
0.9.7-beta108 155 3/17/2025
0.9.7-beta107 153 3/17/2025
0.9.7-beta106 168 3/17/2025
0.9.7-beta105 159 3/13/2025
0.9.7-beta104 163 3/12/2025
0.9.7-beta103 177 3/11/2025
0.9.7-beta102 168 3/9/2025
0.9.7-beta101 215 3/7/2025
0.9.7-beta100 209 3/5/2025
0.9.6 230 3/3/2025
0.9.6-rc100 107 2/28/2025
0.9.5 126 2/26/2025
0.9.5-rc102 104 2/25/2025
0.9.5-rc101 113 2/24/2025
0.9.5-rc100 118 2/23/2025
0.9.4 126 2/21/2025
0.9.3 128 2/17/2025
0.9.3-rc018 116 2/17/2025
0.9.3-rc017 113 2/12/2025
0.9.3-rc016 114 2/12/2025
0.9.3-rc015 117 2/7/2025
0.9.3-rc014 103 2/6/2025
0.9.3-rc013 106 2/5/2025
0.9.3-rc012 117 2/5/2025
0.9.3-rc011 116 2/5/2025
0.9.3-rc010 113 2/5/2025
0.9.3-rc009 118 2/4/2025
0.9.3-rc008 115 2/4/2025
0.9.3-rc007 110 2/4/2025
0.9.3-rc006 116 2/3/2025
0.9.3-rc005 115 2/3/2025
0.9.3-rc004 110 1/31/2025
0.9.3-rc003 115 1/30/2025
0.9.3-rc002 105 1/29/2025
0.9.3-rc001 97 1/29/2025
0.9.2 102 1/24/2025
0.9.2-rc007 89 1/24/2025
0.9.2-rc006 99 1/23/2025
0.9.2-rc005 93 1/23/2025
0.9.2-rc004 92 1/23/2025
0.9.2-rc003 92 1/23/2025
0.9.2-rc002 94 1/23/2025
0.9.2-rc001 94 1/22/2025
0.9.2-a001 120 1/21/2025
0.9.1 120 1/21/2025
0.9.1-rc131 105 1/19/2025
0.9.1-rc130 106 1/19/2025
0.9.1-rc129 105 1/19/2025
0.9.1-rc128 101 1/18/2025
0.9.1-rc127 100 1/18/2025
0.9.1-rc126 109 1/17/2025
0.9.1-rc125 109 1/17/2025
0.9.1-rc124 105 1/16/2025
0.9.1-rc123 104 1/15/2025
0.9.1-rc122 95 1/14/2025
0.9.1-rc121 98 1/14/2025
0.9.1-rc120 105 1/14/2025
0.9.1-rc118 106 1/13/2025
0.9.1-rc117 110 1/13/2025
0.9.1-rc116 95 1/8/2025
0.9.1-rc115 108 1/2/2025
0.9.1-rc114 108 12/24/2024
0.9.1-rc113 109 12/23/2024
0.9.1-rc112 116 12/22/2024
0.9.1-rc111 115 12/22/2024
0.9.1-rc110 108 12/21/2024
0.9.1-rc109 109 12/21/2024
0.9.1-rc108 111 12/21/2024
0.9.1-rc107 118 12/20/2024
0.9.1-rc106 110 12/20/2024
0.9.1-rc105 111 12/19/2024
0.9.1-rc104 105 12/19/2024
0.9.1-rc100 117 12/16/2024
0.9.1-alpha4 118 12/15/2024
0.9.1-alpha3 117 12/15/2024
0.9.0-rc3 111 12/9/2024
0.9.0-rc2 115 12/9/2024
0.9.0-alpha5 114 11/28/2024
0.9.0-alpha1 107 11/27/2024
0.8.4 131 11/20/2024
0.8.3 156 9/18/2024
0.8.2 134 9/3/2024
0.8.2-alpha2 118 9/23/2024
0.8.1 166 8/23/2024
0.8.1-alpha2 120 9/18/2024