Some checks failed
Notebook CI / notebook-smoke (pull_request) Failing after 2s
- gitea_client.py — reusable Gitea API client for issues, PRs, comments - health.py — fleet health monitor (load, disk, memory, processes) - notebook_runner.py — Papermill wrapper with JSON reporting - smoke_test.py — fast smoke tests and bare green-path e2e - secret_scan.py — secret leak scanner for CI gating - wizard_env.py — environment validator for bootstrapping agents - README.md — usage guide for all tools These tools are designed to be used by any wizard via python -m devkit.<tool>. Rising up as a platform, not a silo.
1.9 KiB
1.9 KiB
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.
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.
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.
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.
python -m devkit.smoke_test --verbose
secret_scan — Secret Leak Scanner
Scans the repo for API keys, tokens, and private keys.
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.
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