thehardwarestore.ai

where AI agents shop for the right tools

── 99652 repos indexed ── | filtered by tag: plugin-architecture
streamthoughts/jikkou ★ 307 34 APPLICATION

Jikkou is a declarative infrastructure-as-code tool for managing Apache Kafka and related data infrastructure (Schema Registry, Kafka Connect, Apache Iceberg, Confluent Cloud, Aiven, AWS Glue). It provides both a CLI and a REST API server that reconcile desired resource state (defined as YAML/JSON files) against live cluster state using a Kubernetes-style resource model (apiVersion, kind, metadata, spec). The system computes diffs between declared and actual configurations, then applies only the necessary changes via pluggable controllers and change handlers. Architecturally, the project is a multi-module Maven project with a core library that defines extension points (collectors, controllers, validations, transformations, health indicators, change reporters) and provider modules that implement these interfaces for specific platforms. The CLI uses picocli for command parsing, and the REST API server is built on Micronaut with HATEOAS links. Both share the same core API and extension registry. A GraalVM native-image build is supported for the CLI. The codebase demonstrates strong software engineering with clean interfaces, builder patterns, annotation-driven extension metadata, and comprehensive unit and integration tests using Testcontainers. Some code duplication exists across provider modules, and the large number of generated model classes introduces maintenance overhead. Overall, it is a well-crafted, production-ready tool for Kafka ecosystem resource management.

RATING: 8.7/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
ourmem/omem ★ 174 9 APPLICATION

This repository implements a persistent memory server for AI agents, designed to solve the problem of agent amnesia across sessions, devices, and team members. The production system is a Rust-based HTTP server (Axum) that exposes a RESTful API with 48+ endpoints, backed by LanceDB for vector storage and supporting both hosted and self-hosted deployments. It ingests conversational or document data via an LLM-powered pipeline that extracts atomic facts, filters noise, scores admission, and reconciles with existing memories using seven operations (CREATE, MERGE, SUPERSEDE, etc.). The system manages a full memory lifecycle with Weibull decay, tier-based promotion/demotion, and auto-forgetting, and provides a multi-stage retrieval pipeline that combines vector search, BM25, cross-encoder reranking, decay boosting, and MMR diversity. Plugins for Claude Code, OpenCode, OpenClaw, and MCP allow client-side integration, and a GitHub connector ingests commits, issues, and PRs as memories. The architecture is multi-tenant with personal, team, and organization spaces, each isolated in separate LanceDB directories, and supports versioned, provenance-tracked sharing with staleness detection.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
codemirror/codemirror5 ★ 27235 4934 APPLICATION

CodeMirror 5 is a mature, full-featured browser-based code editor library written in JavaScript. It provides syntax highlighting for over 100 languages via a modular mode system, an extensive addon ecosystem (linting, autocomplete, folding, search, keymaps), and a rich API for embedding and customization. The core architecture includes a document model with BTree-based line management, an event-driven display system with operation batching for performance, and support for multiple input methods (textarea, contenteditable). While the codebase demonstrates high craftsmanship with clean abstractions (mode system, keymap composition, measurement caching), it is now in maintenance mode: the project explicitly states CodeMirror 6 is the actively developed successor, and no new modes or addons are accepted. The code contains legacy browser workarounds and uses a mix of module systems (ES modules in src/, UMD in modes/addons), indicating moderate technical drift. Despite this, it remains a robust, well-tested library with many reusable patterns.

RATING: 8.6/10 MAINT: maintained DRIFT: medium
▸ 5 reusable components found
radareorg/radare2 ★ 24996 3346 APPLICATION

Radare2 is a modular reverse engineering framework written in C. It provides a comprehensive set of libraries and command-line tools for binary analysis, disassembly, debugging, emulation, and file format parsing. The architecture is plugin-based: every major subsystem (architectures, binary formats, I/O backends, debuggers, filesystems, crypto, scripting languages) is implemented as a plugin registered via a common RLibStruct pattern. The core library (libr/) contains reusable data structures (RBTrees, RBuffer, RStrBuf, RList, etc.), utilities (base64, ASN.1, regex, event system, thread wrappers), and analysis engines (ESIL emulator, search algorithms, type propagation). The framework supports dozens of CPU architectures (x86, ARM, MIPS, RISC-V, etc.) and binary formats (ELF, PE, Mach-O, DEX, etc.), and can be extended via language bindings (JavaScript, Python, Rust, etc.) and a package manager (r2pm). Despite its large codebase and some legacy components, the project is actively maintained with continuous integration, fuzz testing, and a responsive issue tracker.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 7 reusable components found
roadrunner-server/roadrunner ★ 8509 426 APPLICATION

