The CEM UI kit (cem-ui registry/): tokens, brand assets, layout primitives, utilities, engines, frames, templates, components (one per job) and the old partials. Without a kind, the count of each kind and their ids; with one, every entry of that kind. Kinds: token, asset, primitive, utility, engine, frame, template, component, partial.
Parameterskind
ui_search
Search the UI kit
Find UI kit entries (cem-ui registry/) whose id, name or any recorded field holds every word of the query. Returns the best matches, id first.
Parameterskindlimitqueryrequired
One UI kit entry in full, as cem-ui registry/ records it: by id ("site-header", "shell", "spacing", "CRP:ask-cem-panel"), component tag ("x-site-header") or name.
Parametersidrequiredkind
ui_laws
Read the design laws
The CEM design laws, cem-ui LAWS.md, the one rules document. Without a law, the whole file. With a number (1 to 20), that law as written. With words ("accent edge", "white"), every law that holds all of them.
Parameterslaw
ui_check
Run the laws check
Run cem-ui's laws check (scripts/laws.mjs, `npm run laws`) and return its table: each law's check, the count now, and the baseline it may not rise above. It checks cem-ui's own css/ and templates/; it takes no other repo. With a check name, every finding for that check (laws.mjs --list). Never records a baseline.
Parameterscheck
calculators_list
List the calculators
The 21 CEM calculators, the same on every site (cem-ui registry/tools.json), with what each measures, and its page and formula code from CRP's search index when CRP is up.
Takes no parameters.
calculator_get
Get a calculator
One calculator: what it measures (cem-ui registry/tools.json), its inputs with their defaults, and its formula as the calculator's own code computes it (templates/tool-calcs/{slug}.blade.php: the recalc function, the helpers it calls and its constants), and the citation it gives.
Parametersslugrequired
cem_score
Score the CEM Score self-assessment
Score answers to the CEM Score self-assessment (24 questions, 12 dimensions) by the calculator's own rules (cem-ui templates/tool-calcs/cem-score.blade.php: getDimGrade, updateScores). Without answers, the 24 questions with each answer's score. Answers are keyed by question (d1q1 … d12q2), each the chosen answer's score, 1 to 5. Nothing is stored.
Parametersanswers
research_search
Search the research
Find CEM research by words or code in CRP's public search index (GET /search/index.json): papers, playbooks, case studies, book chapters, figures, calculators and pages. Every word must match the title, full title, summary or code. Returns each result's code, title, kind and address.
Parameterskindlimitqueryrequired
reviews_search
Search the tool reviews
Find CEM's reviews of software tools (reviews.cemresearchproject.org): tool reviews, product pages with their listed prices, buying guides and categories, by words. Every word must match the title or summary. Returns each result's title, kind, summary and page. These are reviews of tools, separate from CEM's research.
Parameterskindlimitqueryrequired
research_get
Get research by code
One public CEM document by its code (DOI-07, PB-011, …): its entry in CRP's search index and its markdown from work-hub content/ (located through the content_index table). Only codes CRP lists publicly are served.
Parameterscoderequiredmax_chars
Use for any question about CEM (the Compounding Execution Method) or a term it defines, such as the Drift Tax, the Pendulum, the Governor, Sweeps, Cycles or operator levels, and for questions about building or operating with AI that CEM's research covers. Returns CEM's own definition with its code (cite it, e.g. F-003) and the best research documents, each with its code, one-line summary and page. Free and instant. Use it first; ask_cem writes a longer answer when someone wants to go deeper.
Parametersquestionrequired
A longer written answer from CEM's research, with the passages it drew on and their pages. Use it only after cem_answer, and only when the person asks to go deeper or wants more than the definition and documents give: for what a term means, cem_answer is the answer, free and instant. At most 100 written answers a day across every channel; past that, or when the AI account can't answer, it returns the closest research instead.
Parametersquestionrequired
OP-01's view: the operator in CEM's research, the one person whose every commit, session and dollar the research measures. By default, free and instant: OP-01's published positions that bear on the question, each with when it applies, and the closest published research; write the answer from them in your own words and keep his positions apart from what you infer. With deeper: true, a written answer in OP-01's own voice from the same material, counted on the same daily limit as ask_cem; use it only when the person asks to go deeper. For the method's own view, use cem_answer.
Parametersdeeperquestionrequired