thehardwarestore.ai

where AI agents shop for the right tools

── 99628 repos indexed ── | filtered by tag: python
esbmc/esbmc ★ 521 145 APPLICATION

ESBMC (Efficient SMT-based Bounded Model Checker) is a mature, open-source formal verification tool that automatically detects or proves the absence of runtime errors in C, C++, Python, Java/Kotlin (via Jimple), CHERI, and Solidity programs. It parses source code using language-specific frontends (Clang for C/C++, CPython parser for Python, Soot for Java), converts programs into a common GOTO intermediate representation, and performs bounded symbolic execution with SMT solving (Z3, Bitwuzla, CVC5, Yices, etc.). The tool checks for assertions, memory safety (buffer overflows, null pointers, use-after-free), arithmetic overflows, concurrency races, and user-defined contracts (requires/ensures/assigns). It supports advanced verification techniques including k-induction, loop invariant synthesis, incremental BMC, and quantifier reasoning. The architecture is modular: frontends produce GOTO programs, which are then processed by a series of analysis passes (pointer analysis, value-set analysis, loop unrolling, contract enforcement) before being encoded into SMT formulas. The solver backend is pluggable, with support for interactive solvers and experimental one-shot solvers (Mallob, NeuroSym). The repository includes an extensive regression test suite with thousands of small, self-contained test cases organized by language and feature, many with paired passing/failing variants to ensure soundness. Operational models for C standard library functions, C++ STL, Python standard library (including numpy), and SystemC are bundled as source code for SMT translation. Key entry points include the main ESBMC binary (built from `src/esbmc/`), the Clang C/C++ frontend (`src/clang-c-frontend/`), the Python frontend (`src/python-frontend/`), and the solver interfaces (`src/solvers/`). The tool is actively used in research and industry, has won 43 awards at SV-COMP and Test-Comp, and is supported by multiple funding agencies. External dependencies include Boost (program_options, filesystem), Clang/LLVM, and several SMT solvers.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 6 reusable components found
Charcoal-SE/SmokeDetector ★ 494 205 APPLICATION

SmokeDetector is a headless chatbot that monitors Stack Exchange for spam and abusive content in real time. It connects to the Stack Exchange WebSocket to receive new and edited posts, then runs them through a multi-layered detection engine that checks against extensive blacklists (keywords, websites, usernames, phone numbers, IP ranges, nameservers, ASNs) and applies heuristic rules including DNS lookups, homoglyph detection, and similarity analysis. Detected spam is reported to designated chat rooms on Stack Exchange Chat, where moderators can provide feedback that feeds back into the system via the Metasmoke statistics service. The architecture is event-driven: the main loop in `ws.py` listens for WebSocket events, enqueues posts for scanning via `bodyfetcher.py`, and dispatches results to `spamhandling.py` for chat reporting. A command system in `chatcommands.py` allows operators to manage blacklists, inspect posts, and control the bot through chat messages. Persistent state is stored in pickle files, and the bot integrates with GitHub for automated blacklist pull requests. The detection logic in `findspam.py` is rule-based with over 100 rules registered via a decorator pattern, each with configurable filters for site, reputation, and score. Key reusable components include a generic TTL cache (`metasmoke_cache.py`), an extensible blacklist parser hierarchy (`blacklists.py`), a phone number matching module with homoglyph support (`phone_numbers.py`), and a command registration decorator. The codebase is well-tested with extensive parametrized tests and has CI/CD pipelines. While the core detection file is large and tightly coupled, many supporting modules are cleanly separated and could be extracted for other projects.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
coze-dev/coze-py ★ 492 122 APPLICATION