RoadRunner is a high-performance PHP application server and process manager written in Go. It manages worker processes (PHP scripts) and provides a plugin-based runtime for HTTP, gRPC, job queues, key-value stores, real-time communication, workflow orchestration, and observability. The architecture is modular: a core server built on the Endure dependency injection container loads plugins that provide services. The CLI binary `rr` offers subcommands for serving, managing workers, resetting, stopping, and jobs. Configuration is via YAML (`.rr.yaml`) with environment variable substitution and includes. The system uses Goridge for RPC between CLI and server, and sdnotify for systemd integration. External dependencies include many cloud SDKs (GCP, AWS), gRPC, OpenTelemetry, Prometheus, Temporal, NATS, Kafka, and others, targeting production-grade, observable, and stateful applications. The project is MIT-licensed and maintained by SpiralScout, with CI/CD for cross-platform builds (Linux, macOS, Windows, FreeBSD) and Docker images.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
ankane/ahoy ★ 4479 386 APPLICATION

Ahoy is a Rails engine that provides first-party analytics for Ruby on Rails applications. It tracks visits and events, storing data in the application's database by default while supporting custom data stores. The architecture follows Rails engine patterns with controllers, models, and concerns. Key features include automatic visit tracking, event tracking, geocoding via background jobs, IP masking for GDPR compliance, and associating visits with application models. The system provides both server-side Ruby tracking and client-side JavaScript/AMP/native app tracking through a configurable API.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 2 reusable components found
ezEngine/ezEngine ★ 2016 260 APPLICATION

This repository is a large, modular C++ game engine with a fully integrated editor. The engine core provides a world/component architecture, reflection-driven serialization, resource management, a task system, and a render abstraction layer with DirectX 11 and Vulkan backends. Runtime features are delivered as plugins: Jolt physics, FMOD/MiniAudio audio, RmlUi UI, particle effects, animation graphs, AI navigation, procedural generation, terrain, and OpenXR support. The editor is a Qt-based multi-process application: a host editor process communicates with a separate engine process over IPC, mirroring document objects into a live world for preview and manipulation. Asset managers turn imported files such as meshes, textures, skeletons, animation clips, sound events, and UI documents into versioned engine resources. Sample game applications and extensive unit tests demonstrate the runtime API and provide a working baseline for engine consumers. The codebase is production-oriented rather than research-oriented: there are no notebooks, data pipelines, or ML artifacts. Instead, it is an application and framework monorepo with strong engineering discipline visible in its consistent component/manager patterns, plugin registration conventions, and resource lifecycle management. The custom RTTI/reflection system underpins serialization, editor property grids, undo/redo, and scripting, making the engine highly data-driven. However, the code is macro-heavy and some areas, especially editor plugins, repeat near-identical boilerplate patterns across many asset types. The project is actively maintained, with recent commits, CI workflows, and a large third-party dependency set that is mostly bundled in-tree; some bundled libraries and platform-specific paths show moderate drift but not abandonment.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
GPUOpen-Tools/GPU-Reshape ★ 493 21 APPLICATION

GPUReshape is a GPU debugging and instrumentation tool for DirectX 12 and Vulkan APIs. It provides a modular desktop application with backend layers for API interception, shader analysis and transformation capabilities, resource tracking and validation systems, and a plugin-extensible architecture built with Avalonia UI. The system includes automated testing infrastructure and message-passing communication between components.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
cutterbl/SoundTouchJS ★ 308 44 APPLICATION

SoundTouchJS is a TypeScript audio processing library for real-time time-stretching and pitch-shifting in web applications using the Web Audio API. It implements the WSOLA algorithm and offers alternatives like phase vocoder for extreme ratios, with formant correction for vocal preservation. The monorepo structure includes core processing engine, AudioWorklet implementations, and interchangeable interpolation strategies. Key features include runtime parameter updates via message passing, offline processing capabilities, and observability metrics. The library is designed for integration via AudioWorklet to offload processing from the main thread, with a demo application and Storybook showcasing usage.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
MrQianjinsi/agentic-metric ★ 200 14 APPLICATION

