A comprehensive library for building enterprise-grade AI agent systems with multi-tenancy, workflow orchestration, and temporal scheduling capabilities.
$ dotnet add package Xians.LibA robust .NET library for establishing HTTP and Temporal server connections with built-in resilience, retry logic, and health monitoring.
# Define the version
export VERSION=1.3.7 # or 1.3.7-beta for pre-release
# Create and push a version tag
git tag -a v$VERSION -m "Release v$VERSION"
git push origin v$VERSION
dotnet add package Xians.Lib
The API key must be a Base64-encoded X.509 certificate, not a simple string.
The certificate must contain:
Example:
# ❌ WRONG - Simple string will fail
API_KEY=my-api-key-123
# ✅ CORRECT - Base64-encoded certificate
API_KEY=MIIDXTCCAkWgAwIBAgIJAKL5g3aN3dqKMA0GCSqGSIb3DQEBCwUA...
See Authentication Guide for details.
Recommended: Initialize from Environment (Fetches Temporal config from server):
using Xians.Lib.Common;
// Set environment variables:
// SERVER_URL=https://api.example.com
// API_KEY=your-api-key
var (httpService, temporalService) = await ServiceFactory.CreateServicesFromEnvironmentAsync();
// Use HTTP service
var response = await httpService.GetWithRetryAsync("/api/data");
// Use Temporal service (config fetched from server)
var temporalClient = await temporalService.GetClientAsync();
Alternative: Direct initialization:
using Xians.Lib.Common;
var (httpService, temporalService) = await ServiceFactory.CreateServicesFromServerAsync(
serverUrl: "https://api.example.com",
apiKey: "your-api-key"
);
// Temporal settings automatically fetched from: GET /api/agent/settings/flowserver
Manual Configuration (Advanced):
using Xians.Lib.Configuration;
using Xians.Lib.Common;
// HTTP only
var httpConfig = new ServerConfiguration
{
ServerUrl = "https://api.example.com",
ApiKey = "your-api-key"
};
using var httpService = ServiceFactory.CreateHttpClientService(httpConfig);
// Temporal only (manual config)
var temporalConfig = new TemporalConfiguration
{
ServerUrl = "localhost:7233",
Namespace = "default"
};
using var temporalService = ServiceFactory.CreateTemporalClientService(temporalConfig);
Comprehensive guides and examples are available in the docs directory:
Resilience:
Security:
Developer-Friendly:
Copyright (c) 99x. All rights reserved.