The Coze Python SDK (coze-py) is a library that enables Python developers to interact with the Coze platform's APIs, providing both synchronous and asynchronous clients for services such as bot management, chat, workflows, conversations, datasets, audio processing, and more. It handles authentication (including PAT, OAuth variants), makes HTTP requests via httpx, and processes responses using Pydantic models for validation. The SDK follows a modular architecture with a main client class (`Coze`/`AsyncCoze`) that provides access to service-specific clients via properties. Key reusable components include a pluggable authentication system (supporting TokenAuth, JWTAuth, OAuth flows), a generic pagination system for list operations, streaming response handlers for Server-Sent Events and WebSocket messages, a centralized HTTP requester abstraction, and base classes for WebSocket clients. These components demonstrate non-obvious craftsmanship and could be extracted for use in other API clients. The SDK is actively maintained, as evidenced by recent commits and the deprecation of outdated modules in favor of newer alternatives (e.g., `cozepy.datasets` replacing `cozepy.knowledge`). However, it exhibits medium technical drift due to tight coupling to the Coze API (lacking API version abstraction) and potential susceptibility to changes in authentication flows or WebSocket dependencies. Despite these risks, the codebase maintains high quality through type hints, comprehensive testing, linting, and pre-commit hooks.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
fabioz/PyDev.Debugger ★ 491 134 APPLICATION

The PyDev.Debugger (pydevd) is a Python debugger backend designed for IDE integration and remote debugging. It provides core debugging capabilities including breakpoints, stepping, variable inspection, and expression evaluation. The architecture features a client/server model for remote debugging, with in-process tracing via settrace(). Key entry points include pydevd.py (main debugger), pydevd_attach_to_process (live process attachment), and pydevconsole.py (interactive console). The debugger supports multiple protocols (legacy line-based and JSON/DAP for VS Code integration) and employs Cython optimizations with fallbacks to pure Python. It includes extensive test suites covering edge cases like multiprocessing, async, GUI event loops, and framework-specific integrations (Django, Flask). The code demonstrates strong modularity through extension points for custom variable rendering and plugin architecture.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
scrapy/queuelib ★ 300 56 APPLICATION

Queuelib is a Python library providing persistent and in-memory queue data structures. It implements FIFO, LIFO, priority, and round-robin queues with disk-based storage options for durability. The library is dependency-free, using only the Python standard library, and is designed for scenarios requiring reliable queuing such as web crawlers. Architecture consists of modular components: base queue classes in queue.py, priority queue in pqueue.py, and round-robin queue in rrqueue.py. Disk-based queues manage data through chunk files (FIFO) or single files (LIFO) with careful bookkeeping to survive process restarts. The priority and round-robin queues use a factory pattern to decouple queue logic from storage implementation, enabling flexibility.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 3 reusable components found
abersheeran/kui ★ 297 23 APPLICATION

Kuí is a lightweight Python web framework that supports both ASGI (async) and WSGI (sync) modes with a nearly identical API. It provides type-safe parameter binding via typing_extensions.Annotated and Pydantic, dependency injection with caching and cleanup, automatic OpenAPI 3.1.0 documentation generation, middleware composition, class-based views for HTTP and WebSocket, background task execution, CORS support, authentication helpers (Bearer, Basic, API Key), and template rendering with Jinja2. The framework is built on baize and emphasizes developer experience through clear documentation and AI-assisted development support.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 3 reusable components found
K-Dense-AI/mimeo ★ 277 39 APPLICATION

Mimeo is a Python CLI application that transforms a named expert's public body of work (essays, talks, interviews, podcasts, papers, etc.) into a structured, source-verified Agent Skill file (SKILL.md) and/or AGENTS.md, designed for AI coding agents to adopt the expert's reasoning style. The pipeline orchestrates identity resolution, source discovery via the Parallel API, content fetching (web, YouTube transcripts, optional audio transcription), LLM-based distillation and clustering (via OpenRouter), quote verification against source text, structured skill authoring, critique/refinement loops, and optional avatar generation. The output is a curated set of markdown files (principles, frameworks, mental models, anti-patterns, heuristics, quotes) organized per expert in the `output/` directory. The codebase is well-architected with async stages, a fingerprint-based caching layer, SSRF-safe HTTP helpers, prompt injection mitigations, and extensive offline tests using fake LLM/Parallel clients. While the primary purpose is the application tool, the generated output forms a reusable knowledge base of expert reasoning patterns, giving the repo a hybrid character.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 3 reusable components found
EpicWink/proxpi ★ 204 37 APPLICATION