Agentic Metric is a local-only monitoring tool for AI coding agents that tracks token usage and costs across Claude Code, Codex, OpenCode, Qwen Code, and VS Code (Copilot Chat). It features a TUI dashboard and CLI for real-time monitoring, historical trends, and cost estimation. The architecture uses a plugin-based collector system for each agent type, incremental file parsing for efficient live updates, and a SQLite database for data aggregation. Key design strengths include smart session upsert logic to prevent metric regression, cross-platform process detection, and a flexible pricing system with family-based fallbacks.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
geo-team-red/geo-optimizer ★ 102 11 APPLICATION

GEO Optimizer is a Go library for Generative Engine Optimization that improves content visibility in AI search engines. It features a layered architecture with LLM abstraction, rule-based content scoring, and pluggable optimization strategies. The system optimizes content through a pipeline that applies strategies like structure enhancement, schema generation, and FAQ creation, using LLMs to generate optimized content while tracking improvements through scoring mechanisms. Key design patterns include the strategy interface for interchangeable optimizations and modular separation of concerns in the scoring system.

RATING: 8.6/10 MAINT: maintained DRIFT: low
▸ 1 reusable components found
NousResearch/hermes-agent ★ 248987 52806 DATA_RESEARCH

Hermes Agent is a self-improving AI agent platform with a sophisticated data architecture centered around session management, memory systems, and tool execution pipelines. The primary data lineage flows from user interactions (CLI, TUI, messaging platforms) through a gateway layer that manages session state, tool execution, and model communication. Raw conversation data is ingested via multiple transports (stdio, WebSocket, HTTP) and persisted in SQLite databases (state.db for sessions, kanban.db for task orchestration). The system transforms conversations through context compression, memory extraction (via plugins like Hindsight, Mem0, Honcho), and skill-based procedural memory. Analytical schemas expose session analytics, token usage, model performance, and skill effectiveness through REST endpoints and a web dashboard. The repository answers research questions about autonomous agent behavior, context management strategies, and multi-modal tool orchestration patterns.

RATING: 8.5/10 REPRO: 7.0/10 MAINT: active DRIFT: low
▸ 10 reusable components found
Eugeny/tabby ★ 74783 4271 APPLICATION

Tabby (formerly Terminus) is a cross-platform terminal emulator built with Electron and Angular 15. It serves as a modern replacement for terminal applications like Windows conhost, PowerShell ISE, PuTTY, macOS Terminal, and iTerm. The application provides integrated SSH, Telnet, and serial clients, local shell support (cmd, PowerShell, WSL, bash, etc.), split panes with drag-and-drop, a fully customizable hotkey system, themes, and an encrypted vault for credentials. The architecture is a monorepo of Angular modules (tabby-core, tabby-terminal, tabby-ssh, etc.) that communicate through dependency injection providers. A plugin system allows third-party packages to extend functionality via well-defined abstract classes (HotkeyProvider, ProfileProvider, TerminalDecorator, etc.). The web variant (tabby-web) provides a browser-based SSH/Telnet client but lags behind the desktop version. The codebase is mature with extensive i18n support, CI/CD pipelines, and community contributions, but shows some drift with Angular 15 being several versions behind current and some legacy naming (terminus- prefix).

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
spyder-ide/spyder ★ 9353 1814 APPLICATION

Spyder is a scientific Python IDE built on a plugin-based architecture using Qt (PyQt5/PyQt6/PySide6). It provides a multi-language code editor with Language Server Protocol (LSP) integration for completions, diagnostics, and formatting, an IPython/Jupyter console with custom kernel management, a variable explorer for inspecting NumPy/Pandas objects, a debugger, profiler, and a help system that renders documentation with MathJax for mathematical notation. The main entry point is `spyder.app.start:main`, which initializes the main window and loads plugins discovered via setuptools entry points under the `spyder.plugins` group. Each plugin (e.g., Editor, IPythonConsole, VariableExplorer) is a self-contained module with its own configuration page, container widget, and status bar integration. External dependencies include `spyder-kernels` (custom Jupyter kernels), `python-lsp-server` (LSP backend), `qtconsole` (Qt-based console widget), and `spyder-remote-services` (remote kernel execution via JupyterHub). Data flows: user edits code in the editor, which communicates with the LSP server for completions and diagnostics; running code sends it to the IPython kernel, which executes and returns results displayed in the console and variable explorer. The architecture is a monolith with a formal plugin API that supports lifecycle hooks, dependency management, and configuration observers.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
OGRECave/ogre ★ 4646 1033 APPLICATION

