Skip to content

PMeeske/ouroboros-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2,757 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Ouroboros App Layer

CI Mutation Testing Tests Coverage

Application layer of the Ouroboros system, providing user-facing interfaces and remoting capabilities for the Ouroboros AI pipeline framework.

Test Coverage

Coverage is measured by CI via Coverlet + ReportGenerator. See the latest CI run for the full HTML report artifact.

Project Line Coverage Status
Ouroboros.Easy 68.5% 68.5%
Ouroboros.Application -- See CI report
Ouroboros.CLI -- See CI report
Ouroboros.WebApi -- See CI report

Note: Full per-assembly coverage is available in the CI coverage report artifact. The Android project is excluded from coverage (separate MAUI build).

This repository is part of the Ouroboros-v2 ecosystem and contains the application implementations that sit on top of the foundation and engine layers.

Overview

The Ouroboros App layer provides multiple interfaces for interacting with the Ouroboros system:

  • Android App - Mobile terminal-style interface with AI provider support
  • Web API - REST API for containerized/cloud deployments
  • CLI - Command-line interface for desktop usage
  • Easy API - Simplified programming interface
  • Examples - Sample implementations and usage patterns

Projects

Applications

Native Android application providing a terminal-style CLI interface on mobile devices.

  • Full Ollama API integration with authentication
  • Multi-provider AI support (OpenAI, Anthropic, Google AI, etc.)
  • Symbolic reasoning engine
  • Command history and intelligent suggestions
  • Offline-capable with local storage

ASP.NET Core Web API providing REST endpoints for the Ouroboros pipeline.

  • Kubernetes-ready with health checks
  • OpenAPI/Swagger documentation
  • Horizontal scaling support
  • Distributed tracing integration

πŸ’» Ouroboros.CLI

Command-line interface for desktop environments.

  • Direct access to pipeline functionality
  • Shell integration
  • Batch processing support

Libraries

🎯 Ouroboros.Application

Shared pipeline runtime and application logic used by all application interfaces.

πŸš€ Ouroboros.Easy

Simplified API for quick integration and prototyping.

πŸ“š Ouroboros.Examples

Sample implementations demonstrating Ouroboros capabilities.

πŸ”Œ OpenClaw.Sdk

Client SDK for the OpenClaw gateway protocol.

🌍 Ouroboros.ApiHost

ASP.NET minimal API host with REST endpoints and Swagger.

πŸŽ™οΈ Ouroboros.AudioDetection

Audio detection and VAD (Voice Activity Detection) using NAudio.

Getting Started

Prerequisites

  • .NET 10.0 SDK or later
  • For Android: MAUI workload (dotnet workload install maui-android)
  • For Docker deployments: Docker and Docker Compose

Building

Build All Projects (except Android)

dotnet restore
dotnet build

Build Android App

The Android app is built separately to avoid requiring MAUI workloads in all environments:

cd src/Ouroboros.Android
dotnet restore
dotnet build -c Release -f net10.0-android

The APK will be at: bin/Release/net10.0-android/com.adaptivesystems.Ouroboros-Signed.apk

See the Android README for detailed build and installation instructions.

Build Web API with Docker

docker build -f Dockerfile.webapi -t ouroboros-webapi:latest .
docker run -p 8080:8080 ouroboros-webapi:latest

Running Tests

dotnet test

Run specific test projects:

dotnet test tests/Ouroboros.Application.Tests
dotnet test tests/Ouroboros.WebApi.Tests
dotnet test tests/Ouroboros.CLI.Tests
dotnet test tests/Ouroboros.Android.Tests
dotnet test tests/Ouroboros.ApiHost.Tests
dotnet test tests/Ouroboros.App.BDD
dotnet test tests/Ouroboros.Easy.Tests
dotnet test tests/Ouroboros.Integration.Tests

Architecture

This repository represents the App Layer of the Ouroboros architecture:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚         Ouroboros App Layer             β”‚
β”‚  (Android, WebApi, CLI, Easy, Examples) β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚       Ouroboros Engine Layer            β”‚
β”‚    (Pipeline, Providers, Network)       β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚     Ouroboros Foundation Layer          β”‚
β”‚      (Core, Domain, Tools)              β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Dependencies

The App layer depends on:

  • Foundation Layer - Core types, domain models, and utilities
  • Engine Layer - Pipeline execution, AI providers, networking

These dependencies are managed through the Directory.Build.props file and expect the foundation and engine layers to be available as submodules or in sibling directories.

Documentation

Additional documentation is available in the docs/ directory.

Related Repositories

  • Ouroboros-v2 - Main repository with overall system architecture
  • Ouroboros Foundation - Core framework and domain models (referenced via build system)
  • Ouroboros Engine - Pipeline execution and AI provider integrations (referenced via build system)

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please ensure:

  • All tests pass before submitting PRs
  • New features include appropriate tests
  • Documentation is updated to reflect changes
  • Code follows existing patterns and conventions

Support

For issues, questions, or contributions, please visit the main Ouroboros-v2 repository.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors