Repository navigation
Search and Audits
NeuralIO444 edited this page Oct 1, 2026
·
1 revision
Everything you scrape goes into one local index. From it you can search, audit plugins, and trace a missing asset or font to the exact nested composition path.
First, scrape projects with the AE Scraper and index the receipts:
mj index.add path=/work/receiptsmj trace.asset format=missing
mj trace.asset target="logo.psd"
mj trace.asset format=font target="Brandon Grotesque"
mj audit.plugins target=S_Glow
mj audit.plugins
-
trace.assetshows, for each project, every layer that uses the asset or font and the full nesting chain from a root comp down, for exampleMain > Mid > Inner.format=missinglists every missing asset. Addpath=/the/project.aepto look at one project. -
audit.plugins target=<matchName>lists the unique projects that use that exact effect (case-sensitive). With no target it lists every effectmatchNamein the index with how many projects use it, which is the annual plugin audit. - Only each project's newest indexed scrape counts. Projects that were never scraped are not covered.
MographJailed keeps one local database in ~/Library/Application Support/MographJailed (set MJ_STORE_DIR to use another folder). It is created with owner-only permissions on the first command that writes to it, and must be on a local drive.
mj index.add path=/work/receipts
mj index.search target="glow logo"
mj index.verify
-
index.addreads scrape receipts, snapshot receipts, golden records and handoff manifests, from a file or a folder (searched recursively). Unchanged files are skipped. Other JSON is ignored. -
index.searchmatches words as prefixes, requires all of them, and ranks the best first. It finds comps, layers, effects, expressions, fonts, footage, snapshots, golden records, handoffs and presets. Punctuation and search operators in your words are ignored. -
index.verifychecks the database, finds receipts that no longer exist on disk, and re-checks every stored preset against its hash.
Before anything is indexed, search and verify answer STORE_EMPTY and create nothing.
mj preset.add path=/work/presets/soft_glow.ffx label=soft_glow
mj preset.get label=soft_glow output=/work/out
mj preset.get label=soft_glow output=/work/out version=1
- Stores any file (up to 512 MB):
.ffx,.aet,.mogrt, expressions,.c4d, Redshift materials. - Each label keeps versions. Adding identical bytes again does not make a new version.
-
preset.getchecks the stored hash, then writes the original filename (orname-v1.extif that exists). It never overwrites.
Learn