draft — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited draft (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.
This skill resolves placeholders against ~/.claude/state/personal_config.json. See _config/README.md and _config/personal_config.example.json for setup. If the config is missing or a needed field is unset, the skill must surface an error to the user and refuse to proceed rather than guess.
Required config fields:
personal_config.user.voice_style_ref — path to a .tex or .md file containing the user's voice fingerprint (preferred macros, hedging vocabulary, citation idioms). If unset, this skill cannot reliably match a personal voice and must ask whether to use a neutral academic register instead.personal_config.paths.overleaf_root — root directory containing all project subdirs.personal_config.projects[] — each entry declares name, overleaf_subdir, main_tex, optional bib_file, optional nickname and aliases, optional stage (e.g. "working paper", "R&R at MKSCI").The user writes for quantitative-marketing journals (Marketing Science, JMR, JCR, Management Science) and similar venues. Their LaTeX is on Overleaf, synced through Dropbox. They write the final word themselves in Overleaf — this skill's job is to deliver a clean draft that already sounds like them, with the citations and macros they actually use, so the manual edit pass is small.
Re-read these on every invocation. Personal voice is precise — summarizing from previous-turn memory is not acceptable.
preamble.tex first; fall back to the first ~100 lines of the main .tex if no separate preamble exists.\citep{} keys are real, not hallucinated. If the user names a paper that isn't in the .bib, surface that and route them to /cite rather than fabricating a key.If any of (1)-(4) is missing, surface the gap and ask once before proceeding.
The user's projects live under personal_config.paths.overleaf_root. Pick the project in this order:
personal_config.projects[].Each project entry in personal_config.projects[] should expose enough to locate its main file and bib:
| Config field | Meaning |
|---|---|
name | Canonical project name |
nickname / aliases | User shorthand the skill can match against free-form mentions |
overleaf_subdir | Subdirectory under overleaf_root |
main_tex | Filename of the main .tex (e.g. main.tex, mainR2.tex) |
bib_file | Filename of the .bib |
stage | Optional — e.g. "JMP", "R&R at MKSCI (R2)", "working paper" |
voice_style_refThese are the "non-negotiables" — they're what makes the draft sound personal and not like Claude default.
\citep{key} is the default (parenthetical). \citealt{key} when already in a sentence and the author name with no parens is needed. \citet{key} only when the author is the grammatical subject. Never \cite{}. In appendices, the project may use \citealtlatex / \citeplatex — check preamble.\Cref{fig:...}, \Cref{tab:...}, \Cref{sec:...}. Never Figure~\ref{...} or Section 3.\emph{...} for technical/conceptual emphasis (the workhorse). \textbf{} reserved for genuinely critical claims — sparingly. Italics on first-use of a term being defined.\begin{figure} / \begin{table} block is followed by \begin{minipage}{\textwidth}\footnotesize \emph{Notes:} <detailed notes>\end{minipage}. If the notes are not known, write a placeholder and tag % TODO. Sample minipage: \begin{minipage}{\textwidth}
\footnotesize \emph{Notes:} % TODO: describe sample, what is plotted, controls absorbed, CI level, data source.
\end{minipage}\bphi, \bomega, \bz, \bw, \bs, \bm{\theta}, \bm{\psi}, \bm{\gamma}, \bm{\alpha}, \bm{\beta}) over \boldsymbol{...}. Check preamble.15\% not "15 percent".Intro (5–7 paragraphs typical for MKSCI) — Hook with a substantive phenomenon or puzzle (not a methodological one). Position relative to three short streams of prior work in 1–2 sentences each. State the gap. State the contribution as 3 bullets max. Preview findings concretely (one effect-size sentence per main finding). End with a roadmap paragraph.
Lit Review — Three streams, one paragraph each. Each opens with the stream's name and the core idea, surveys 4–8 key papers with \citep{} (sentence-by-sentence, not piled at the end), and ends with one sentence positioning the current paper relative to the stream. End the section with a 1-paragraph synthesis.
Method — Plain-English description first, formal model second. Define notation as you introduce it. State assumptions explicitly as \textbf{Assumption 1.} blocks when there are multiple. Use the project's existing bold-math macros from preamble.
Empirical Setting / Data — Describe the setting in narrative form (one paragraph), then bullet or table the data sources, sample windows, observation counts, and any pre-registration. Always include a sample-construction paragraph with explicit filters.
Empirics — Model-free first, model-based second. Each subsection leads with the question being answered. Each table/figure is anchored to a \Cref{tab:...} reference in the body text and accompanied by a notes minipage.
Discussion — What we found, what it means substantively (not statistically), implications for managers / researchers / policymakers, broader contributions. No new findings here.
Limitations — Explicit, enumerated. Don't bury. Each item: limitation + why it doesn't kill the paper + how future work could address. Three to five items typically.
Rewrite-in-my-voice — when the user pastes a paragraph, preserve all substantive claims exactly; adjust only phrasing, citation form, emphasis, and hedging to match style rules. If the change is substantial, show the old/new diff as % OLD: / % NEW: comment blocks inside the draft.
Write to: <project>/drafts/<section>_<YYYYMMDD>_claude.tex — create drafts/ if it doesn't exist.
Header comment block on every draft file:
% Draft generated by /draft on <YYYY-MM-DD>
% Section: <e.g., Introduction, Limitations>
% Project: <project name>
% Source style ref: <personal_config.user.voice_style_ref>
% Status: DRAFT — user to revise in Overleaf
% Inline TODOs flagged with % TODOThen the section content. Use % TODO: comments to flag:
% TODO: cite — paper on user-generated content)% TODO: fill N=)% TODO: confirm this matches Table 4)% TODO: user — should this go before or after the field-experiment paragraph?)Never invent: citation keys, numerical results, author names, paper titles, statistical claims not already in the data or results.
% TODO: item inline so the user knows what to fill.\citep{} keys used that don't appear in the project .bib — flag for /cite next.Do not modify the main .tex. Do not stage commits. Do not push to Overleaf. Dropbox sync handles propagation.
preamble.tex and the main .tex doesn't reveal macros, write the draft assuming \boldsymbol{...} and tag % TODO: confirm bold-math macros against preamble.\citep{TODO_smith2023} and tag the absence — don't fabricate keys that "look real".\Cref{tab:TBD_main} placeholders and tag each one % TODO: produce table first..tex directly — the user does precise edits in Overleaf./cite. Flag missing citations; don't fabricate them./litreview upstream of this skill./referee-response.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.