moxpp-add-project — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited moxpp-add-project (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Help the developer add a new sub-project to this MoxPP workspace. Work through the steps below interactively — ask for any information you don't already have before making changes.
Read mox.lua and check cmox_project_architecture:
flat, hierarchical, or manual first. Warn the user and ask how they want to proceed before continuing.src/<project-name>/.src/<group>/<project-name>/.include call in cmox_function_includeprojects() inside mox.lua.Ask the user for the following if not already provided via $ARGUMENTS:
C++ (default), C, or C#console — console executablewindowed — GUI executable (no console window, Windows only)sharedlib — shared library (.dll / .so / .dylib)staticlib — static libraryutility — custom build actions, no code outputnone — header-only, no build outputlinks {} against. Ask separately if build order matters (dependson {}).sharedlib or staticlib, ask whether the unit test project should link against this project (adds mox_test_requirement()).<name>/<version> format. Ask whether any need options changed. (Only relevant for C++ and C projects; skip for staticlib and none since they don't link Conan deps directly.)Generate a UUID by running python -c "import uuid; print(uuid.uuid4())" via Bash and use the output in the new build.lua.
build.luaCreate the directory according to the architecture layout determined in step 1.
Write build.lua using the gathered information:
mox_project("<ProjectName>", "<output_name>")
mox_cpp() -- or mox_c() / mox_cs()
mox_console() -- or mox_windowed() / mox_sharedlib() / mox_staticlib() / mox_utility() / mox_none()
uuid("<generated-uuid>")
-- mox_test_requirement() -- uncomment if this lib is needed by the unit tests
-- links {
-- "OtherProject",
-- }
-- dependson {
-- "OtherProject",
-- }Uncomment and fill in only the sections that apply. Remove unused comment blocks.
For console and windowed projects: create <project-dir>/main.cpp with a minimal main() function. For sharedlib or staticlib: create <project-dir>/<output_name>.h and <project-dir>/<output_name>.cpp with an empty placeholder. Also create <project-dir>/dummy.cpp containing a single empty translation unit (// dummy). This file is required on Windows — without at least one compiled .cpp, MSBuild will not produce a .lib output and any project that links against this one will fail to build. For utility or none: no source file needed.
conanfile.py and CLAUDE.md (if new Conan packages were requested)Add the new self.requires(...) calls and any self.options[...] entries to conanfile.py. Then update the ## Conan Dependencies section in CLAUDE.md to include the newly added packages.
mox.lua if neededsingle to flat/hierarchical: update cmox_project_architecture.manual architecture: remind the user to add the include call in cmox_function_includeprojects().startproject in cmox_function_setupworkspace().List all files created or modified and remind the user to run mox init (or ./mox.sh init) to regenerate project files.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.