Skip to content
Leonard Ramminger edited this page May 10, 2026 · 3 revisions

ReqPack Wiki

Next: User Guide | Jump: Extending ReqPack | Jump: Architecture

ReqPack is a universal package-manager orchestrator. It gives you one CLI, one planning layer, and one audit/export surface across multiple ecosystems. In most cases ReqPack delegates real package-manager work to plugins that wrap existing tools; rqp is the exception because it is built into ReqPack itself.

This wiki is organized from three viewpoints:

  1. Using ReqPack: how to install, configure, audit, automate, and operate it day to day.
  2. Extending ReqPack: how to add plugins, registries, rqp packages, and custom ecosystems.
  3. Understanding ReqPack internals: how the system is structured, where things live, and how components work together.

Quick Overview

  • ReqPack is not one universal package format. It is one CLI and orchestration layer across many package ecosystems.
  • ReqPack is user-first: install, remove, update, audit, export SBOMs, snapshot environments, and automate package operations from one CLI.
  • ReqPack is extension-friendly: you can add thin Lua wrapper plugins, proxy plugins, native rqp packages, custom repositories, and native C++ plugins.
  • ReqPack is layered: CLI -> config -> registry -> planner -> validator -> executor -> plugin runtime.

CLI Cheat Sheet

Task Command
Install packages rqp install apt curl git
Install manifest rqp install .
Refresh wrappers rqp update --all
Self-update ReqPack rqp update
Audit project rqp audit .
Export SBOM rqp sbom --format cyclonedx-json --output sbom.json
Snapshot installed state rqp snapshot --output reqpack.lua
Run non-interactive CI-safe command rqp install ... --non-interactive --stop-on-first-failure
Use more workers rqp update --all --jobs-max
Refresh host cache rqp host refresh

Key Terms

  • System: user-facing ecosystem name in commands such as apt, dnf, npm, rqp, or proxy names such as java.
  • Plugin: code ReqPack loads for a system. Today this usually means a Lua plugin; rqp is built-in native plugin.
  • Registry: metadata and source map that tells ReqPack where plugins come from and what trust data they carry.
  • Wrapper plugin: thin plugin that delegates to an existing package manager.
  • Native rqp package: package installed directly by ReqPack instead of by another package manager.
  • Remote profile: named client connection definition in remote.lua.

Recommended Reading Order

If your goal is using ReqPack:

  1. User Guide
  2. Getting Started
  3. Command Reference
  4. Configuration
  5. Configuration Reference
  6. Security, Audit, and SBOM
  7. Output and Report Formats
  8. Remote Mode
  9. Remote Protocol Reference
  10. Using Native rqp Packages

If your goal is adding your own ecosystem or package manager:

  1. Extending ReqPack
  2. Choosing an Extension Model
  3. Writing Lua Plugins
  4. Lua Plugin Cookbook
  5. Testing Lua Plugins
  6. Building Registry Entries
  7. Building rqp Packages and Repositories
  8. Building Native C++ Plugins

If your goal is understanding the system:

  1. Architecture
  2. Architecture Overview
  3. Execution Flow
  4. Data, State, and Trust

Section Map

User-first documentation

Extension documentation

Architecture documentation

What This Wiki Covers

  • Where config, cache, registry, plugin, history, and security data live.
  • Which config knobs are active today versus accepted-but-partial runtime surface.
  • How to start ReqPack locally, through stdin automation, or as a remote server.
  • How to configure security policies and test vulnerability workflows locally.
  • How to create wrapper plugins, proxy plugins, native rqp packages, repositories, and native built-in package managers.
  • How request resolution, planning, validation, execution, and output rendering fit together.

Next: User Guide | Jump: Extending ReqPack | Jump: Architecture

Clone this wiki locally