-
Notifications
You must be signed in to change notification settings - Fork 4
Development
Juan Manuel Daza edited this page Jul 21, 2026
·
1 revision
Hub development setup and workflows.
# Clone the repository
git clone https://github.com/reverberage/hub.git
cd hub
# Create virtual environment
python -m venv .venv
source .venv/bin/activate
# Install dependencies
pip install -e ".[dev]"| Command | Purpose |
|---|---|
pytest |
Run tests |
ruff check . |
Lint code |
ruff format . |
Format code |
mypy . |
Type check |
python scripts/scaffold-satellite.py <name> |
Scaffold new satellite |
python scripts/qwen_fallback.py --status |
Check model quota |
python scripts/qwen_fallback.py --rotate |
Rotate opencode model |
hub/
├── docs/ # Architecture, protocol specs, roadmap
│ ├── architecture.md
│ ├── satellite-protocol-v2.md
│ ├── roadmap.md
│ ├── qwen-model-catalog.md
│ └── wiki-*/ # Wiki content for each repo
├── scripts/
│ ├── scaffold-satellite.py # Generate new satellite skeleton
│ └── qwen_fallback.py # Model quota rotation
├── tests/ # Hub-level tests
├── .opencode/ # Agent definitions, skills, commands
│ ├── agents/ # Subagent definitions
│ ├── skills/ # Skill instructions
│ └── commands/ # Slash command definitions
├── AGENTS.md # Coding standards
├── CONTRIBUTING.md # Contribution guide
├── opencode.json # opencode config (generated)
└── opencode.template.json # Template for rotation
python scripts/scaffold-satellite.py <name>
# Creates rvrb-<name>/ with:
# - pyproject.toml (hatchling build, entry points)
# - src/rvrb_<name>/ (mandatory kernel + optional modules)
# - tests/ (with MockProvider)The scaffold follows satellite protocol v2.
# Check status of all 81 models
python scripts/qwen_fallback.py --status
# Rotate to next available model
python scripts/qwen_fallback.py --rotate
# Force specific model
python scripts/qwen_fallback.py --rotate --model qwen3.7-plus
# Update tracking doc
python scripts/qwen_fallback.py --trackThe rotation script manages the opencode.json config file, rotating through available models when quota is exhausted.
The hub uses Spec-Driven Development (SDD) for changes:
/sdd-new "description of change"
This runs the 8-phase pipeline:
- Explore — understand the codebase
- Propose — generate solution approaches
- Spec — write acceptance criteria
- Design — create technical design
- Tasks — break into implementation steps
- Apply — implement the code
- Verify — audit against spec
- Archive — persist to memory
The hub contains the N3RVERBERAGE orchestration agent (.opencode/agents/n3rverberage.md). It coordinates:
- SDD pipeline execution
- Project board updates
- Memory persistence (MAGI)
- A2A task routing
Wiki content is stored in docs/wiki-*/ directories. Each satellite repo has its own wiki:
docs/wiki-rvrb-transcriber/ # Transcriber wiki (10 pages)
docs/wiki-rvrb-verify/ # Verify wiki (10 pages)
docs/wiki-rvrb-hear/ # Hear wiki (10 pages)
docs/wiki-rvrb-see/ # See wiki (10 pages)
docs/wiki-hub/ # Hub wiki (10 pages)Push wikis to GitHub using the push-wiki.sh script in each directory.
# Run all tests
pytest
# Run with coverage
pytest --cov
# Run specific test file
pytest tests/test_scaffold.pyBefore submitting a PR:
ruff check .
ruff format --check .
mypy .
pytestAll must pass.
reverberage hub — Meta-repository for the reverberage ecosystem.
Composable MCP-native toolkits for audio, video, and text.
- rvrb-transcriber — Audio/video transcription
- rvrb-verify — Claim verification
- rvrb-transform — Text transformation
- rvrb-hear — Audio comprehension
- rvrb-see — Image understanding
License: Apache-2.0