Extracted 52 files from Timmy_Foundation/hermes-agent (gitea/main) into hermes-sovereign/ directory to restore clean upstream tracking. Layout: docs/ 19 files — deploy guides, performance reports, security docs, research security/ 5 files — audit workflows, PR checklists, validation scripts wizard-bootstrap/ 7 files — wizard environment, dependency checking, auditing notebooks/ 2 files — Jupyter health monitoring notebooks scripts/ 5 files — forge health, smoke tests, syntax guard, deploy validation ci/ 2 files — Gitea CI workflow definitions githooks/ 3 files — pre-commit hooks and config devkit/ 8 files — developer toolkit (Gitea client, health, notebook runner) README.md 1 file — directory overview Addresses: #337, #338
57 lines
1.9 KiB
Markdown
57 lines
1.9 KiB
Markdown
# Bezalel's Devkit — Shared Tools for the Wizard Fleet
|
|
|
|
This directory contains reusable CLI tools and Python modules for CI, testing, deployment, observability, and Gitea automation. Any wizard can invoke them via `python -m devkit.<tool>`.
|
|
|
|
## Tools
|
|
|
|
### `gitea_client` — Gitea API Client
|
|
List issues/PRs, post comments, create PRs, update issues.
|
|
|
|
```bash
|
|
python -m devkit.gitea_client issues --state open --limit 20
|
|
python -m devkit.gitea_client create-comment --number 142 --body "Update from Bezalel"
|
|
python -m devkit.gitea_client prs --state open
|
|
```
|
|
|
|
### `health` — Fleet Health Monitor
|
|
Checks system load, disk, memory, running processes, and key package versions.
|
|
|
|
```bash
|
|
python -m devkit.health --threshold-load 1.0 --threshold-disk 90.0 --fail-on-critical
|
|
```
|
|
|
|
### `notebook_runner` — Notebook Execution Wrapper
|
|
Parameterizes and executes Jupyter notebooks via Papermill with structured JSON reporting.
|
|
|
|
```bash
|
|
python -m devkit.notebook_runner task.ipynb output.ipynb -p threshold=1.0 -p hostname=forge
|
|
```
|
|
|
|
### `smoke_test` — Fast Smoke Test Runner
|
|
Runs core import checks, CLI entrypoint tests, and one bare green-path E2E.
|
|
|
|
```bash
|
|
python -m devkit.smoke_test --verbose
|
|
```
|
|
|
|
### `secret_scan` — Secret Leak Scanner
|
|
Scans the repo for API keys, tokens, and private keys.
|
|
|
|
```bash
|
|
python -m devkit.secret_scan --path . --fail-on-find
|
|
```
|
|
|
|
### `wizard_env` — Environment Validator
|
|
Checks that a wizard environment has all required binaries, env vars, Python packages, and Hermes config.
|
|
|
|
```bash
|
|
python -m devkit.wizard_env --json --fail-on-incomplete
|
|
```
|
|
|
|
## Philosophy
|
|
|
|
- **CLI-first** — Every tool is runnable as `python -m devkit.<tool>`
|
|
- **JSON output** — Easy to parse from other agents and CI pipelines
|
|
- **Zero dependencies beyond stdlib** where possible; optional heavy deps are runtime-checked
|
|
- **Fail-fast** — Exit codes are meaningful for CI gating
|