proxpi is a caching reverse-proxy server for PyPI and any PEP 503-compatible package index. It fronts one or more upstream indices, serves the Python simple repository API to pip clients in both HTML (PEP 691 v1.0) and JSON (PEP 691 v1.1) forms, and performs correct HTTP content negotiation including Accept, Accept-Encoding, and Vary headers. Index responses (project list and per-project file lists) are cached in memory with per-index TTLs; package files are cached on disk with a configurable size cap and least-frequently-used eviction. When a requested file is still downloading in the background, the server emits a 302 redirect to the upstream URL rather than blocking the client. The system is a single-process Starlette ASGI application (proxpi.server:app) designed for multi-threaded serving under Gunicorn/Hypercorn, configured entirely through environment variables (index URLs, TTLs, cache size/dir, connect/read/download timeouts, SSL verification toggle, log level). Its main target is reducing pip install latency and upstream load in CI pipelines. The implementation is a compact three-layer design: server.py handles routing, templating, and compression; _cache.py holds the caching engine (a File abstraction with FileFromHTML/FileFromJSON parsers for the dual-format simple repository API, an _IndexCache with per-package locks and a fast-path that fetches project pages without refreshing the full index, and a _FileCache with background downloads, atomic os.replace writes, and LFU eviction); _server_utils.py provides RFC-correct content-negotiation helpers built on the stdlib email header parser. The code is thread-safe by design (per-key locks, exception-storing worker threads) and memory-efficient, streaming HTML index parsing through lxml.iterparse via a custom file-like response adapter. The test suite is notably strong: parametrized integration tests against mock HTML/JSON indices covering yanked files, core-metadata hashes, gpg-sig attributes, content negotiation edge cases, cache invalidation, and 404 paths, plus end-to-end tests that run real pip downloads against live PyPI. CI runs the matrix across Python 3.8-3.14, lints with black/isort, and publishes multi-arch Docker images with fully hash-pinned dependencies. One caveat: the README is stale, documenting the pre-1.3 Flask implementation, while the code has already migrated to Starlette (listed in CHANGELOG as unreleased), and the Docker image now runs Gunicorn with an ASGI worker.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 2 reusable components found
asottile/astpretty ★ 199 22 APPLICATION

astpretty is a Python library and CLI tool that provides a pretty-print alternative to the standard library's `ast.dump`. It formats Python AST nodes (from `ast.parse`) into a human-readable, indented representation with optional line/column offsets. The library is self-contained, relying only on the Python standard library, and exposes two main functions: `pformat` (returns a string) and `pprint` (prints to stdout). The CLI entry point reads a Python file, parses it, and prints the AST. The code is well-typed, uses modern Python features (3.11+), and includes comprehensive tests covering edge cases like type comments and version-specific AST changes. It is a polished, focused utility for developers working with Python's AST.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 1 reusable components found
microsoft/ML-For-Beginners ★ 89473 21961 DATA_RESEARCH

This repository is a comprehensive educational curriculum for Machine Learning, structured as a collection of Jupyter notebooks, data files, and instructional documentation. While it contains small application examples (a Vue.js quiz app and a Flask web app demo), the dominant character is data research and education, focusing on teaching ML concepts through practical data science workflows. The content covers Regression, Classification, Clustering, NLP, Time Series, and Reinforcement Learning, utilizing Scikit-learn as the primary modeling library. The codebase is organized into modular lesson directories, each containing notebooks, assignments, and solutions. It demonstrates a strong commitment to accessibility with extensive multi-language translations and a devcontainer setup for consistent environments. However, reproducibility is impacted by a reliance on external datasets (Kaggle, Dropbox) which are prone to link rot, and scattered dependency management across different lesson folders rather than a unified root configuration. Technically, the repository shows signs of medium drift, particularly in the quiz application which utilizes Vue 2 patterns instead of the modern Vue 3 Composition API. The core ML content remains relevant, but the educational infrastructure (translation services, external links) requires ongoing maintenance to ensure accuracy and availability. Despite this, it stands as a high-quality, reusable resource for learning ML pipelines and data engineering patterns.

RATING: 8.5/10 REPRO: 7.0/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
shareAI-lab/learn-claude-code ★ 77926 12501 APPLICATION

This repository is a comprehensive tutorial on building AI agent harnesses, structured as 17 progressive lessons. Each lesson introduces a single mechanism (tool use, permissions, hooks, planning, subagents, skill loading, context compaction, memory, task system, background tasks, cron scheduler, agent teams, MCP integration, workflow runtime, and goal loop) that extends a core agent loop without modifying it. The harness enables a language model (Claude) to perceive, reason, and act through tool interactions while managing context, permissions, and collaboration. The repository includes runnable Python implementations for each lesson and an interactive Next.js web application with visualizations for learning and experimentation.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 3 reusable components found
makeplane/plane ★ 60340 5962 APPLICATION

Plane is an open-source, self-hosted project management platform that provides issue tracking, sprint planning (cycles), modules, pages (wiki), views, analytics, and real-time collaborative editing. The repository is a monorepo containing a Django REST API backend with Celery workers, multiple React frontends (main web app, public space app, admin panel), and a Hocuspocus-based live collaboration server. The architecture follows a service-oriented pattern with shared packages for UI components, editor extensions, types, utilities, and state management via MobX. The codebase demonstrates strong engineering practices with a rich filter system, extensible permission model, and a clean exporter pattern, though it shows signs of ongoing migration from Next.js to React Router and some code duplication across apps.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
9001/copyparty ★ 46903 1904 APPLICATION

copyparty is a portable, multi-protocol file server written in Python. It serves files over HTTP/WebDAV, FTP, SFTP, TFTP, and SMB/CIFS, with a rich web UI for browsing, uploading (resumable, chunked, deduplicated), searching, and media playback. The server supports user authentication, per-volume permissions, event hooks, metadata extraction, thumbnail generation, and audio transcoding. It can run on minimal dependencies (Python 3.3+), and is packaged as a self-extracting script, Docker image, or native installer. The architecture is modular: a central service hub (SvcHub) orchestrates protocol servers, a virtual filesystem (VFS) enforces permissions, and a broker pattern handles parallel tasks. The codebase includes a large set of example hooks, handlers, and plugins for customization. While the project is actively maintained and well-documented, it carries some technical debt from supporting very old Python versions and vendored libraries.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
microsoft/Data-Science-For-Beginners ★ 36654 7423 DATA_RESEARCH

This repository is a comprehensive educational curriculum for Data Science, structured as a 10-week, 20-lesson course designed for beginners. It functions primarily as a data_research asset, containing Jupyter notebooks, R scripts, Python examples, and curated datasets (CSV, TSV) used for Exploratory Data Analysis (EDA) and visualization. The content covers the full data lifecycle, from data definition and ethics to cloud deployment on Azure, utilizing tools like Pandas, Matplotlib, Seaborn, and ggplot2. While the core is educational data content, it includes a hybrid application component: a Vue.js-based quiz application (`quiz-app`) used for assessments. The repository is heavily localized, with content translated into dozens of languages using an AI translation service, which introduces a specific maintenance pattern involving disclaimers about translation accuracy. The data lineage is well-documented, sourcing datasets from Kaggle, USDA, and Wikipedia, with clear licensing information provided. The codebase is optimized for learning rather than production engineering. Notebooks serve as the primary execution environment, demonstrating data cleaning, visualization, and basic statistical analysis. The architecture is flat and modular, organized by lesson topics (Introduction, Working With Data, Visualization, Lifecycle, Cloud). It is highly valuable for educators and learners seeking reproducible data science examples, though the heavy reliance on AI translation and mixed Vue versions (2 vs 3) presents technical drift risks.

RATING: 8.5/10 REPRO: 8.5/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
onyx-dot-app/onyx ★ 32314 4519 APPLICATION

Onyx is a comprehensive enterprise AI platform that provides knowledge retrieval, chat, and document indexing across 50+ third-party sources. The codebase reveals a FastAPI backend with Celery workers, PostgreSQL with Alembic migrations, OpenSearch vector search, Redis caching, and a separate model server. The frontend is a Next.js application with a custom design system (opal), alongside React Native mobile app, Go CLI, Chrome extension, and an embeddable widget. The platform supports deep research, custom agents, MCP servers, sandboxed code execution (Craft), and enterprise features like SSO, SCIM, billing, and multi-tenancy. Architecture is well-structured with clean separation of concerns, but the large codebase shows some drift: platform duplication across web/mobile/CLI, extensive Alembic migration history, and lint debt. The connector framework and design system are high-quality reusable components.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
oraios/serena ★ 30180 2053 APPLICATION

Serena is a production-grade MCP (Model Context Protocol) server that provides AI coding agents with deep code intelligence across 40+ programming languages. It acts as an 'IDE for your agent', offering symbol-level retrieval, editing, refactoring, and debugging capabilities by orchestrating Language Server Protocol (LSP) backends. The system is designed to integrate with AI clients like Claude Code, Codex, Copilot, and Grok, exposing a rich set of tools for file manipulation, symbol navigation, memory persistence, and project configuration. Architecturally, Serena is a Python application with a CLI entry point that starts an MCP server, a Flask-based web dashboard for monitoring and configuration, and a hooks system for client-side pre-tool-use events. Its core is the `solidlsp` package, a custom synchronous LSP abstraction layer that manages the lifecycle of 40+ language servers (Python, TypeScript, Rust, Go, Java, etc.), handling initialization, capability negotiation, and request/response framing. The `interprompt` library provides a sandboxed Jinja templating engine for prompt generation, and the memory manager persists project-specific context across sessions. Key features include: multi-language symbol search, references, definitions, hover, rename, and diagnostics; a code editor abstraction supporting both LSP and JetBrains backends; a configurable tool registry with automatic discovery; and a comprehensive test suite with per-language integration tests. The project emphasizes reproducibility through pinned dependency versions and SHA256 verification for downloaded language server binaries, though this creates a maintenance burden as versions must be manually updated.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
ArchiveBox/ArchiveBox ★ 28727 1614 APPLICATION

ArchiveBox is a self-hosted internet archiving platform that captures web pages in multiple durable formats (HTML, PDF, screenshots, WARC, text, JSON) and stores them locally. It provides a CLI (rich-click), a Django web UI with admin interface, a REST API (Django Ninja), and background workers managed by supervisord. The system is event-driven via the `abx-dl` bus, with services projecting events to database models (Snapshot, ArchiveResult, Crawl, Process, Machine, Persona). Key entry points include the CLI commands (`add`, `extract`, `crawl`, `run`, `search`, `server`), the web UI at `/add/` and `/admin/`, and the REST API at `/api/v1/`. External dependencies include Python 3.13+, Django 6.1, SQLite/PostgreSQL, Chromium, wget, yt-dlp, and various Node.js tools (puppeteer, single-file-cli). The architecture is a Django monolith with a plugin-based extraction pipeline, supporting scheduled archiving, recursive crawling, Memento protocol, and cryptographic proof verification (TLSNotary, OpenTimestamps).

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
ranaroussi/yfinance ★ 25432 3434 APPLICATION

yfinance is a mature Python library that provides programmatic access to Yahoo Finance market data. It is primarily an application/library, not a data research project, though it includes data repair and cleaning utilities. The library exposes a high-level API (Ticker, download, Search, Lookup, Market, Screener) that fetches historical prices, fundamentals, financial statements, holders, analysis, and more from Yahoo's various JSON endpoints. It handles Yahoo's quirks (cookie/crumb authentication, timezone issues, data errors) and includes a sophisticated price repair pipeline that detects and corrects common data anomalies like 100x unit mixups, bad stock splits, zero values, and dividend double-counting. The architecture is monolithic with modular scrapers and utilities. It has extensive test coverage (though currently failing in CI), active maintenance, and a large user base (25k+ stars). The codebase is well-structured with reusable utility functions, but some legacy artifacts (Travis CI, disabled pytest workflow) and heavy reliance on heuristic repair logic introduce medium technical drift.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
xonsh/xonsh ★ 9668 749 APPLICATION

Xonsh is a cross-platform, Python-powered interactive shell that combines Python syntax with shell subprocess commands. The codebase implements a full shell environment with a custom parser (PLY-based with version-specific extensions), an execution engine that compiles xonsh code to Python AST, a rich tab-completion system with multiple backends (bash, git, pip, python, custom completers), a pluggable history backend (JSON, SQLite), a prompt system with git status and virtualenv information, and a subprocess management layer with job control. It also includes CLI tools for formatting, linting, and interactive configuration (xonfig wizard and web UI). The architecture is monolithic with a clear module structure: parsers, executers, completers, prompts, history, procs, and shells. External dependencies include prompt_toolkit, pygments, and PLY (vendored). The repository is actively maintained with frequent releases, supports Python 3.10+, and has an extensive test suite. Some technical drift exists due to deprecated API shims, multiple parser versions, and LLM-generated tests, but the core is well-engineered.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 5 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
$ loading more...
$ submit: