flonat-research 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/agents/domain-reviewer.md +336 -0
- package/.claude/agents/fixer.md +226 -0
- package/.claude/agents/paper-critic.md +370 -0
- package/.claude/agents/peer-reviewer.md +289 -0
- package/.claude/agents/proposal-reviewer.md +215 -0
- package/.claude/agents/referee2-reviewer.md +367 -0
- package/.claude/agents/references/journal-referee-profiles.md +354 -0
- package/.claude/agents/references/paper-critic/council-personas.md +77 -0
- package/.claude/agents/references/paper-critic/council-prompts.md +198 -0
- package/.claude/agents/references/peer-reviewer/report-template.md +199 -0
- package/.claude/agents/references/peer-reviewer/sa-prompts.md +260 -0
- package/.claude/agents/references/peer-reviewer/security-scan.md +188 -0
- package/.claude/agents/references/proposal-reviewer/report-template.md +144 -0
- package/.claude/agents/references/proposal-reviewer/sa-prompts.md +149 -0
- package/.claude/agents/references/referee-config.md +114 -0
- package/.claude/agents/references/referee2-reviewer/audit-checklists.md +287 -0
- package/.claude/agents/references/referee2-reviewer/report-template.md +334 -0
- package/.claude/rules/design-before-results.md +52 -0
- package/.claude/rules/ignore-agents-md.md +17 -0
- package/.claude/rules/ignore-gemini-md.md +17 -0
- package/.claude/rules/lean-claude-md.md +45 -0
- package/.claude/rules/learn-tags.md +99 -0
- package/.claude/rules/overleaf-separation.md +67 -0
- package/.claude/rules/plan-first.md +175 -0
- package/.claude/rules/read-docs-first.md +50 -0
- package/.claude/rules/scope-discipline.md +28 -0
- package/.claude/settings.json +125 -0
- package/.context/current-focus.md +33 -0
- package/.context/preferences/priorities.md +36 -0
- package/.context/preferences/task-naming.md +28 -0
- package/.context/profile.md +29 -0
- package/.context/projects/_index.md +41 -0
- package/.context/projects/papers/nudge-exp.md +22 -0
- package/.context/projects/papers/uncertainty.md +31 -0
- package/.context/resources/claude-scientific-writer-review.md +48 -0
- package/.context/resources/cunningham-multi-analyst-agents.md +104 -0
- package/.context/resources/cunningham-multilang-code-audit.md +62 -0
- package/.context/resources/google-ai-co-scientist-review.md +72 -0
- package/.context/resources/karpathy-llm-council-review.md +58 -0
- package/.context/resources/multi-coder-reliability-protocol.md +175 -0
- package/.context/resources/pedro-santanna-takeaways.md +96 -0
- package/.context/resources/venue-rankings/abs_ajg_2024.csv +1823 -0
- package/.context/resources/venue-rankings/abs_ajg_2024_econ.csv +356 -0
- package/.context/resources/venue-rankings/cabs_4_4star_theory.csv +40 -0
- package/.context/resources/venue-rankings/core_2026.csv +801 -0
- package/.context/resources/venue-rankings.md +147 -0
- package/.context/workflows/README.md +69 -0
- package/.context/workflows/daily-review.md +91 -0
- package/.context/workflows/meeting-actions.md +108 -0
- package/.context/workflows/replication-protocol.md +155 -0
- package/.context/workflows/weekly-review.md +113 -0
- package/.mcp-server-biblio/formatters.py +158 -0
- package/.mcp-server-biblio/pyproject.toml +11 -0
- package/.mcp-server-biblio/server.py +678 -0
- package/.mcp-server-biblio/sources/__init__.py +14 -0
- package/.mcp-server-biblio/sources/base.py +73 -0
- package/.mcp-server-biblio/sources/formatters.py +83 -0
- package/.mcp-server-biblio/sources/models.py +22 -0
- package/.mcp-server-biblio/sources/multi_source.py +243 -0
- package/.mcp-server-biblio/sources/openalex_source.py +183 -0
- package/.mcp-server-biblio/sources/scopus_source.py +309 -0
- package/.mcp-server-biblio/sources/wos_source.py +508 -0
- package/.mcp-server-biblio/uv.lock +896 -0
- package/.scripts/README.md +161 -0
- package/.scripts/ai_pattern_density.py +446 -0
- package/.scripts/conf +445 -0
- package/.scripts/config.py +122 -0
- package/.scripts/count_inventory.py +275 -0
- package/.scripts/daily_digest.py +288 -0
- package/.scripts/done +177 -0
- package/.scripts/extract_meeting_actions.py +223 -0
- package/.scripts/focus +176 -0
- package/.scripts/generate-codex-agents-md.py +217 -0
- package/.scripts/inbox +194 -0
- package/.scripts/notion_helpers.py +325 -0
- package/.scripts/openalex/query_helpers.py +306 -0
- package/.scripts/papers +227 -0
- package/.scripts/query +223 -0
- package/.scripts/session-history.py +201 -0
- package/.scripts/skill-health.py +516 -0
- package/.scripts/skill-log-miner.py +273 -0
- package/.scripts/sync-to-codex.sh +252 -0
- package/.scripts/task +213 -0
- package/.scripts/tasks +190 -0
- package/.scripts/week +206 -0
- package/CLAUDE.md +197 -0
- package/LICENSE +21 -0
- package/MEMORY.md +38 -0
- package/README.md +269 -0
- package/docs/agents.md +44 -0
- package/docs/bibliography-setup.md +55 -0
- package/docs/council-mode.md +36 -0
- package/docs/getting-started.md +245 -0
- package/docs/hooks.md +38 -0
- package/docs/mcp-servers.md +82 -0
- package/docs/notion-setup.md +109 -0
- package/docs/rules.md +33 -0
- package/docs/scripts.md +303 -0
- package/docs/setup-overview/setup-overview.pdf +0 -0
- package/docs/skills.md +70 -0
- package/docs/system.md +159 -0
- package/hooks/block-destructive-git.sh +66 -0
- package/hooks/context-monitor.py +114 -0
- package/hooks/postcompact-restore.py +157 -0
- package/hooks/precompact-autosave.py +181 -0
- package/hooks/promise-checker.sh +124 -0
- package/hooks/protect-source-files.sh +81 -0
- package/hooks/resume-context-loader.sh +53 -0
- package/hooks/startup-context-loader.sh +102 -0
- package/package.json +51 -0
- package/packages/cli-council/.github/workflows/claude-code-review.yml +44 -0
- package/packages/cli-council/.github/workflows/claude.yml +50 -0
- package/packages/cli-council/README.md +100 -0
- package/packages/cli-council/pyproject.toml +43 -0
- package/packages/cli-council/src/cli_council/__init__.py +19 -0
- package/packages/cli-council/src/cli_council/__main__.py +185 -0
- package/packages/cli-council/src/cli_council/backends/__init__.py +8 -0
- package/packages/cli-council/src/cli_council/backends/base.py +81 -0
- package/packages/cli-council/src/cli_council/backends/claude.py +25 -0
- package/packages/cli-council/src/cli_council/backends/codex.py +27 -0
- package/packages/cli-council/src/cli_council/backends/gemini.py +26 -0
- package/packages/cli-council/src/cli_council/checkpoint.py +212 -0
- package/packages/cli-council/src/cli_council/config.py +51 -0
- package/packages/cli-council/src/cli_council/council.py +391 -0
- package/packages/cli-council/src/cli_council/models.py +46 -0
- package/packages/llm-council/.github/workflows/claude-code-review.yml +44 -0
- package/packages/llm-council/.github/workflows/claude.yml +50 -0
- package/packages/llm-council/README.md +453 -0
- package/packages/llm-council/pyproject.toml +42 -0
- package/packages/llm-council/src/llm_council/__init__.py +23 -0
- package/packages/llm-council/src/llm_council/__main__.py +259 -0
- package/packages/llm-council/src/llm_council/checkpoint.py +193 -0
- package/packages/llm-council/src/llm_council/client.py +253 -0
- package/packages/llm-council/src/llm_council/config.py +232 -0
- package/packages/llm-council/src/llm_council/council.py +482 -0
- package/packages/llm-council/src/llm_council/models.py +46 -0
- package/packages/mcp-bibliography/MEMORY.md +31 -0
- package/packages/mcp-bibliography/_app.py +226 -0
- package/packages/mcp-bibliography/formatters.py +158 -0
- package/packages/mcp-bibliography/log/2026-03-13-2100.md +35 -0
- package/packages/mcp-bibliography/pyproject.toml +15 -0
- package/packages/mcp-bibliography/run.sh +20 -0
- package/packages/mcp-bibliography/scholarly_formatters.py +83 -0
- package/packages/mcp-bibliography/server.py +1857 -0
- package/packages/mcp-bibliography/tools/__init__.py +28 -0
- package/packages/mcp-bibliography/tools/_registry.py +19 -0
- package/packages/mcp-bibliography/tools/altmetric.py +107 -0
- package/packages/mcp-bibliography/tools/core.py +92 -0
- package/packages/mcp-bibliography/tools/dblp.py +52 -0
- package/packages/mcp-bibliography/tools/openalex.py +296 -0
- package/packages/mcp-bibliography/tools/opencitations.py +102 -0
- package/packages/mcp-bibliography/tools/openreview.py +179 -0
- package/packages/mcp-bibliography/tools/orcid.py +131 -0
- package/packages/mcp-bibliography/tools/scholarly.py +575 -0
- package/packages/mcp-bibliography/tools/unpaywall.py +63 -0
- package/packages/mcp-bibliography/tools/zenodo.py +123 -0
- package/packages/mcp-bibliography/uv.lock +711 -0
- package/scripts/setup.sh +143 -0
- package/skills/beamer-deck/SKILL.md +199 -0
- package/skills/beamer-deck/references/quality-rubric.md +54 -0
- package/skills/beamer-deck/references/review-prompts.md +106 -0
- package/skills/bib-validate/SKILL.md +261 -0
- package/skills/bib-validate/references/council-mode.md +34 -0
- package/skills/bib-validate/references/deep-verify.md +79 -0
- package/skills/bib-validate/references/fix-mode.md +36 -0
- package/skills/bib-validate/references/openalex-verification.md +45 -0
- package/skills/bib-validate/references/preprint-check.md +31 -0
- package/skills/bib-validate/references/ref-manager-crossref.md +41 -0
- package/skills/bib-validate/references/report-template.md +82 -0
- package/skills/code-archaeology/SKILL.md +141 -0
- package/skills/code-review/SKILL.md +265 -0
- package/skills/code-review/references/quality-rubric.md +67 -0
- package/skills/consolidate-memory/SKILL.md +208 -0
- package/skills/context-status/SKILL.md +126 -0
- package/skills/creation-guard/SKILL.md +230 -0
- package/skills/devils-advocate/SKILL.md +130 -0
- package/skills/devils-advocate/references/competing-hypotheses.md +83 -0
- package/skills/init-project/SKILL.md +115 -0
- package/skills/init-project-course/references/memory-and-settings.md +92 -0
- package/skills/init-project-course/references/organise-templates.md +94 -0
- package/skills/init-project-course/skill.md +147 -0
- package/skills/init-project-light/skill.md +139 -0
- package/skills/init-project-research/SKILL.md +368 -0
- package/skills/init-project-research/references/atlas-pipeline-sync.md +70 -0
- package/skills/init-project-research/references/atlas-schema.md +81 -0
- package/skills/init-project-research/references/confirmation-report.md +39 -0
- package/skills/init-project-research/references/domain-profile-template.md +104 -0
- package/skills/init-project-research/references/interview-round3.md +34 -0
- package/skills/init-project-research/references/literature-discovery.md +43 -0
- package/skills/init-project-research/references/scaffold-details.md +197 -0
- package/skills/init-project-research/templates/field-calibration.md +60 -0
- package/skills/init-project-research/templates/pipeline-manifest.md +63 -0
- package/skills/init-project-research/templates/run-all.sh +116 -0
- package/skills/init-project-research/templates/seed-files.md +337 -0
- package/skills/insights-deck/SKILL.md +151 -0
- package/skills/interview-me/SKILL.md +157 -0
- package/skills/latex/SKILL.md +141 -0
- package/skills/latex/references/latex-configs.md +183 -0
- package/skills/latex-autofix/SKILL.md +230 -0
- package/skills/latex-autofix/references/known-errors.md +183 -0
- package/skills/latex-autofix/references/quality-rubric.md +50 -0
- package/skills/latex-health-check/SKILL.md +161 -0
- package/skills/learn/SKILL.md +220 -0
- package/skills/learn/scripts/validate_skill.py +265 -0
- package/skills/lessons-learned/SKILL.md +201 -0
- package/skills/literature/SKILL.md +335 -0
- package/skills/literature/references/agent-templates.md +393 -0
- package/skills/literature/references/bibliometric-apis.md +44 -0
- package/skills/literature/references/cli-council-search.md +79 -0
- package/skills/literature/references/openalex-api-guide.md +371 -0
- package/skills/literature/references/openalex-common-queries.md +381 -0
- package/skills/literature/references/openalex-workflows.md +248 -0
- package/skills/literature/references/reference-manager-sync.md +36 -0
- package/skills/literature/references/scopus-api-guide.md +208 -0
- package/skills/literature/references/wos-api-guide.md +308 -0
- package/skills/multi-perspective/SKILL.md +311 -0
- package/skills/multi-perspective/references/computational-many-analysts.md +77 -0
- package/skills/pipeline-manifest/SKILL.md +226 -0
- package/skills/pre-submission-report/SKILL.md +153 -0
- package/skills/process-reviews/SKILL.md +244 -0
- package/skills/process-reviews/references/rr-routing.md +101 -0
- package/skills/project-deck/SKILL.md +87 -0
- package/skills/project-safety/SKILL.md +135 -0
- package/skills/proofread/SKILL.md +254 -0
- package/skills/proofread/references/quality-rubric.md +104 -0
- package/skills/python-env/SKILL.md +57 -0
- package/skills/quarto-deck/SKILL.md +226 -0
- package/skills/quarto-deck/references/markdown-format.md +143 -0
- package/skills/quarto-deck/references/quality-rubric.md +54 -0
- package/skills/save-context/SKILL.md +174 -0
- package/skills/session-log/SKILL.md +98 -0
- package/skills/shared/concept-validation-gate.md +161 -0
- package/skills/shared/council-protocol.md +265 -0
- package/skills/shared/distribution-diagnostics.md +164 -0
- package/skills/shared/engagement-stratified-sampling.md +218 -0
- package/skills/shared/escalation-protocol.md +74 -0
- package/skills/shared/external-audit-protocol.md +205 -0
- package/skills/shared/intercoder-reliability.md +256 -0
- package/skills/shared/mcp-degradation.md +81 -0
- package/skills/shared/method-probing-questions.md +163 -0
- package/skills/shared/multi-language-conventions.md +143 -0
- package/skills/shared/paid-api-safety.md +174 -0
- package/skills/shared/palettes.md +90 -0
- package/skills/shared/progressive-disclosure.md +92 -0
- package/skills/shared/project-documentation-content.md +443 -0
- package/skills/shared/project-documentation-format.md +281 -0
- package/skills/shared/project-documentation.md +100 -0
- package/skills/shared/publication-output.md +138 -0
- package/skills/shared/quality-scoring.md +70 -0
- package/skills/shared/reference-resolution.md +77 -0
- package/skills/shared/research-quality-rubric.md +165 -0
- package/skills/shared/rhetoric-principles.md +54 -0
- package/skills/shared/skill-design-patterns.md +272 -0
- package/skills/shared/skill-index.md +240 -0
- package/skills/shared/system-documentation.md +334 -0
- package/skills/shared/tikz-rules.md +402 -0
- package/skills/shared/validation-tiers.md +121 -0
- package/skills/shared/venue-guides/README.md +46 -0
- package/skills/shared/venue-guides/cell_press_style.md +483 -0
- package/skills/shared/venue-guides/conferences_formatting.md +564 -0
- package/skills/shared/venue-guides/cs_conference_style.md +463 -0
- package/skills/shared/venue-guides/examples/cell_summary_example.md +247 -0
- package/skills/shared/venue-guides/examples/medical_structured_abstract.md +313 -0
- package/skills/shared/venue-guides/examples/nature_abstract_examples.md +213 -0
- package/skills/shared/venue-guides/examples/neurips_introduction_example.md +245 -0
- package/skills/shared/venue-guides/journals_formatting.md +486 -0
- package/skills/shared/venue-guides/medical_journal_styles.md +535 -0
- package/skills/shared/venue-guides/ml_conference_style.md +556 -0
- package/skills/shared/venue-guides/nature_science_style.md +405 -0
- package/skills/shared/venue-guides/reviewer_expectations.md +417 -0
- package/skills/shared/venue-guides/venue_writing_styles.md +321 -0
- package/skills/split-pdf/SKILL.md +172 -0
- package/skills/split-pdf/methodology.md +48 -0
- package/skills/sync-notion/SKILL.md +93 -0
- package/skills/system-audit/SKILL.md +157 -0
- package/skills/system-audit/references/sub-agent-prompts.md +294 -0
- package/skills/task-management/SKILL.md +131 -0
- package/skills/update-focus/SKILL.md +204 -0
- package/skills/update-project-doc/SKILL.md +194 -0
- package/skills/validate-bib/SKILL.md +242 -0
- package/skills/validate-bib/references/council-mode.md +34 -0
- package/skills/validate-bib/references/deep-verify.md +71 -0
- package/skills/validate-bib/references/openalex-verification.md +45 -0
- package/skills/validate-bib/references/preprint-check.md +31 -0
- package/skills/validate-bib/references/report-template.md +62 -0
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pre-submission-report
|
|
3
|
+
description: "Use when you need all quality checks run before submission, producing a single dated report."
|
|
4
|
+
allowed-tools: Bash(latexmk*, mkdir*, ls*, wc*), Read, Write, Edit, Glob, Grep, Task, Skill
|
|
5
|
+
argument-hint: "[path/to/main.tex or no arguments to auto-detect]"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Pre-Submission Report
|
|
9
|
+
|
|
10
|
+
> Aggregates all quality checks into one dated report. Run before submitting to a journal/conference or sharing with collaborators.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
|
|
14
|
+
- Before submitting a paper to a venue
|
|
15
|
+
- Before sharing a draft with supervisors or co-authors
|
|
16
|
+
- When the user says "pre-submission check", "is this ready?", "run everything"
|
|
17
|
+
|
|
18
|
+
## Input
|
|
19
|
+
|
|
20
|
+
- A `.tex` file path, or auto-detect `paper/main.tex` in the current project
|
|
21
|
+
|
|
22
|
+
## Critical Rule
|
|
23
|
+
|
|
24
|
+
**Python:** Always use `uv run python` or `uv pip install`. Never bare `python`, `python3`, `pip`, or `pip3`. Include this in any sub-agent prompts.
|
|
25
|
+
|
|
26
|
+
## Steps
|
|
27
|
+
|
|
28
|
+
### 1. Locate the Paper
|
|
29
|
+
|
|
30
|
+
If no argument provided, search for the main `.tex` file:
|
|
31
|
+
1. Check `paper/main.tex`
|
|
32
|
+
2. Check `paper/*.tex` for a file containing `\begin{document}`
|
|
33
|
+
3. Ask the user if ambiguous
|
|
34
|
+
|
|
35
|
+
### 2. Integrity Gate (hard gate — must pass before quality checks)
|
|
36
|
+
|
|
37
|
+
Run these checks first. If any fail, stop and report — do not proceed to quality checks.
|
|
38
|
+
|
|
39
|
+
1. **Placeholder scan** — grep the `.tex` file(s) for `TODO`, `FIXME`, `XXX`, `TBD`, `[INSERT`, `PLACEHOLDER`, `Lorem ipsum`. Any match is a FAIL.
|
|
40
|
+
2. **Citation integrity** — invoke `/bib-validate` in verify mode. Every `\cite{}` key must resolve to a `.bib` entry. Any missing key is a FAIL.
|
|
41
|
+
3. **Section completeness** — check that all standard sections exist and are non-empty (Abstract, Introduction, and at least one body section before Conclusion/References). An empty or missing section is a FAIL.
|
|
42
|
+
4. **Broken references** — grep for `??` in the compiled PDF output or `.log` file (undefined `\ref{}` or `\cite{}`). Any `??` in output is a FAIL.
|
|
43
|
+
|
|
44
|
+
**If any check fails:**
|
|
45
|
+
```
|
|
46
|
+
INTEGRITY GATE: FAIL
|
|
47
|
+
|
|
48
|
+
Blockers (must fix before quality checks):
|
|
49
|
+
- [ ] 3 TODO placeholders found (lines 47, 112, 289)
|
|
50
|
+
- [ ] 2 undefined references (\ref{fig:missing}, \cite{nonexistent2024})
|
|
51
|
+
- [ ] Abstract section is empty
|
|
52
|
+
|
|
53
|
+
Fix these and re-run /pre-submission-report.
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
**If all pass:** proceed to Step 3.
|
|
57
|
+
|
|
58
|
+
### 3. Run Quality Checks
|
|
59
|
+
|
|
60
|
+
Run these sequentially (each depends on a clean state):
|
|
61
|
+
|
|
62
|
+
1. **Compilation** — invoke `/latex-autofix` on the main `.tex` file. Record pass/fail and any remaining warnings.
|
|
63
|
+
2. **Citation audit** — invoke `/bib-validate` (full mode — deep verify). Record missing, unused, and suspect keys.
|
|
64
|
+
3. **Adversarial review** — launch `paper-critic` agent (via Task tool). Capture the CRITIC-REPORT.md score and findings.
|
|
65
|
+
|
|
66
|
+
### 4. Aggregate Report
|
|
67
|
+
|
|
68
|
+
Save to `audits/quality-reports/YYYY-MM-DD_<project-name>.md`:
|
|
69
|
+
|
|
70
|
+
```markdown
|
|
71
|
+
# Pre-Submission Quality Report
|
|
72
|
+
|
|
73
|
+
**Project:** <project name>
|
|
74
|
+
**Date:** YYYY-MM-DD
|
|
75
|
+
**File:** <path to main.tex>
|
|
76
|
+
**Target:** <venue from project CLAUDE.md, or "not specified">
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Integrity Gate: PASS / FAIL
|
|
81
|
+
|
|
82
|
+
- **Placeholders:** 0 found
|
|
83
|
+
- **Citation integrity:** all keys resolved
|
|
84
|
+
- **Section completeness:** all sections present
|
|
85
|
+
- **Broken references:** none
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Overall Score: XX/100 — [Verdict]
|
|
90
|
+
|
|
91
|
+
Verdict uses the quality scoring framework:
|
|
92
|
+
- 90-100: Publication-ready
|
|
93
|
+
- 80-89: Minor revisions needed
|
|
94
|
+
- 70-79: Significant revisions needed
|
|
95
|
+
- Below 70: Not ready
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## Compilation
|
|
100
|
+
|
|
101
|
+
- **Status:** PASS / FAIL
|
|
102
|
+
- **Warnings:** <count>
|
|
103
|
+
- **Details:** <brief summary of any issues>
|
|
104
|
+
|
|
105
|
+
## Citations
|
|
106
|
+
|
|
107
|
+
- **Missing keys:** <count> — <list>
|
|
108
|
+
- **Unused keys:** <count> — <list>
|
|
109
|
+
- **Suspect entries:** <count> — <list>
|
|
110
|
+
|
|
111
|
+
## Adversarial Review
|
|
112
|
+
|
|
113
|
+
- **Score:** XX/100
|
|
114
|
+
- **Key findings:**
|
|
115
|
+
- <finding 1>
|
|
116
|
+
- <finding 2>
|
|
117
|
+
- ...
|
|
118
|
+
|
|
119
|
+
## Research Quality Score
|
|
120
|
+
|
|
121
|
+
Load `skills/shared/research-quality-rubric.md` and report the weighted aggregate (X.X / 5.0) with verdict.
|
|
122
|
+
|
|
123
|
+
## Remaining Issues
|
|
124
|
+
|
|
125
|
+
| # | Severity | Category | Issue |
|
|
126
|
+
|---|----------|----------|-------|
|
|
127
|
+
| 1 | High/Medium/Low | Compilation/Citation/Content | <description> |
|
|
128
|
+
|
|
129
|
+
## Recommendation
|
|
130
|
+
|
|
131
|
+
**[Submit / Revise / Not ready]**
|
|
132
|
+
|
|
133
|
+
<1-2 sentence summary of what needs to happen before submission>
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### 5. Present Summary
|
|
137
|
+
|
|
138
|
+
Display the report path and the summary table to the user. If the recommendation is "Submit", congratulate. If "Revise", list the top 3 issues to fix first.
|
|
139
|
+
|
|
140
|
+
## Error Handling
|
|
141
|
+
|
|
142
|
+
- If compilation fails after `/latex-autofix`, still run the remaining checks. Mark compilation as FAIL in the report.
|
|
143
|
+
- If `paper-critic` agent fails, note it in the report and base the overall score on compilation + citations only.
|
|
144
|
+
- Always produce the report file, even if some checks failed.
|
|
145
|
+
|
|
146
|
+
## Integration
|
|
147
|
+
|
|
148
|
+
| Skill/Agent | Role in this workflow |
|
|
149
|
+
|-------------|---------------------|
|
|
150
|
+
| `/latex-autofix` | Compilation + auto-fix |
|
|
151
|
+
| `/bib-validate` | Citation cross-reference |
|
|
152
|
+
| `paper-critic` agent | Adversarial content review |
|
|
153
|
+
| `quality-scoring.md` | Verdict thresholds |
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: process-reviews
|
|
3
|
+
description: "Use when you need to process referee comments from a reviews PDF into tracking files."
|
|
4
|
+
allowed-tools: Read, Write, Edit, Glob, Grep, Bash(mkdir*), Bash(cp*), Bash(ls*), Bash(latexmk*), AskUserQuestion, Task
|
|
5
|
+
argument-hint: "[path-to-reviews-pdf or no arguments for guided setup]"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Process Referee Comments
|
|
9
|
+
|
|
10
|
+
Read a reviews PDF and generate three standardised output files for managing an R&R response.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
|
|
14
|
+
- Received reviewer reports for a paper (journal or conference)
|
|
15
|
+
- Starting an R&R cycle and need to set up tracking infrastructure
|
|
16
|
+
- Want to standardise an existing ad-hoc review response
|
|
17
|
+
|
|
18
|
+
## When NOT to Use
|
|
19
|
+
|
|
20
|
+
- Writing the actual response letter (use the generated `comment-tracker.md` response blocks as a starting point, then write the letter manually)
|
|
21
|
+
- Reviewing someone else's paper (use `/proofread` or the `peer-reviewer` agent)
|
|
22
|
+
|
|
23
|
+
## Inputs
|
|
24
|
+
|
|
25
|
+
Gather via interview if not provided:
|
|
26
|
+
|
|
27
|
+
1. **Reviews PDF path** — auto-discovered or user-provided (see below)
|
|
28
|
+
2. **Project path** — root of the research project (auto-detect from cwd if possible)
|
|
29
|
+
3. **Venue slug** — short identifier, e.g., `ejor`, `facct-2026`, `management-science`
|
|
30
|
+
4. **Revision round** — integer, default 1
|
|
31
|
+
5. **Response deadline** — date if known, otherwise "TBD"
|
|
32
|
+
6. **Coordinating author** — who is leading the response
|
|
33
|
+
|
|
34
|
+
### PDF Auto-Discovery
|
|
35
|
+
|
|
36
|
+
Search for the reviews PDF in this order. Use the first match; if multiple PDFs found at a location, list them and ask the user to pick.
|
|
37
|
+
|
|
38
|
+
1. `to-sort/*.pdf` — most likely landing spot after download
|
|
39
|
+
2. `correspondence/referee-reviews/{venue}-round{n}/*.pdf`
|
|
40
|
+
3. `correspondence/referee-reviews/*.pdf`
|
|
41
|
+
4. Ask the user for the path if nothing found
|
|
42
|
+
|
|
43
|
+
## Output Location
|
|
44
|
+
|
|
45
|
+
Review correspondence goes under `correspondence/referee-reviews/`, with an `analysis/` subfolder for derived work:
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
correspondence/referee-reviews/{venue}-round{n}/
|
|
49
|
+
├── reviews-original.pdf (copy of input PDF — source is NEVER moved/deleted)
|
|
50
|
+
├── rebuttal.md (empty — for response draft)
|
|
51
|
+
├── reviews/ (individual reviewer files)
|
|
52
|
+
│ ├── reviewer-1.md
|
|
53
|
+
│ ├── reviewer-2.md
|
|
54
|
+
│ └── ...
|
|
55
|
+
└── analysis/
|
|
56
|
+
├── comment-tracker.md (atomic comment matrix)
|
|
57
|
+
├── review-analysis.md (strategic overview)
|
|
58
|
+
└── reviewer-comments-verbatim.tex (LaTeX transcription)
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**Source PDF preservation:** The original reviews PDF is only ever **copied** to `reviews-original.pdf`. Never move, rename, or delete the source file from its original location (e.g., `to-sort/`, Downloads, etc.). The user decides when to clean up the original.
|
|
62
|
+
|
|
63
|
+
**Principle:** `correspondence/` holds exchanges with reviewers (their comments, your rebuttal). Internal review work (e.g., referee2 agent reports) goes in `docs/{venue}/internal-reviews/`.
|
|
64
|
+
|
|
65
|
+
If the round directory already exists (e.g., from manual setup), do NOT overwrite existing files. Instead:
|
|
66
|
+
- If `comment-tracker.md` already exists, name the new one `comment-tracker-v2.md` (or next version)
|
|
67
|
+
- If `reviewer-comments-verbatim.tex` already exists, name the new one `reviewer-comments-verbatim-v2.tex`
|
|
68
|
+
- Always flag existing files to the user before writing
|
|
69
|
+
|
|
70
|
+
## Protocol
|
|
71
|
+
|
|
72
|
+
### Phase 1: Setup
|
|
73
|
+
|
|
74
|
+
1. Confirm inputs (PDF path, project path, venue, round, deadline, lead author)
|
|
75
|
+
2. Create the directory structure under `correspondence/referee-reviews/{venue}-round{n}/`
|
|
76
|
+
3. Copy the reviews PDF to `correspondence/referee-reviews/{venue}-round{n}/reviews-original.pdf`
|
|
77
|
+
|
|
78
|
+
### Phase 2: Read the Reviews
|
|
79
|
+
|
|
80
|
+
1. Read the reviews PDF using the Read tool (supports PDF natively)
|
|
81
|
+
2. For large PDFs (>10 pages), read in page ranges (e.g., pages 1-10, then 11-20)
|
|
82
|
+
3. Extract for each reviewer:
|
|
83
|
+
- Reviewer identifier (name, number, or anonymous ID)
|
|
84
|
+
- Recommendation / score (if provided)
|
|
85
|
+
- Whether revision is allowed
|
|
86
|
+
- General assessment text
|
|
87
|
+
- Individual comments (each as a separate item)
|
|
88
|
+
|
|
89
|
+
### Phase 3: Generate Individual Review Markdown Files
|
|
90
|
+
|
|
91
|
+
Create one markdown file per reviewer in `reviews/`:
|
|
92
|
+
|
|
93
|
+
1. Create the `reviews/` subdirectory
|
|
94
|
+
2. For each reviewer, write `reviews/reviewer-{n}.md` containing:
|
|
95
|
+
- **Header:** reviewer identifier, recommendation/score, whether revision is allowed
|
|
96
|
+
- **General Assessment:** full verbatim text of the reviewer's overall assessment
|
|
97
|
+
- **Individual Comments:** each comment as a numbered item with its assigned ID (`R{n}-C{m}`), verbatim text, and section/page reference if mentioned
|
|
98
|
+
3. Use this template for each file:
|
|
99
|
+
|
|
100
|
+
```markdown
|
|
101
|
+
# Reviewer {N}
|
|
102
|
+
|
|
103
|
+
**Recommendation:** {recommendation or score}
|
|
104
|
+
**Revision allowed:** {Yes / No / Not stated}
|
|
105
|
+
|
|
106
|
+
## General Assessment
|
|
107
|
+
|
|
108
|
+
{verbatim general assessment text}
|
|
109
|
+
|
|
110
|
+
## Comments
|
|
111
|
+
|
|
112
|
+
### R{N}-C1 {optional: section/page reference}
|
|
113
|
+
|
|
114
|
+
{verbatim comment text}
|
|
115
|
+
|
|
116
|
+
### R{N}-C2 ...
|
|
117
|
+
|
|
118
|
+
{verbatim comment text}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
4. If files already exist in `reviews/`, follow the same versioning convention as other outputs (flag and version)
|
|
122
|
+
|
|
123
|
+
### Phase 4: Generate LaTeX Verbatim Transcription
|
|
124
|
+
|
|
125
|
+
Using the template from `templates/referee-comments/reviewer-comments-verbatim.tex`:
|
|
126
|
+
|
|
127
|
+
1. Create one `\section{}` per reviewer with comment count and recommendation
|
|
128
|
+
2. Place general assessment in a `genbox` environment
|
|
129
|
+
3. For each specific comment:
|
|
130
|
+
- Assign an ID: `R{reviewer}-C{comment}` (sequential within each reviewer)
|
|
131
|
+
- Identify the section/page reference if the reviewer mentions one
|
|
132
|
+
- Place the full verbatim text in the comment table
|
|
133
|
+
4. If a single reviewer paragraph contains multiple distinct concerns, split into separate IDs and add a `\textit{\footnotesize Split: ...}` note
|
|
134
|
+
5. If any IDs are derived (split from a larger comment or inferred), add them to a Derived IDs appendix section
|
|
135
|
+
6. Compile with `latexmk` to verify it builds cleanly
|
|
136
|
+
|
|
137
|
+
### Phase 5: Generate Comment Tracker
|
|
138
|
+
|
|
139
|
+
Using the template from `templates/referee-comments/comment-tracker.md`:
|
|
140
|
+
|
|
141
|
+
1. Fill in the Triage Summary table
|
|
142
|
+
2. Populate the Comment Matrix — one row per atomic comment:
|
|
143
|
+
- **ID:** matching the LaTeX verbatim IDs
|
|
144
|
+
- **Reviewer:** reviewer number
|
|
145
|
+
- **Comment:** short verbatim quote (first ~100 chars in quotes)
|
|
146
|
+
- **Type:** classify as Major / Minor / Editorial / Question / Praise
|
|
147
|
+
- **R&R Classification:** classify as NEW ANALYSIS / CLARIFICATION / DISAGREE / MINOR (see `references/rr-routing.md` for decision rules and signal words)
|
|
148
|
+
- **Priority:** assign Critical / High / Medium / Low based on:
|
|
149
|
+
- Critical = threatens acceptance if not addressed
|
|
150
|
+
- High = significant concern, must address
|
|
151
|
+
- Medium = reasonable concern, should address
|
|
152
|
+
- Low = minor or editorial
|
|
153
|
+
- **Action:** leave blank (for the user to fill)
|
|
154
|
+
- **Owner:** leave blank
|
|
155
|
+
- **Status:** set all to "Pending"
|
|
156
|
+
- **Section:** paper section referenced, if identifiable
|
|
157
|
+
3. Fill in the Status Dashboard counts
|
|
158
|
+
4. Generate a **Routing Summary** table grouping comments by R&R classification:
|
|
159
|
+
- NEW ANALYSIS: list IDs + brief description of required analysis
|
|
160
|
+
- CLARIFICATION: list IDs + target sections needing revision
|
|
161
|
+
- DISAGREE: list IDs + flag for user review
|
|
162
|
+
- MINOR: list IDs
|
|
163
|
+
5. Identify **Cross-Cutting Themes** — concerns raised by 2+ reviewers, tagged T1, T2, etc.
|
|
164
|
+
6. Leave Evidence Log, Patch Plan, Response Blocks, and Blockers empty (user fills during revision)
|
|
165
|
+
|
|
166
|
+
### Phase 6: Generate Review Analysis
|
|
167
|
+
|
|
168
|
+
Using the template from `templates/referee-comments/review-analysis.md`:
|
|
169
|
+
|
|
170
|
+
1. Fill in Scores & Recommendations table
|
|
171
|
+
2. Write a Reviewer Profile for each reviewer:
|
|
172
|
+
- **Posture:** hostile / sceptical / constructive / supportive (infer from tone)
|
|
173
|
+
- **What they liked:** bullet points
|
|
174
|
+
- **What they want revised:** numbered list
|
|
175
|
+
- **Assessment:** paragraph on how addressable their concerns are
|
|
176
|
+
- **Risk:** None / Low / Medium / High with explanation
|
|
177
|
+
3. Identify Cross-Cutting Themes — concerns that appear across 2+ reviewers, tagged T1, T2, etc.
|
|
178
|
+
4. Estimate Acceptance Probability with factors for/against
|
|
179
|
+
5. Bucket comments into Priority 1/2/3 response categories
|
|
180
|
+
6. List Vulnerabilities (weaknesses in the paper that reviewers exposed)
|
|
181
|
+
7. Populate the Publication Strategy section:
|
|
182
|
+
- **Strategy A (minimal revision):** venues that would accept the paper's strengths as-is, despite the weaknesses reviewers identified. Look for venues that value the descriptive/empirical contribution without demanding the specific improvements the current reviewers want.
|
|
183
|
+
- **Strategy B (substantial revision):** venues worth targeting if the authors invest effort to address the major reviewer concerns. These should be equal or higher prestige than the current venue.
|
|
184
|
+
- For conferences: check CORE rankings via `.context/resources/venue-rankings.md` (and the CSV at `.context/resources/venue-rankings/core_2026.csv`). Note upcoming deadlines.
|
|
185
|
+
- For journals: check CABS AJG rankings via `.context/resources/venue-rankings.md` (and the CSV at `.context/resources/venue-rankings/abs_ajg_2024.csv`). For SJR score, query the Elsevier Serial Title API (see venue-rankings.md for snippet; requires `SCOPUS_API_KEY`). Flag journals below CABS 3 only if there's a strong fit rationale.
|
|
186
|
+
- **Recommendation table:** rank 3-5 venues in priority order with rationale. First option should always be "revise for current venue" if acceptance probability is above ~30%.
|
|
187
|
+
- **Key Decision:** frame the core trade-off the authors face (e.g., speed vs. impact, minimal vs. substantial revision effort).
|
|
188
|
+
- Consider the paper's discipline and methodology when suggesting venues — a qualitative policy analysis fits different outlets than a computational study.
|
|
189
|
+
8. Leave Timeline empty (user fills)
|
|
190
|
+
|
|
191
|
+
### Phase 6.5: Strategic Coaching (Interactive)
|
|
192
|
+
|
|
193
|
+
For each **Major** or **Critical** comment, walk the user through a structured deliberation:
|
|
194
|
+
|
|
195
|
+
1. **Understanding:** "What is this reviewer's core concern — methodology, theory, or framing?"
|
|
196
|
+
2. **Position:** Classify as one of:
|
|
197
|
+
- **Agree** — will revise as suggested
|
|
198
|
+
- **Partially agree** — will address the spirit but not the exact suggestion. State which parts you accept and which you push back on.
|
|
199
|
+
- **Disagree** — will rebut with evidence. Draft the core rebuttal argument.
|
|
200
|
+
3. **Risk assessment:** "If you push back on this, how likely is the reviewer to escalate? Is it worth the risk?"
|
|
201
|
+
4. **Response sketch:** One-sentence draft of the response direction (not the full response — just the strategy).
|
|
202
|
+
|
|
203
|
+
Record these in the Comment Matrix by adding two columns after `R&R Classification`:
|
|
204
|
+
- **Position:** Agree / Partially / Disagree
|
|
205
|
+
- **Strategy:** one-line response direction
|
|
206
|
+
|
|
207
|
+
**Rules:**
|
|
208
|
+
- Only Major and Critical comments get coaching. Minor/Editorial are auto-classified as "Agree" with no coaching.
|
|
209
|
+
- the user can say "skip coaching" to bypass and classify all remaining as Agree.
|
|
210
|
+
- Maximum 2 rounds of dialogue per comment — do not over-discuss.
|
|
211
|
+
- Do not write the actual response letter — that remains the user's job.
|
|
212
|
+
|
|
213
|
+
### Phase 7: Summary & Review
|
|
214
|
+
|
|
215
|
+
Present to the user:
|
|
216
|
+
- Total comments extracted (by reviewer)
|
|
217
|
+
- Breakdown by type and priority
|
|
218
|
+
- Key cross-cutting themes
|
|
219
|
+
- Position summary: N Agree / N Partially / N Disagree
|
|
220
|
+
- Any comments that were ambiguous or hard to classify
|
|
221
|
+
- Ask for corrections before finalising
|
|
222
|
+
|
|
223
|
+
## Critical Rules
|
|
224
|
+
|
|
225
|
+
1. **Verbatim means verbatim.** Never paraphrase reviewer text in the LaTeX transcription. Copy exactly.
|
|
226
|
+
2. **Every comment gets an ID.** No reviewer concern should be lost. If in doubt, give it its own ID.
|
|
227
|
+
3. **Don't write actions.** The Comment Matrix `Action` column stays blank — that's the user's job.
|
|
228
|
+
4. **Don't overwrite.** If files already exist at the target location, flag and version.
|
|
229
|
+
5. **Compile the LaTeX.** The verbatim document must build without errors before the skill completes.
|
|
230
|
+
|
|
231
|
+
## Templates
|
|
232
|
+
|
|
233
|
+
Located in `templates/referee-comments/`:
|
|
234
|
+
- `comment-tracker.md`
|
|
235
|
+
- `review-analysis.md`
|
|
236
|
+
- `reviewer-comments-verbatim.tex`
|
|
237
|
+
|
|
238
|
+
## Cross-References
|
|
239
|
+
|
|
240
|
+
- `/proofread` — for proofreading the response letter before submission
|
|
241
|
+
- `/bib-validate` — run after revision to check bibliography
|
|
242
|
+
- `/pre-submission-report` — full quality check before resubmission
|
|
243
|
+
- `paper-critic` agent — for self-review of the revised paper
|
|
244
|
+
- `references/rr-routing.md` — R&R classification system and routing logic for revision workflow
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
# R&R Comment Classification and Routing
|
|
2
|
+
|
|
3
|
+
> Used during Phase 5 (Comment Tracker) to classify referee comments for efficient revision routing.
|
|
4
|
+
> Adapted from Sant'Anna's clo-author revision protocol.
|
|
5
|
+
|
|
6
|
+
## Classification System
|
|
7
|
+
|
|
8
|
+
Every atomic referee comment is classified into one of four categories:
|
|
9
|
+
|
|
10
|
+
| Classification | Definition | Signal Words | Routing |
|
|
11
|
+
|---------------|------------|-------------|---------|
|
|
12
|
+
| **NEW ANALYSIS** | Requires new estimation, data work, or robustness checks | "run", "test", "control for", "check", "estimate", "add specification", "heterogeneity" | Code changes → table/figure updates → paper text |
|
|
13
|
+
| **CLARIFICATION** | Text revision sufficient — no new analysis needed | "explain", "clarify", "discuss", "motivate", "justify", "elaborate", "rewrite" | Paper text only |
|
|
14
|
+
| **DISAGREE** | The reviewer asks for something the authors believe is wrong or infeasible | "fundamentally", "reject the premise", contradicts identification strategy | Flag for user — never auto-respond to disagreements |
|
|
15
|
+
| **MINOR** | Typos, formatting, citation fixes, wording tweaks | "typo", "citation", "footnote", "spelling", "format" | Quick paper edits |
|
|
16
|
+
|
|
17
|
+
## Classification Rules
|
|
18
|
+
|
|
19
|
+
1. **When in doubt between NEW ANALYSIS and CLARIFICATION:** If the reviewer's concern *could* be addressed with better writing but would be *stronger* with additional evidence, classify as NEW ANALYSIS. Referees notice when you only clarify instead of substantiate.
|
|
20
|
+
|
|
21
|
+
2. **DISAGREE is rare.** Most referee comments that feel wrong are actually CLARIFICATION requests — the reviewer misunderstood, and better exposition fixes it. Only classify as DISAGREE when:
|
|
22
|
+
- The reviewer asks for an analysis that would violate the identification strategy
|
|
23
|
+
- The reviewer's suggestion contradicts established methodology (e.g., "use naive TWFE for staggered treatment")
|
|
24
|
+
- The reviewer wants you to change the research question
|
|
25
|
+
- The request is infeasible given data limitations
|
|
26
|
+
|
|
27
|
+
3. **Split compound comments.** A single referee paragraph may contain both a CLARIFICATION and a NEW ANALYSIS request. Split into separate IDs with cross-references.
|
|
28
|
+
|
|
29
|
+
4. **Always classify praise.** Even positive comments should be logged (Type: Praise, Priority: Low) to reference in the response letter: "We thank the reviewer for noting..."
|
|
30
|
+
|
|
31
|
+
## Priority Assignment
|
|
32
|
+
|
|
33
|
+
| Priority | Definition | Classification Overlap |
|
|
34
|
+
|----------|-----------|----------------------|
|
|
35
|
+
| **Critical** | Threatens acceptance if not addressed | Usually NEW ANALYSIS or DISAGREE |
|
|
36
|
+
| **High** | Significant concern, must address thoroughly | NEW ANALYSIS or CLARIFICATION |
|
|
37
|
+
| **Medium** | Reasonable concern, should address | CLARIFICATION |
|
|
38
|
+
| **Low** | Minor or editorial | MINOR or Praise |
|
|
39
|
+
|
|
40
|
+
### Priority Heuristics
|
|
41
|
+
|
|
42
|
+
- **Multiple reviewers raise the same concern** → bump to Critical
|
|
43
|
+
- **Reviewer uses words like "fatal", "fundamental", "serious"** → Critical
|
|
44
|
+
- **Concern about identification/causality** → at least High
|
|
45
|
+
- **"Interesting but..."** → the "but" is the real concern, classify that
|
|
46
|
+
- **Editor's letter highlights specific comments** → those are Critical regardless
|
|
47
|
+
|
|
48
|
+
## Routing in the Response
|
|
49
|
+
|
|
50
|
+
### NEW ANALYSIS workflow
|
|
51
|
+
1. Identify the required analysis (new regression, robustness check, subsample)
|
|
52
|
+
2. Write the estimation code → generate new table/figure
|
|
53
|
+
3. Update paper text to discuss new results
|
|
54
|
+
4. Reference new results in response letter with specific table/figure number
|
|
55
|
+
|
|
56
|
+
### CLARIFICATION workflow
|
|
57
|
+
1. Identify the section(s) that need revision
|
|
58
|
+
2. Rewrite to address the concern
|
|
59
|
+
3. Quote the changed passage in the response letter (before/after)
|
|
60
|
+
|
|
61
|
+
### DISAGREE workflow
|
|
62
|
+
1. **Flag for user** — Claude never autonomously pushes back on referees
|
|
63
|
+
2. Draft a diplomatic response that:
|
|
64
|
+
- Acknowledges the reviewer's concern
|
|
65
|
+
- Explains why the current approach is preferred
|
|
66
|
+
- Offers a compromise if possible (e.g., mention in footnote, add to appendix)
|
|
67
|
+
3. User reviews and approves before including in response
|
|
68
|
+
|
|
69
|
+
### MINOR workflow
|
|
70
|
+
1. Fix directly in the paper
|
|
71
|
+
2. Brief acknowledgement in response letter: "We have corrected the typo on p.X"
|
|
72
|
+
|
|
73
|
+
## Response Letter Structure
|
|
74
|
+
|
|
75
|
+
For each referee comment:
|
|
76
|
+
|
|
77
|
+
```markdown
|
|
78
|
+
**[R1-C3]** Reviewer 1, Comment 3: "[first ~100 chars of comment]"
|
|
79
|
+
|
|
80
|
+
**Classification:** NEW ANALYSIS
|
|
81
|
+
**Action taken:** We estimated an additional specification controlling for X.
|
|
82
|
+
The results, reported in Table A3 of the Online Appendix, confirm that our
|
|
83
|
+
main findings are robust. Specifically, the coefficient on treatment changes
|
|
84
|
+
from 0.045 (s.e. 0.012) to 0.042 (s.e. 0.013).
|
|
85
|
+
|
|
86
|
+
**Changes:** Table A3 (new), Section 5.2 paragraph 3 (revised),
|
|
87
|
+
Appendix B.1 (new subsection)
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## Cross-Cutting Themes
|
|
91
|
+
|
|
92
|
+
When the same concern appears across reviewers, create a theme entry:
|
|
93
|
+
|
|
94
|
+
```markdown
|
|
95
|
+
**Theme T1:** External validity concerns
|
|
96
|
+
**Raised by:** R1-C5, R2-C2, R3-C8
|
|
97
|
+
**Response strategy:** Address once comprehensively in Section 7 (Discussion),
|
|
98
|
+
then cross-reference from each individual response.
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
This avoids repetitive responses and shows the authors took the concern seriously.
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: project-deck
|
|
3
|
+
description: "Use when you need to create a presentation deck to communicate project status."
|
|
4
|
+
allowed-tools: Bash(latexmk*), Bash(xelatex*), Bash(pdflatex*), Bash(mkdir*), Read, Write, Edit
|
|
5
|
+
argument-hint: [project-name-or-path]
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Project Deck Skill
|
|
9
|
+
|
|
10
|
+
> Create beautiful presentation decks to communicate project status to your future self and collaborators.
|
|
11
|
+
|
|
12
|
+
## Purpose
|
|
13
|
+
|
|
14
|
+
Based on Scott Cunningham's Part 7: "Making Beautiful Decks For My Future Self" - using decks not for public speaking but to efficiently communicate work status across time and to coauthors.
|
|
15
|
+
|
|
16
|
+
## The Philosophy
|
|
17
|
+
|
|
18
|
+
"I use decks to help me keep track of the work I was doing so that I can communicate it to my coauthors and myself later in the week when we meet to go over our projects."
|
|
19
|
+
|
|
20
|
+
Claude has absorbed the "rhetoric of decks" - the tacit knowledge about what makes presentations effective:
|
|
21
|
+
- One idea per slide
|
|
22
|
+
- Titles are assertions, not labels
|
|
23
|
+
- Lead with conclusions
|
|
24
|
+
- Visual hierarchy signals importance
|
|
25
|
+
- Repeat for retention
|
|
26
|
+
- Transition explicitly
|
|
27
|
+
|
|
28
|
+
## When to Use
|
|
29
|
+
|
|
30
|
+
- Before a supervisor meeting
|
|
31
|
+
- At the end of a research sprint
|
|
32
|
+
- When handing off to a coauthor
|
|
33
|
+
- When returning to a dormant project
|
|
34
|
+
- Weekly project status updates
|
|
35
|
+
|
|
36
|
+
## Workflow
|
|
37
|
+
|
|
38
|
+
1. **Read project context** - Progress logs, current focus, recent work
|
|
39
|
+
2. **Design deck structure**:
|
|
40
|
+
- Research question
|
|
41
|
+
- What's been done (with figures/tables)
|
|
42
|
+
- Key findings so far
|
|
43
|
+
- Current blockers
|
|
44
|
+
- Next steps
|
|
45
|
+
3. **Create beautiful output** - Clean design, good typography, optimal cognitive density
|
|
46
|
+
4. **Include visuals** - Figures, tables, diagrams that capture the work
|
|
47
|
+
|
|
48
|
+
## Deck Rhetoric Principles
|
|
49
|
+
|
|
50
|
+
```markdown
|
|
51
|
+
## Principles for Effective Decks
|
|
52
|
+
|
|
53
|
+
1. **One idea per slide** - Don't overload
|
|
54
|
+
2. **Titles are assertions** - "Distance increases abortion rates" not "Results"
|
|
55
|
+
3. **Lead with conclusions** - Don't bury the lede
|
|
56
|
+
4. **Visual hierarchy** - Most important things stand out
|
|
57
|
+
5. **Optimal cognitive density** - Smooth delivery, not overloaded
|
|
58
|
+
6. **Beautiful figures and tables** - Data visualisation matters
|
|
59
|
+
7. **Explicit transitions** - Guide the reader through the narrative
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Extended Rhetoric Principles
|
|
63
|
+
|
|
64
|
+
### For Research Decks
|
|
65
|
+
- **Motivation slides**: Why should anyone care? What's the gap?
|
|
66
|
+
- **Methods slides**: Identification strategy in plain English, visualize variation
|
|
67
|
+
- **Results slides**: Lead with main coefficient, visualize where possible
|
|
68
|
+
- **Figures**: Clear titles, labeled axes, no chartjunk
|
|
69
|
+
|
|
70
|
+
### For "Decks as Thinking Tools"
|
|
71
|
+
When making decks for yourself/coauthors:
|
|
72
|
+
1. **Document decisions** — Why did we choose this approach?
|
|
73
|
+
2. **Visualize data** — Patterns you've discovered
|
|
74
|
+
3. **Track progress** — What's done, what's next
|
|
75
|
+
4. **Summarize code** — What scripts do what
|
|
76
|
+
5. **Capture context** — So future-you remembers
|
|
77
|
+
|
|
78
|
+
### Beamer Tips
|
|
79
|
+
- Custom themes > recognizable templates
|
|
80
|
+
- Metropolis or Madrid themes as starting points
|
|
81
|
+
- Sans-serif fonts for readability
|
|
82
|
+
- Generous margins and whitespace
|
|
83
|
+
- Compile without warnings (fix overfull hboxes)
|
|
84
|
+
|
|
85
|
+
## Example Prompt
|
|
86
|
+
|
|
87
|
+
"Create a project deck for my Indifference Adjustments paper. Read my progress logs and the current state of the project, then make a 10-slide deck that I can use in my supervisor meeting next week. Include the key figures and a clear 'what's next' section."
|