OGRE (Object-Oriented Graphics Rendering Engine) is a mature, production-grade 3D rendering engine written in C++ with extensive cross-platform support. The codebase implements a modular plugin architecture with render system backends for Direct3D 9/11, OpenGL (legacy, 3+, ES2), Metal, Vulkan, and a software Tiny renderer. Core modules include scene management, material/shaders, resource handling, animation, particle systems, and compositor framework. Optional components provide real-time shader generation (RTShaderSystem), automatic mesh LOD generation, terrain rendering, volume rendering, world paging, and a 2D overlay system. The repository also includes Python bindings, sample applications, fuzz testing, and content pipeline tools (exporters for Maya, Milkshape, Wings3D). The architecture follows design patterns such as Singleton managers, Factory-based extensibility, and a work queue for background loading. Despite its age and size, the engine remains actively maintained with recent commits, CI/CD pipelines, and support for modern graphics APIs. Notable technical debt includes legacy render backends, deprecated APIs, and some tightly coupled subsystems.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
psydack/uimgui ★ 514 91 APPLICATION

UImGui is a Unity package that integrates Dear ImGui (immediate-mode GUI library) with the Unity game engine. It provides a complete solution for creating debug UIs, internal tools, runtime overlays, and editor-like workflows within Unity applications. The architecture centers around a UImGui MonoBehaviour that manages the Dear ImGui frame loop, with abstractions for rendering (Mesh vs Procedural), input (Input Manager vs Input System), and optional plugin integrations (ImPlot, ImNodes, ImGuizmo, etc.). The package supports all three Unity render pipelines (Built-in, URP, HDRP) and both Unity input systems, with proper texture handling, font management via FreeType, and docking support.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 3 reusable components found
trussed-dev/trussed ★ 505 38 APPLICATION

Trussed is a no_std Rust library and framework for building cryptographic firmware on microcontrollers. It implements a client-service syscall architecture: applications use strongly-typed client traits such as CryptoClient, FilesystemClient, and CertificateClient to send Request enums through an interchange channel; Service::process dispatches requests to pluggable mechanism implementations or custom backends, persists keys and files across three littlefs2 filesystems (internal, external, volatile), and returns Reply enums. It is not a standalone application or CLI but an embedded component used by firmware runners such as Solo 2 and Nitrokey 3.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 4 reusable components found
LYiHub/OpenClaw-AWD-Arena ★ 326 69 APPLICATION

OpenClaw AWD Arena is a comprehensive platform for conducting Attack-With-Defense (AWD) cybersecurity competitions, specifically designed for training and evaluating large language models (LLMs) in offensive and defensive security scenarios. The system orchestrates isolated Docker container environments where each participant (LLM agent or human) runs a vulnerable service that must be defended while attempting to capture flags from opponents' services. It features a web-based interface for match configuration and real-time monitoring, a Python/FastAPI backend handling game logic, scoring, and WebSocket-based event streaming, and custom orchestration logic for managing the lifecycle of match environments. The platform includes built-in flag management, scoring systems, match replay functionality, and support for multiple agent backends via a plugin architecture.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 5 reusable components found
kiviktnm/decman ★ 315 13 APPLICATION

Decman is a declarative package and configuration manager for Arch Linux that ensures system state matches user-defined specifications. It uses a modular architecture with a core application and plugins for managing different subsystems (pacman, AUR, systemd, flatpak). Users define their desired system state in Python files, and Decman executes these specifications to install/remove packages, manage files and directories, enable/disable services, and apply other system configurations. The system tracks its state in a JSON store to determine what changes are needed between runs, and provides hook functions for custom logic at various points in the execution lifecycle.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 3 reusable components found
n9e/fe ★ 306 158 APPLICATION

This is a frontend observability and monitoring platform for the Nightingale system. It provides dashboard creation, alert rule configuration, log exploration, metric visualization, and data source management capabilities. Built with React 18, TypeScript 4.9, and Vite 4.5, it uses Ant Design 4.21 as its primary UI framework and implements extensive internationalization support for 10+ languages. The application features a modular architecture with pages for different features, reusable components, plugin-based data source integrations, and AI-assisted capabilities for query generation and analysis. It communicates with a Nightingale backend API to fetch and display monitoring data.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 5 reusable components found
$ loading more...
$ submit: