otakup0pe/magicbeam
55.1
Adequate · 17 September 2026
1.9k
lines of production code
Erlang
primary language
1
measurement over time
What this system is
This system is an Erlang/OTP application designed for runtime code manipulation and process control. It provides capabilities for hot-reloading modules, injecting and killing remote processes, and managing interactive shells on remote nodes. The project has been modernized with a rebar3 build system and Dockerized testing infrastructure.
Features
Introduce magicbeam application with hot-reload, process injection, and interactive shell capabilities
The src area now contains the core magicbeam application, consolidating previous components into a unified OTP structure. This introduces hotbeam for monitoring and reloading Erlang modules, thunderbeam for aggressive process injection and killing, and shellbeam for an interactive REPL with subshell support. The application provides command-line tools to inject magicbeam into remote nodes via SSH or RPC, manage application environments, and control hot-reload and process-killing behaviors through a structured shell interface.
src · high confidence
Behavioural changes
Project modernization: OTP 27 requirement, rebar3 build, and Dockerized testing
The project now requires Erlang/OTP 27 or later and has migrated its build system to rebar3, including a new rebar.config that pulls the getopt dependency and produces an escript. A new Makefile and Dockerfile.test provide a standardized way to build and run tests via Docker, while the .gitignore has been updated to exclude build artifacts and lockfiles. The README has been refreshed to document the new installation and configuration steps, and the LICENSE file has been updated to reflect current copyright holders.
(repo-wide) · high confidence
Refactor include files to support Hotbeam, Shellbeam, and Thunderbeam features
The include directory has been restructured to consolidate configuration and helper macros for the system's core capabilities. New header files define records and macros for Hotbeam (hot-reloading), Shellbeam (interactive shell injection), and Thunderbeam (process killing/injection), replacing the legacy Thunderbeam-specific headers. Logging macros have been migrated from the deprecated error\_logger to the standard logger, and new helper macros for handling specific process states (like 'seppuku') have been added to support the new injection and reloading behaviors.
include · high confidence
Test coverage
Added unit tests for utility functions and shell command parsing
Added new EUnit test suites for \magicbeam\_util\ (covering random number generation and application environment lookups) and \shellbeam\ (covering command argument matching, tab completion logic, and format string upgrades), along with a helper module for shell command definitions.
test · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Baseline
- First survey — no prior run to compare against. CAI 55.
Lenses
- Code Health 96
- Architecture 100
- Maturity 37
- Readiness 46
- Security 96
Changes since last survey
- 102 commits — 100 feature/other, 2 fixes
By area
- (root) — 34 commits
- src/shellbeam.erl — 14 commits
- src/hotbeam.erl — 13 commits
- include/magicbeam_config.hrl — 9 commits
- include/magicbeam.hrl — 5 commits
- src/magicbeam.erl — 5 commits
- src/magicbeam_app.erl — 5 commits
- src/magicbeam.app.src — 4 commits
- src/magicbeam_shell.erl — 3 commits
- src/magicbeam_util.erl — 3 commits
- (repo) — 2 commits
- include/helpers.hrl — 1 commit
- include/thunderbeam.hrl — 1 commit
- src/thunderbeam.erl — 1 commit
- web/bootstrap.css — 1 commit
- web/index.html — 1 commit
Notable commits
- fix: * fix hotbeam:lazyload/1 * removed spurious debugging
- fix: fix edoc string
- change: * ...
- change: * ....
- change: * CI script * proper loading of magicbeam * ability to open magicbeam shell on (injected) remote node
- change: * FIRST POST ( initial / partial move of nomura_test_killer )
- change: * ability to start sshd when injecting into running node
- change: * able to load/unload app
- change: * additional exception handling on output * modules/prompt loaded out of app env
- change: * always return ok from rpc_stop * removed 'nomura' reference
- change: * attempt to automagically start ssh support.
- change: * basic shellbeam parsing tests
- change: * better default shellbeam prompt * removed shellbeam:start/0 test function
- change: * bits and pieces of usability improvement. better errors, tweaked command line args. ability to whitelist apps for thunderbeam
- change: * builds !
- change: * bump src_time regardless of success (so we don't keep trying bad compiles)
- change: * bump version
- change: * closer to blending
- change: * credit where credit is due
- change: * don't use gregorian seconds internally. helps with reductions at expense of memory usage.
- …and 82 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
otakup0pe/magicbeam was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 17 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit faf80871e5d596c237b484aeb4e31c7eb40c379f — the exact code this score is about.
- Scored under rubric-2026.09.13 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-d1ef6c0bd534.