dsh-aris-panel 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/LICENSE +21 -0
- package/README.md +98 -0
- package/README_CN.md +87 -0
- package/dsh/checkout.patch.yml +38 -0
- package/dsh/client.js +634 -0
- package/dsh/cordis.patch.yml +44 -0
- package/dsh/index.mjs +76 -0
- package/dsh/run-status.mjs +182 -0
- package/dsh/scope-limits.mjs +50 -0
- package/dsh/workbench.mjs +291 -0
- package/mcp-servers/claude-review/README.md +93 -0
- package/mcp-servers/claude-review/run_with_claude_aws.sh +49 -0
- package/mcp-servers/claude-review/server.py +718 -0
- package/mcp-servers/codex-image2/README.md +65 -0
- package/mcp-servers/codex-image2/server.py +893 -0
- package/mcp-servers/feishu-bridge/requirements.txt +1 -0
- package/mcp-servers/feishu-bridge/server.py +240 -0
- package/mcp-servers/gemini-review/README.md +171 -0
- package/mcp-servers/gemini-review/server.py +1856 -0
- package/mcp-servers/llm-chat/requirements.txt +1 -0
- package/mcp-servers/llm-chat/server.py +664 -0
- package/mcp-servers/manual-review/README.md +133 -0
- package/mcp-servers/manual-review/server.py +910 -0
- package/mcp-servers/manual-review/ui.html +279 -0
- package/mcp-servers/minimax-chat/requirements.txt +1 -0
- package/mcp-servers/minimax-chat/server.py +381 -0
- package/package.json +51 -0
- package/skills/ablation-planner/SKILL.md +123 -0
- package/skills/alphaxiv/SKILL.md +196 -0
- package/skills/analyze-results/SKILL.md +46 -0
- package/skills/arxiv/SKILL.md +248 -0
- package/skills/auto-paper-improvement-loop/SKILL.md +651 -0
- package/skills/auto-review-loop/SKILL.md +1137 -0
- package/skills/auto-review-loop-llm/SKILL.md +259 -0
- package/skills/auto-review-loop-minimax/SKILL.md +302 -0
- package/skills/citation-audit/SKILL.md +502 -0
- package/skills/claims-drafting/SKILL.md +227 -0
- package/skills/comm-lit-review/SKILL.md +297 -0
- package/skills/deepxiv/SKILL.md +263 -0
- package/skills/dse-loop/SKILL.md +296 -0
- package/skills/embodiment-description/SKILL.md +129 -0
- package/skills/exa-search/SKILL.md +205 -0
- package/skills/experiment-audit/SKILL.md +311 -0
- package/skills/experiment-bridge/SKILL.md +376 -0
- package/skills/experiment-plan/SKILL.md +249 -0
- package/skills/experiment-queue/SKILL.md +431 -0
- package/skills/experiment-queue/scripts/build_manifest.py +142 -0
- package/skills/experiment-queue/scripts/queue_manager.py +433 -0
- package/skills/feishu-notify/SKILL.md +156 -0
- package/skills/figure-description/SKILL.md +138 -0
- package/skills/figure-spec/SKILL.md +262 -0
- package/skills/figure-spec/scripts/figure_renderer.py +799 -0
- package/skills/formula-derivation/SKILL.md +280 -0
- package/skills/gemini-search/SKILL.md +231 -0
- package/skills/grant-proposal/SKILL.md +698 -0
- package/skills/idea-creator/SKILL.md +542 -0
- package/skills/idea-discovery/SKILL.md +521 -0
- package/skills/idea-discovery-robot/SKILL.md +363 -0
- package/skills/integrity-forensics/SKILL.md +284 -0
- package/skills/interview-cheatsheet/SKILL.md +245 -0
- package/skills/invention-structuring/SKILL.md +188 -0
- package/skills/jurisdiction-format/SKILL.md +192 -0
- package/skills/kill-argument/SKILL.md +437 -0
- package/skills/mermaid-diagram/SKILL.md +419 -0
- package/skills/meta-apply/SKILL.md +141 -0
- package/skills/meta-optimize/SKILL.md +437 -0
- package/skills/monitor-experiment/SKILL.md +140 -0
- package/skills/novelty-check/SKILL.md +101 -0
- package/skills/openalex/SKILL.md +237 -0
- package/skills/overleaf-sync/SKILL.md +220 -0
- package/skills/paper-claim-audit/SKILL.md +348 -0
- package/skills/paper-compile/SKILL.md +266 -0
- package/skills/paper-figure/SKILL.md +312 -0
- package/skills/paper-illustration/SKILL.md +736 -0
- package/skills/paper-illustration-image2/SKILL.md +391 -0
- package/skills/paper-illustration-image2/scripts/paper_illustration_image2.py +255 -0
- package/skills/paper-plan/SKILL.md +386 -0
- package/skills/paper-poster/SKILL.md +19 -0
- package/skills/paper-poster-html/DESIGN_FINAL.md +176 -0
- package/skills/paper-poster-html/IMPLEMENTATION_CONVENTIONS.md +161 -0
- package/skills/paper-poster-html/LICENSES/posterly-MIT.txt +21 -0
- package/skills/paper-poster-html/NOTICE.md +57 -0
- package/skills/paper-poster-html/SKILL.md +323 -0
- package/skills/paper-poster-html/scripts/_posterly/__init__.py +0 -0
- package/skills/paper-poster-html/scripts/_posterly/canvas.py +200 -0
- package/skills/paper-poster-html/scripts/_posterly/measure.py +588 -0
- package/skills/paper-poster-html/scripts/_posterly/polish.py +498 -0
- package/skills/paper-poster-html/scripts/_posterly/preflight.py +489 -0
- package/skills/paper-poster-html/scripts/_posterly/render.py +215 -0
- package/skills/paper-poster-html/scripts/_posterly/textutil.py +16 -0
- package/skills/paper-poster-html/scripts/_posterly/verify_final.py +171 -0
- package/skills/paper-poster-html/scripts/asset_check.py +897 -0
- package/skills/paper-poster-html/scripts/extract_pdf_figures.py +666 -0
- package/skills/paper-poster-html/scripts/poster_check.py +251 -0
- package/skills/paper-poster-html/scripts/preprocess_figures.py +238 -0
- package/skills/paper-poster-html/scripts/render_preview.py +217 -0
- package/skills/paper-poster-html/scripts/run_gates.py +556 -0
- package/skills/paper-poster-html/scripts/style_check.py +1324 -0
- package/skills/paper-poster-html/templates/COMPONENTS.md +462 -0
- package/skills/paper-poster-html/templates/README.md +170 -0
- package/skills/paper-poster-html/templates/landscape_4col.html +1032 -0
- package/skills/paper-poster-html/templates/landscape_hero.html +1046 -0
- package/skills/paper-poster-html/templates/portrait_2col.html +947 -0
- package/skills/paper-poster-html/templates/tokens/acl.json +9 -0
- package/skills/paper-poster-html/templates/tokens/cvpr.json +9 -0
- package/skills/paper-poster-html/templates/tokens/generic.json +9 -0
- package/skills/paper-poster-html/templates/tokens/iclr.json +9 -0
- package/skills/paper-poster-html/templates/tokens/icml.json +9 -0
- package/skills/paper-poster-html/templates/tokens/neurips.json +9 -0
- package/skills/paper-slides/SKILL.md +635 -0
- package/skills/paper-talk/SKILL.md +381 -0
- package/skills/paper-write/SKILL.md +604 -0
- package/skills/paper-write/templates/IEEEtran.bst +2409 -0
- package/skills/paper-write/templates/IEEEtran.cls +6347 -0
- package/skills/paper-write/templates/iclr2026.tex +84 -0
- package/skills/paper-write/templates/icml2025.tex +87 -0
- package/skills/paper-write/templates/ieee_conference.tex +89 -0
- package/skills/paper-write/templates/ieee_journal.tex +93 -0
- package/skills/paper-write/templates/math_commands.tex +48 -0
- package/skills/paper-write/templates/neurips2025.tex +80 -0
- package/skills/paper-writing/SKILL.md +916 -0
- package/skills/patent-novelty-check/SKILL.md +153 -0
- package/skills/patent-pipeline/SKILL.md +344 -0
- package/skills/patent-review/SKILL.md +203 -0
- package/skills/pixel-art/SKILL.md +137 -0
- package/skills/prior-art-search/SKILL.md +146 -0
- package/skills/proof-checker/SKILL.md +866 -0
- package/skills/proof-orchestrator/NOTICE.md +24 -0
- package/skills/proof-orchestrator/SKILL.md +254 -0
- package/skills/proof-orchestrator/references/audit-output-contract.md +126 -0
- package/skills/proof-orchestrator/references/deepseek-routing.md +74 -0
- package/skills/proof-orchestrator/references/dispatch-prompts.md +227 -0
- package/skills/proof-orchestrator/references/notation-audit.md +135 -0
- package/skills/proof-orchestrator/references/proof-audit-rubric.md +70 -0
- package/skills/proof-orchestrator/references/stress-tests.md +38 -0
- package/skills/proof-writer/SKILL.md +223 -0
- package/skills/qzcli/SKILL.md +324 -0
- package/skills/rebuttal/SKILL.md +376 -0
- package/skills/render-html/SKILL.md +316 -0
- package/skills/render-html/scripts/render_html.py +1006 -0
- package/skills/render-html/scripts/templates/academic.html +703 -0
- package/skills/render-html/scripts/templates/dashboard.html +333 -0
- package/skills/research-lit/SKILL.md +756 -0
- package/skills/research-pipeline/SKILL.md +384 -0
- package/skills/research-refine/SKILL.md +770 -0
- package/skills/research-refine-pipeline/SKILL.md +186 -0
- package/skills/research-review/SKILL.md +198 -0
- package/skills/research-wiki/SKILL.md +461 -0
- package/skills/resubmit-pipeline/SKILL.md +447 -0
- package/skills/result-to-claim/SKILL.md +311 -0
- package/skills/run-experiment/SKILL.md +313 -0
- package/skills/semantic-scholar/SKILL.md +236 -0
- package/skills/serverless-modal/SKILL.md +335 -0
- package/skills/shared-references/acceptance-gate.md +324 -0
- package/skills/shared-references/assurance-contract.md +248 -0
- package/skills/shared-references/capture-antipatterns.md +78 -0
- package/skills/shared-references/citation-discipline.md +583 -0
- package/skills/shared-references/compute-env-contract.md +163 -0
- package/skills/shared-references/effort-contract.md +183 -0
- package/skills/shared-references/evidence-precheck.md +65 -0
- package/skills/shared-references/experiment-integrity.md +49 -0
- package/skills/shared-references/external-cadence.md +326 -0
- package/skills/shared-references/fan-out-pattern.md +366 -0
- package/skills/shared-references/injection-hygiene.md +127 -0
- package/skills/shared-references/integration-contract.md +461 -0
- package/skills/shared-references/output-composition.md +93 -0
- package/skills/shared-references/output-language.md +45 -0
- package/skills/shared-references/output-manifest.md +49 -0
- package/skills/shared-references/output-versioning.md +111 -0
- package/skills/shared-references/patent-format-cn.md +199 -0
- package/skills/shared-references/patent-format-ep.md +173 -0
- package/skills/shared-references/patent-format-us.md +161 -0
- package/skills/shared-references/patent-writing-principles.md +197 -0
- package/skills/shared-references/prior-art-databases.md +141 -0
- package/skills/shared-references/resumable-runs.md +109 -0
- package/skills/shared-references/review-scope-limits.md +81 -0
- package/skills/shared-references/review-tracing.md +391 -0
- package/skills/shared-references/reviewer-independence.md +79 -0
- package/skills/shared-references/reviewer-routing.md +852 -0
- package/skills/shared-references/skill-governance.md +104 -0
- package/skills/shared-references/taste-calibration.md +85 -0
- package/skills/shared-references/venue-checklists.md +114 -0
- package/skills/shared-references/wiki-helper-resolution.md +134 -0
- package/skills/shared-references/writing-principles.md +525 -0
- package/skills/skills-codex/README.md +102 -0
- package/skills/skills-codex/README_CN.md +100 -0
- package/skills/skills-codex/ablation-planner/SKILL.md +126 -0
- package/skills/skills-codex/alphaxiv/SKILL.md +186 -0
- package/skills/skills-codex/analyze-results/SKILL.md +45 -0
- package/skills/skills-codex/arxiv/SKILL.md +210 -0
- package/skills/skills-codex/auto-paper-improvement-loop/SKILL.md +574 -0
- package/skills/skills-codex/auto-review-loop/SKILL.md +500 -0
- package/skills/skills-codex/auto-review-loop-llm/SKILL.md +247 -0
- package/skills/skills-codex/auto-review-loop-minimax/SKILL.md +290 -0
- package/skills/skills-codex/citation-audit/SKILL.md +504 -0
- package/skills/skills-codex/claims-drafting/SKILL.md +239 -0
- package/skills/skills-codex/comm-lit-review/SKILL.md +299 -0
- package/skills/skills-codex/comm-lit-review/references/domain-taxonomy.md +57 -0
- package/skills/skills-codex/comm-lit-review/references/output-template.md +37 -0
- package/skills/skills-codex/comm-lit-review/references/source-policy.md +99 -0
- package/skills/skills-codex/comm-lit-review/references/venue-tiering.md +112 -0
- package/skills/skills-codex/deepxiv/SKILL.md +142 -0
- package/skills/skills-codex/dse-loop/SKILL.md +285 -0
- package/skills/skills-codex/embodiment-description/SKILL.md +129 -0
- package/skills/skills-codex/exa-search/SKILL.md +192 -0
- package/skills/skills-codex/experiment-audit/SKILL.md +286 -0
- package/skills/skills-codex/experiment-bridge/SKILL.md +356 -0
- package/skills/skills-codex/experiment-plan/SKILL.md +249 -0
- package/skills/skills-codex/experiment-queue/SKILL.md +401 -0
- package/skills/skills-codex/feishu-notify/SKILL.md +155 -0
- package/skills/skills-codex/figure-description/SKILL.md +138 -0
- package/skills/skills-codex/figure-spec/SKILL.md +252 -0
- package/skills/skills-codex/formula-derivation/SKILL.md +280 -0
- package/skills/skills-codex/gemini-search/SKILL.md +205 -0
- package/skills/skills-codex/grant-proposal/SKILL.md +626 -0
- package/skills/skills-codex/idea-creator/SKILL.md +405 -0
- package/skills/skills-codex/idea-discovery/SKILL.md +475 -0
- package/skills/skills-codex/idea-discovery-robot/SKILL.md +362 -0
- package/skills/skills-codex/integrity-forensics/SKILL.md +106 -0
- package/skills/skills-codex/interview-cheatsheet/SKILL.md +245 -0
- package/skills/skills-codex/invention-structuring/SKILL.md +188 -0
- package/skills/skills-codex/jurisdiction-format/SKILL.md +192 -0
- package/skills/skills-codex/kill-argument/SKILL.md +403 -0
- package/skills/skills-codex/mermaid-diagram/SKILL.md +379 -0
- package/skills/skills-codex/meta-apply/SKILL.md +154 -0
- package/skills/skills-codex/meta-optimize/SKILL.md +348 -0
- package/skills/skills-codex/monitor-experiment/SKILL.md +98 -0
- package/skills/skills-codex/novelty-check/SKILL.md +89 -0
- package/skills/skills-codex/openalex/SKILL.md +228 -0
- package/skills/skills-codex/overleaf-sync/SKILL.md +220 -0
- package/skills/skills-codex/paper-claim-audit/SKILL.md +350 -0
- package/skills/skills-codex/paper-compile/SKILL.md +253 -0
- package/skills/skills-codex/paper-figure/SKILL.md +311 -0
- package/skills/skills-codex/paper-illustration/SKILL.md +690 -0
- package/skills/skills-codex/paper-illustration-image2/SKILL.md +383 -0
- package/skills/skills-codex/paper-illustration-image2/scripts/paper_illustration_image2.py +255 -0
- package/skills/skills-codex/paper-plan/SKILL.md +278 -0
- package/skills/skills-codex/paper-poster/SKILL.md +19 -0
- package/skills/skills-codex/paper-poster-html/SKILL.md +377 -0
- package/skills/skills-codex/paper-slides/SKILL.md +571 -0
- package/skills/skills-codex/paper-talk/SKILL.md +381 -0
- package/skills/skills-codex/paper-write/SKILL.md +411 -0
- package/skills/skills-codex/paper-write/templates/IEEEtran.bst +2409 -0
- package/skills/skills-codex/paper-write/templates/IEEEtran.cls +6347 -0
- package/skills/skills-codex/paper-write/templates/aaai2026.bst +1493 -0
- package/skills/skills-codex/paper-write/templates/aaai2026.sty +315 -0
- package/skills/skills-codex/paper-write/templates/aaai2026.tex +952 -0
- package/skills/skills-codex/paper-write/templates/acl.sty +312 -0
- package/skills/skills-codex/paper-write/templates/acl2026.tex +377 -0
- package/skills/skills-codex/paper-write/templates/acl_natbib.bst +1940 -0
- package/skills/skills-codex/paper-write/templates/acm.bst +3081 -0
- package/skills/skills-codex/paper-write/templates/acm_mm2026.tex +204 -0
- package/skills/skills-codex/paper-write/templates/acmart.cls +3520 -0
- package/skills/skills-codex/paper-write/templates/cvpr.bst +1448 -0
- package/skills/skills-codex/paper-write/templates/cvpr.sty +508 -0
- package/skills/skills-codex/paper-write/templates/cvpr2026.tex +63 -0
- package/skills/skills-codex/paper-write/templates/iclr2026.tex +84 -0
- package/skills/skills-codex/paper-write/templates/iclr2026_conference.bst +1440 -0
- package/skills/skills-codex/paper-write/templates/iclr2026_conference.sty +246 -0
- package/skills/skills-codex/paper-write/templates/icml2026.sty +767 -0
- package/skills/skills-codex/paper-write/templates/icml2026.tex +662 -0
- package/skills/skills-codex/paper-write/templates/ieee_conference.tex +89 -0
- package/skills/skills-codex/paper-write/templates/ieee_journal.tex +93 -0
- package/skills/skills-codex/paper-write/templates/math_commands.tex +48 -0
- package/skills/skills-codex/paper-write/templates/neurips2026.tex +493 -0
- package/skills/skills-codex/paper-write/templates/neurips_2026.sty +437 -0
- package/skills/skills-codex/paper-writing/SKILL.md +731 -0
- package/skills/skills-codex/patent-novelty-check/SKILL.md +153 -0
- package/skills/skills-codex/patent-pipeline/SKILL.md +344 -0
- package/skills/skills-codex/patent-review/SKILL.md +202 -0
- package/skills/skills-codex/pixel-art/SKILL.md +139 -0
- package/skills/skills-codex/prior-art-search/SKILL.md +146 -0
- package/skills/skills-codex/proof-checker/SKILL.md +554 -0
- package/skills/skills-codex/proof-orchestrator/SKILL.md +260 -0
- package/skills/skills-codex/proof-orchestrator/references/audit-output-contract.md +126 -0
- package/skills/skills-codex/proof-orchestrator/references/deepseek-routing.md +76 -0
- package/skills/skills-codex/proof-orchestrator/references/dispatch-prompts.md +227 -0
- package/skills/skills-codex/proof-orchestrator/references/notation-audit.md +135 -0
- package/skills/skills-codex/proof-orchestrator/references/proof-audit-rubric.md +70 -0
- package/skills/skills-codex/proof-orchestrator/references/stress-tests.md +38 -0
- package/skills/skills-codex/proof-writer/SKILL.md +222 -0
- package/skills/skills-codex/qzcli/SKILL.md +324 -0
- package/skills/skills-codex/rebuttal/SKILL.md +305 -0
- package/skills/skills-codex/render-html/SKILL.md +305 -0
- package/skills/skills-codex/render-html/scripts/__pycache__/render_html.cpython-314.pyc +0 -0
- package/skills/skills-codex/render-html/scripts/render_html.py +909 -0
- package/skills/skills-codex/render-html/scripts/templates/academic.html +342 -0
- package/skills/skills-codex/render-html/scripts/templates/dashboard.html +333 -0
- package/skills/skills-codex/research-lit/SKILL.md +464 -0
- package/skills/skills-codex/research-pipeline/SKILL.md +340 -0
- package/skills/skills-codex/research-refine/SKILL.md +721 -0
- package/skills/skills-codex/research-refine-pipeline/SKILL.md +186 -0
- package/skills/skills-codex/research-review/SKILL.md +135 -0
- package/skills/skills-codex/research-wiki/SKILL.md +421 -0
- package/skills/skills-codex/resubmit-pipeline/SKILL.md +444 -0
- package/skills/skills-codex/result-to-claim/SKILL.md +246 -0
- package/skills/skills-codex/run-experiment/SKILL.md +236 -0
- package/skills/skills-codex/semantic-scholar/SKILL.md +219 -0
- package/skills/skills-codex/serverless-modal/SKILL.md +335 -0
- package/skills/skills-codex/shared-references/acceptance-gate.md +336 -0
- package/skills/skills-codex/shared-references/assurance-contract.md +139 -0
- package/skills/skills-codex/shared-references/capture-antipatterns.md +84 -0
- package/skills/skills-codex/shared-references/citation-discipline.md +452 -0
- package/skills/skills-codex/shared-references/compute-env-contract.md +163 -0
- package/skills/skills-codex/shared-references/effort-contract.md +143 -0
- package/skills/skills-codex/shared-references/evidence-precheck.md +73 -0
- package/skills/skills-codex/shared-references/experiment-integrity.md +49 -0
- package/skills/skills-codex/shared-references/external-cadence.md +334 -0
- package/skills/skills-codex/shared-references/fan-out-pattern.md +375 -0
- package/skills/skills-codex/shared-references/injection-hygiene.md +132 -0
- package/skills/skills-codex/shared-references/integration-contract.md +372 -0
- package/skills/skills-codex/shared-references/output-composition.md +98 -0
- package/skills/skills-codex/shared-references/output-language.md +45 -0
- package/skills/skills-codex/shared-references/output-manifest.md +40 -0
- package/skills/skills-codex/shared-references/output-versioning.md +111 -0
- package/skills/skills-codex/shared-references/patent-format-cn.md +199 -0
- package/skills/skills-codex/shared-references/patent-format-ep.md +173 -0
- package/skills/skills-codex/shared-references/patent-format-us.md +161 -0
- package/skills/skills-codex/shared-references/patent-writing-principles.md +197 -0
- package/skills/skills-codex/shared-references/prior-art-databases.md +141 -0
- package/skills/skills-codex/shared-references/resumable-runs.md +125 -0
- package/skills/skills-codex/shared-references/review-scope-limits.md +81 -0
- package/skills/skills-codex/shared-references/review-tracing.md +144 -0
- package/skills/skills-codex/shared-references/reviewer-independence.md +66 -0
- package/skills/skills-codex/shared-references/reviewer-routing.md +128 -0
- package/skills/skills-codex/shared-references/skill-governance.md +119 -0
- package/skills/skills-codex/shared-references/taste-calibration.md +90 -0
- package/skills/skills-codex/shared-references/venue-checklists.md +73 -0
- package/skills/skills-codex/shared-references/wiki-helper-resolution.md +69 -0
- package/skills/skills-codex/shared-references/writing-principles.md +525 -0
- package/skills/skills-codex/slides-polish/SKILL.md +563 -0
- package/skills/skills-codex/specification-writing/SKILL.md +211 -0
- package/skills/skills-codex/system-profile/SKILL.md +103 -0
- package/skills/skills-codex/training-check/SKILL.md +83 -0
- package/skills/skills-codex/vast-gpu/SKILL.md +394 -0
- package/skills/skills-codex/web-debug-search/SKILL.md +334 -0
- package/skills/skills-codex/wiki-enrich/SKILL.md +255 -0
- package/skills/skills-codex/writing-systems-papers/SKILL.md +184 -0
- package/skills/skills-codex-claude-review/README.md +79 -0
- package/skills/skills-codex-claude-review/README_CN.md +78 -0
- package/skills/skills-codex-claude-review/auto-paper-improvement-loop/SKILL.md +581 -0
- package/skills/skills-codex-claude-review/auto-review-loop/SKILL.md +510 -0
- package/skills/skills-codex-claude-review/novelty-check/SKILL.md +102 -0
- package/skills/skills-codex-claude-review/paper-figure/SKILL.md +319 -0
- package/skills/skills-codex-claude-review/paper-plan/SKILL.md +287 -0
- package/skills/skills-codex-claude-review/paper-write/SKILL.md +420 -0
- package/skills/skills-codex-claude-review/research-refine/SKILL.md +732 -0
- package/skills/skills-codex-claude-review/research-review/SKILL.md +149 -0
- package/skills/skills-codex-gemini-review/README.md +176 -0
- package/skills/skills-codex-gemini-review/README_CN.md +175 -0
- package/skills/skills-codex-gemini-review/auto-paper-improvement-loop/SKILL.md +331 -0
- package/skills/skills-codex-gemini-review/auto-review-loop/SKILL.md +304 -0
- package/skills/skills-codex-gemini-review/grant-proposal/SKILL.md +630 -0
- package/skills/skills-codex-gemini-review/idea-creator/SKILL.md +263 -0
- package/skills/skills-codex-gemini-review/idea-discovery/SKILL.md +275 -0
- package/skills/skills-codex-gemini-review/idea-discovery-robot/SKILL.md +365 -0
- package/skills/skills-codex-gemini-review/novelty-check/SKILL.md +92 -0
- package/skills/skills-codex-gemini-review/paper-figure/SKILL.md +289 -0
- package/skills/skills-codex-gemini-review/paper-plan/SKILL.md +265 -0
- package/skills/skills-codex-gemini-review/paper-poster-html/SKILL.md +102 -0
- package/skills/skills-codex-gemini-review/paper-slides/SKILL.md +582 -0
- package/skills/skills-codex-gemini-review/paper-write/SKILL.md +346 -0
- package/skills/skills-codex-gemini-review/paper-writing/SKILL.md +312 -0
- package/skills/skills-codex-gemini-review/research-refine/SKILL.md +674 -0
- package/skills/skills-codex-gemini-review/research-review/SKILL.md +112 -0
- package/skills/slides-polish/SKILL.md +565 -0
- package/skills/specification-writing/SKILL.md +211 -0
- package/skills/system-profile/SKILL.md +103 -0
- package/skills/training-check/SKILL.md +132 -0
- package/skills/vast-gpu/SKILL.md +394 -0
- package/skills/web-debug-search/SKILL.md +334 -0
- package/skills/wiki-enrich/SKILL.md +257 -0
- package/skills/writing-systems-papers/SKILL.md +184 -0
- package/templates/CLAUDE_MD_TEMPLATE.md +29 -0
- package/templates/EXPERIMENT_LOG_TEMPLATE.md +47 -0
- package/templates/EXPERIMENT_PLAN_TEMPLATE.md +51 -0
- package/templates/EXPERIMENT_PLAN_TEMPLATE_CN.md +53 -0
- package/templates/FINDINGS_TEMPLATE.md +52 -0
- package/templates/IDEA_CANDIDATES_TEMPLATE.md +47 -0
- package/templates/IDEA_CANDIDATES_TEMPLATE_CN.md +47 -0
- package/templates/INVENTION_BRIEF_TEMPLATE.md +87 -0
- package/templates/MANIFEST_TEMPLATE.md +7 -0
- package/templates/NARRATIVE_REPORT_TEMPLATE.md +49 -0
- package/templates/PAPER_PLAN_TEMPLATE.md +47 -0
- package/templates/PATENT_CLAIMS_TEMPLATE.md +78 -0
- package/templates/PATENT_SPECIFICATION_TEMPLATE.md +68 -0
- package/templates/README.md +57 -0
- package/templates/RESEARCH_BRIEF_TEMPLATE.md +35 -0
- package/templates/RESEARCH_BRIEF_TEMPLATE_CN.md +41 -0
- package/templates/RESEARCH_CONTRACT_TEMPLATE.md +60 -0
- package/templates/claude-hooks/corpus_write_guard.json +16 -0
- package/templates/claude-hooks/corpus_write_guard.py +85 -0
- package/templates/claude-hooks/meta_logging.json +74 -0
- package/templates/gitignore-trace.txt +3 -0
- package/tools/__pycache__/check_skills_inventory.cpython-314.pyc +0 -0
- package/tools/arxiv_fetch.py +311 -0
- package/tools/capture_filter.py +126 -0
- package/tools/check_skills_inventory.py +273 -0
- package/tools/convert_skills_to_llm_chat.py +282 -0
- package/tools/copilot_native_evidence.py +818 -0
- package/tools/deepxiv_fetch.py +213 -0
- package/tools/evidence_check.py +212 -0
- package/tools/exa_search.py +425 -0
- package/tools/experiment_queue/README.md +118 -0
- package/tools/experiment_queue/build_manifest.py +44 -0
- package/tools/experiment_queue/queue_manager.py +44 -0
- package/tools/extract_paper_style.py +560 -0
- package/tools/figure_renderer.py +69 -0
- package/tools/forensics_gate.py +669 -0
- package/tools/generate_codex_claude_review_overrides.py +299 -0
- package/tools/idea_discovery_gate.py +256 -0
- package/tools/install_aris.ps1 +1372 -0
- package/tools/install_aris.sh +1370 -0
- package/tools/install_aris_codex.sh +1023 -0
- package/tools/install_aris_copilot.sh +1052 -0
- package/tools/iteration_log.py +143 -0
- package/tools/lint_skills_helpers.sh +84 -0
- package/tools/meta_opt/check_ready.sh +80 -0
- package/tools/meta_opt/log_event.sh +91 -0
- package/tools/meta_opt/trigger_eval.py +280 -0
- package/tools/meta_opt/trigger_evals.sample.json +28 -0
- package/tools/openalex_fetch.py +326 -0
- package/tools/overleaf_audit.sh +104 -0
- package/tools/overleaf_setup.sh +150 -0
- package/tools/paper_illustration_image2.py +62 -0
- package/tools/provenance.py +294 -0
- package/tools/research_wiki.py +1720 -0
- package/tools/review_gate.py +502 -0
- package/tools/run_state.py +399 -0
- package/tools/save_trace.sh +477 -0
- package/tools/semantic_scholar_fetch.py +438 -0
- package/tools/skill-groups.tsv +116 -0
- package/tools/skill_picker.py +238 -0
- package/tools/smart_update.ps1 +521 -0
- package/tools/smart_update.sh +591 -0
- package/tools/smart_update_codex.sh +419 -0
- package/tools/smart_update_copilot.sh +605 -0
- package/tools/threat_scan.py +222 -0
- package/tools/verify_paper_audits.sh +487 -0
- package/tools/verify_papers.py +613 -0
- package/tools/verify_wiki_coverage.sh +176 -0
- package/tools/watchdog.py +485 -0
|
@@ -0,0 +1,346 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "paper-write"
|
|
3
|
+
description: "Draft LaTeX paper section by section from an outline. Use when user says \"写论文\", \"write paper\", \"draft LaTeX\", \"开始写\", or wants to generate LaTeX content from a paper plan."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
> Override for Codex users who want **Gemini**, not a second Codex agent, to act as the reviewer. Install this package **after** `skills/skills-codex/*`.
|
|
7
|
+
|
|
8
|
+
# Paper Write: Section-by-Section LaTeX Generation
|
|
9
|
+
|
|
10
|
+
> **Gemini overlay assurance:** `review_independence: cross-family` and `acceptance_status: accepted`.
|
|
11
|
+
|
|
12
|
+
Draft a LaTeX paper based on: **$ARGUMENTS**
|
|
13
|
+
|
|
14
|
+
## Constants
|
|
15
|
+
|
|
16
|
+
- **REVIEWER_MODEL = `gemini-review`** — Gemini reviewer invoked through the local `gemini-review` MCP bridge. Set `GEMINI_REVIEW_MODEL` if you need a specific Gemini model override.
|
|
17
|
+
- **TARGET_VENUE = `ICLR`** — Default venue. Supported: `ICLR`, `NeurIPS`, `ICML`. Determines style file and formatting.
|
|
18
|
+
- **ANONYMOUS = true** — If true, use anonymous author block. Set `false` for camera-ready.
|
|
19
|
+
- **MAX_PAGES = 9** — Main body page limit. Counts from first page to end of Conclusion section. References and appendix are NOT counted.
|
|
20
|
+
- **DBLP_BIBTEX = true** — Fetch real BibTeX from DBLP/CrossRef instead of LLM-generated entries. Eliminates hallucinated citations. Zero install required. Set `false` to use legacy behavior (LLM search + `[VERIFY]` markers).
|
|
21
|
+
|
|
22
|
+
## Inputs
|
|
23
|
+
|
|
24
|
+
1. **PAPER_PLAN.md** — outline with claims-evidence matrix, section plan, figure plan (from `/paper-plan`)
|
|
25
|
+
2. **NARRATIVE_REPORT.md** — the research narrative (primary source of content)
|
|
26
|
+
3. **Generated figures** — PDF/PNG files in `figures/` (from `/paper-figure`)
|
|
27
|
+
4. **LaTeX includes** — `figures/latex_includes.tex` (from `/paper-figure`)
|
|
28
|
+
5. **Bibliography** — existing `.bib` file, or will create one
|
|
29
|
+
|
|
30
|
+
If no PAPER_PLAN.md exists, ask the user to run `/paper-plan` first or provide a brief outline.
|
|
31
|
+
|
|
32
|
+
## Templates
|
|
33
|
+
|
|
34
|
+
### Venue-Specific Setup
|
|
35
|
+
|
|
36
|
+
The skill includes conference templates in `templates/`. Select based on TARGET_VENUE:
|
|
37
|
+
|
|
38
|
+
**ICLR:**
|
|
39
|
+
```latex
|
|
40
|
+
\documentclass{article}
|
|
41
|
+
\usepackage{iclr2026_conference,times}
|
|
42
|
+
% \iclrfinalcopy % Uncomment for camera-ready
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
**NeurIPS:**
|
|
46
|
+
```latex
|
|
47
|
+
\documentclass{article}
|
|
48
|
+
\usepackage[preprint]{neurips_2025}
|
|
49
|
+
% \usepackage[final]{neurips_2025} % Camera-ready
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**ICML:**
|
|
53
|
+
```latex
|
|
54
|
+
\documentclass[accepted]{icml2025}
|
|
55
|
+
% Use [accepted] for camera-ready
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Project Structure
|
|
59
|
+
|
|
60
|
+
Generate this file structure:
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
paper/
|
|
64
|
+
├── main.tex # master file (includes sections)
|
|
65
|
+
├── iclr2026_conference.sty # or neurips_2025.sty / icml2025.sty
|
|
66
|
+
├── math_commands.tex # shared math macros
|
|
67
|
+
├── references.bib # bibliography (filtered — only cited entries)
|
|
68
|
+
├── sections/
|
|
69
|
+
│ ├── 0_abstract.tex
|
|
70
|
+
│ ├── 1_introduction.tex
|
|
71
|
+
│ ├── 2_related_work.tex
|
|
72
|
+
│ ├── 3_method.tex # or preliminaries, setup, etc.
|
|
73
|
+
│ ├── 4_experiments.tex
|
|
74
|
+
│ ├── 5_conclusion.tex
|
|
75
|
+
│ └── A_appendix.tex # proof details, extra experiments
|
|
76
|
+
└── figures/ # symlink or copy from project figures/
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
**Section files are FLEXIBLE**: If the paper plan has 6-8 sections, create corresponding files (e.g., `4_theory.tex`, `5_experiments.tex`, `6_analysis.tex`, `7_conclusion.tex`).
|
|
80
|
+
|
|
81
|
+
## Workflow
|
|
82
|
+
|
|
83
|
+
### Step 0: Backup and Clean
|
|
84
|
+
|
|
85
|
+
If `paper/` already exists, back up to `paper-backup-{timestamp}/` before overwriting. Never silently destroy existing work.
|
|
86
|
+
|
|
87
|
+
**CRITICAL: Clean stale files.** When changing section structure (e.g., 5 sections → 7 sections), delete section files that are no longer referenced by `main.tex`. Stale files (e.g., old `5_conclusion.tex` left behind when conclusion moved to `7_conclusion.tex`) cause confusion and waste space.
|
|
88
|
+
|
|
89
|
+
### Step 1: Initialize Project
|
|
90
|
+
|
|
91
|
+
1. Create `paper/` directory
|
|
92
|
+
2. Copy venue template from `templates/` — the template already includes:
|
|
93
|
+
- All standard packages (amsmath, hyperref, cleveref, booktabs, etc.)
|
|
94
|
+
- Theorem environments with `\crefname{assumption}` fix
|
|
95
|
+
- Anonymous author block
|
|
96
|
+
3. Generate `math_commands.tex` with paper-specific notation
|
|
97
|
+
4. Create section files matching PAPER_PLAN structure
|
|
98
|
+
|
|
99
|
+
**Author block (anonymous mode):**
|
|
100
|
+
```latex
|
|
101
|
+
\author{Anonymous Authors}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Step 2: Generate math_commands.tex
|
|
105
|
+
|
|
106
|
+
Create shared math macros based on the paper's notation:
|
|
107
|
+
|
|
108
|
+
```latex
|
|
109
|
+
% math_commands.tex — shared notation
|
|
110
|
+
\newcommand{\R}{\mathbb{R}}
|
|
111
|
+
\newcommand{\E}{\mathbb{E}}
|
|
112
|
+
\DeclareMathOperator*{\argmin}{arg\,min}
|
|
113
|
+
\DeclareMathOperator*{\argmax}{arg\,max}
|
|
114
|
+
% Add paper-specific notation here
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### Step 3: Write Each Section
|
|
118
|
+
|
|
119
|
+
Process sections in order. For each section:
|
|
120
|
+
|
|
121
|
+
1. **Read the plan** — what claims, evidence, citations belong here
|
|
122
|
+
2. **Read NARRATIVE_REPORT.md** — extract relevant content, findings, and quantitative results
|
|
123
|
+
3. **Draft content** — write complete LaTeX (not placeholders)
|
|
124
|
+
4. **Insert figures/tables** — use snippets from `figures/latex_includes.tex`
|
|
125
|
+
5. **Add citations** — use `\citep{}` / `\citet{}` (all three venues use `natbib`)
|
|
126
|
+
|
|
127
|
+
#### Section-Specific Guidelines
|
|
128
|
+
|
|
129
|
+
**§0 Abstract:**
|
|
130
|
+
- Must be self-contained (understandable without reading the paper)
|
|
131
|
+
- Structure: problem → approach → key result → implication
|
|
132
|
+
- Include one concrete quantitative result
|
|
133
|
+
- 150-250 words (check venue limit)
|
|
134
|
+
- No citations, no undefined acronyms
|
|
135
|
+
- No `\begin{abstract}` — that's in main.tex
|
|
136
|
+
|
|
137
|
+
**§1 Introduction:**
|
|
138
|
+
- Open with a compelling hook (1-2 sentences, problem motivation)
|
|
139
|
+
- State the gap clearly ("However, ...")
|
|
140
|
+
- List contributions as a numbered or bulleted list
|
|
141
|
+
- End with a brief roadmap ("The rest of this paper is organized as...")
|
|
142
|
+
- Include the main result figure if space allows
|
|
143
|
+
- Target: 1.5 pages
|
|
144
|
+
|
|
145
|
+
**§2 Related Work:**
|
|
146
|
+
- **MINIMUM 1 full page** (3-4 substantive paragraphs). Short related work sections are a common reviewer complaint.
|
|
147
|
+
- Organize by category using `\paragraph{Category Name.}`
|
|
148
|
+
- Each category: 1 paragraph summarizing the line of work + 1-2 sentences positioning this paper
|
|
149
|
+
- Do NOT just list papers — synthesize and compare
|
|
150
|
+
- End each paragraph with how this paper relates/differs
|
|
151
|
+
|
|
152
|
+
**§3 Method / Preliminaries / Setup:**
|
|
153
|
+
- Define notation early (reference math_commands.tex)
|
|
154
|
+
- Use `\begin{definition}`, `\begin{theorem}` environments for formal statements
|
|
155
|
+
- For theory papers: include proof sketches of key results in main body, full proofs in appendix
|
|
156
|
+
- For theory papers: include a **comparison table** of prior bounds vs. this paper
|
|
157
|
+
- Include algorithm pseudocode if applicable (`algorithm2e` or `algorithmic`)
|
|
158
|
+
- Target: 1.5-2 pages
|
|
159
|
+
|
|
160
|
+
**§4 Experiments:**
|
|
161
|
+
- Start with experimental setup (datasets, baselines, metrics, implementation details)
|
|
162
|
+
- Main results table/figure first
|
|
163
|
+
- Then ablations and analysis
|
|
164
|
+
- Every claim from the introduction must have supporting evidence here
|
|
165
|
+
- Target: 2.5-3 pages
|
|
166
|
+
|
|
167
|
+
**§5 Conclusion:**
|
|
168
|
+
- Summarize contributions (NOT copy-paste from intro — rephrase)
|
|
169
|
+
- Limitations (be honest — reviewers appreciate this)
|
|
170
|
+
- Future work (1-2 concrete directions)
|
|
171
|
+
- Ethics statement and reproducibility statement (if venue requires)
|
|
172
|
+
- Target: 0.5 pages
|
|
173
|
+
|
|
174
|
+
**Appendix:**
|
|
175
|
+
- Proof details (full proofs of main-body theorems)
|
|
176
|
+
- Additional experiments, ablations
|
|
177
|
+
- Implementation details, hyperparameter tables
|
|
178
|
+
- Additional visualizations
|
|
179
|
+
|
|
180
|
+
### Step 4: Build Bibliography
|
|
181
|
+
|
|
182
|
+
**CRITICAL: Only include entries that are actually cited in the paper.**
|
|
183
|
+
|
|
184
|
+
1. Scan all `\citep{}` and `\citet{}` references in the drafted sections
|
|
185
|
+
2. Build a citation key list
|
|
186
|
+
3. For each citation key:
|
|
187
|
+
- Check existing `.bib` files in the project/narrative docs
|
|
188
|
+
- If not found and **DBLP_BIBTEX = true**, use the verified fetch chain below
|
|
189
|
+
- If not found and **DBLP_BIBTEX = false**, search arXiv/Scholar for correct BibTeX
|
|
190
|
+
- **NEVER fabricate BibTeX entries** — mark unknown ones with `[VERIFY]` comment
|
|
191
|
+
4. Write `references.bib` containing ONLY cited entries (no bloat)
|
|
192
|
+
|
|
193
|
+
#### Verified BibTeX Fetch (when DBLP_BIBTEX = true)
|
|
194
|
+
|
|
195
|
+
Three-step fallback chain — zero install, zero auth, all real BibTeX:
|
|
196
|
+
|
|
197
|
+
**Step A: DBLP (best quality — full venue, pages, editors)**
|
|
198
|
+
```bash
|
|
199
|
+
# 1. Search by title + first author
|
|
200
|
+
curl -s "https://dblp.org/search/publ/api?q=TITLE+AUTHOR&format=json&h=3"
|
|
201
|
+
# 2. Extract DBLP key from result (e.g., conf/nips/VaswaniSPUJGKP17)
|
|
202
|
+
# 3. Fetch real BibTeX
|
|
203
|
+
curl -s "https://dblp.org/rec/{key}.bib"
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
**Step B: CrossRef DOI (fallback — works for arXiv preprints)**
|
|
207
|
+
```bash
|
|
208
|
+
# If paper has a DOI or arXiv ID (arXiv DOI = 10.48550/arXiv.{id})
|
|
209
|
+
curl -sLH "Accept: application/x-bibtex" "https://doi.org/{doi}"
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
**Step C: Mark `[VERIFY]` (last resort)**
|
|
213
|
+
If both DBLP and CrossRef return nothing, mark the entry with `% [VERIFY]` comment. Do NOT fabricate.
|
|
214
|
+
|
|
215
|
+
**Why this matters:** LLM-generated BibTeX frequently hallucinates venue names, page numbers, or even co-authors. DBLP and CrossRef return publisher-verified metadata. Upstream skills (`/research-lit`, `/novelty-check`) may mention papers from LLM memory — this fetch chain is the gate that prevents hallucinated citations from entering the final `.bib`.
|
|
216
|
+
|
|
217
|
+
**Automated bib cleaning** — use this Python pattern to extract only cited entries:
|
|
218
|
+
|
|
219
|
+
```python
|
|
220
|
+
import re
|
|
221
|
+
# 1. Grep all \citep{...} and \citet{...} from all .tex files
|
|
222
|
+
# 2. Extract unique keys (handle multi-cite like \citep{a,b,c})
|
|
223
|
+
# 3. Parse the full .bib file, keep only entries whose key is in the cited set
|
|
224
|
+
# 4. Write the filtered bib
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
This prevents bib bloat (e.g., 948 lines → 215 lines in testing).
|
|
228
|
+
|
|
229
|
+
**Citation verification rules (from claude-scholar + Imbad0202):**
|
|
230
|
+
1. Every BibTeX entry must have: author, title, year, venue/journal
|
|
231
|
+
2. Prefer published venue versions over arXiv preprints (if published)
|
|
232
|
+
3. Use consistent key format: `{firstauthor}{year}{keyword}` (e.g., `ho2020denoising`)
|
|
233
|
+
4. Double-check year and venue for every entry
|
|
234
|
+
5. Remove duplicate entries (same paper with different keys)
|
|
235
|
+
|
|
236
|
+
### Step 5: De-AI Polish (from kgraph57/paper-writer-skill)
|
|
237
|
+
|
|
238
|
+
After drafting all sections, scan for common AI writing patterns and fix them:
|
|
239
|
+
|
|
240
|
+
**Content patterns to fix:**
|
|
241
|
+
- Significance inflation ("groundbreaking", "revolutionary" → use measured language)
|
|
242
|
+
- Formulaic transitions ("In this section, we..." → remove or vary)
|
|
243
|
+
- Generic conclusions ("This work opens exciting new avenues" → be specific)
|
|
244
|
+
|
|
245
|
+
**Language patterns to fix (watch words):**
|
|
246
|
+
- Replace: delve, pivotal, landscape, tapestry, underscore, noteworthy, intriguingly
|
|
247
|
+
- Remove filler: "It is worth noting that", "Importantly,", "Notably,"
|
|
248
|
+
- Avoid rule-of-three lists ("X, Y, and Z" appearing repeatedly)
|
|
249
|
+
- Don't start consecutive sentences with "This" or "We"
|
|
250
|
+
|
|
251
|
+
### Step 6: Cross-Review with REVIEWER_MODEL
|
|
252
|
+
|
|
253
|
+
Send the complete draft to Gemini review:
|
|
254
|
+
|
|
255
|
+
```
|
|
256
|
+
mcp__gemini-review__review_start:
|
|
257
|
+
prompt: |
|
|
258
|
+
Review this [VENUE] paper draft (main body, excluding appendix).
|
|
259
|
+
|
|
260
|
+
Focus on:
|
|
261
|
+
1. Does each claim from the intro have supporting evidence?
|
|
262
|
+
2. Is the writing clear, concise, and free of AI-isms?
|
|
263
|
+
3. Any logical gaps or unclear explanations?
|
|
264
|
+
4. Does it fit within [MAX_PAGES] pages (to end of Conclusion)?
|
|
265
|
+
5. Is related work sufficiently comprehensive (≥1 page)?
|
|
266
|
+
6. For theory papers: are proof sketches adequate?
|
|
267
|
+
7. Are figures/tables clearly described and properly referenced?
|
|
268
|
+
|
|
269
|
+
For each issue, specify: severity (CRITICAL/MAJOR/MINOR), location, and fix.
|
|
270
|
+
|
|
271
|
+
[paste full draft text]
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
After this start call, immediately save the returned `jobId` and poll `mcp__gemini-review__review_status` with a bounded `waitSeconds` until `done=true`. Treat the completed status payload's `response` as the reviewer output, and save the completed `threadId` for any follow-up round.
|
|
275
|
+
|
|
276
|
+
Apply CRITICAL and MAJOR fixes. Document MINOR issues for the user.
|
|
277
|
+
|
|
278
|
+
### Step 7: Reverse Outline Test (from Research-Paper-Writing-Skills)
|
|
279
|
+
|
|
280
|
+
After drafting all sections:
|
|
281
|
+
|
|
282
|
+
1. **Extract topic sentences** — pull the first sentence of every paragraph
|
|
283
|
+
2. **Read them in sequence** — they should form a coherent narrative on their own
|
|
284
|
+
3. **Check claim coverage** — every claim from the Claims-Evidence Matrix must appear
|
|
285
|
+
4. **Check evidence mapping** — every experiment/figure must support a stated claim
|
|
286
|
+
5. **Fix gaps** — if a topic sentence doesn't advance the story, rewrite the paragraph
|
|
287
|
+
|
|
288
|
+
### Step 8: Final Checks
|
|
289
|
+
|
|
290
|
+
Before declaring done:
|
|
291
|
+
|
|
292
|
+
- [ ] All `\ref{}` and `\label{}` match (no undefined references)
|
|
293
|
+
- [ ] All `\citep{}` / `\citet{}` have corresponding BibTeX entries
|
|
294
|
+
- [ ] No author information in anonymous mode
|
|
295
|
+
- [ ] Figure/table numbering is correct
|
|
296
|
+
- [ ] Page count within MAX_PAGES (main body to Conclusion end)
|
|
297
|
+
- [ ] No TODO/FIXME/XXX markers left in the text
|
|
298
|
+
- [ ] No `[VERIFY]` markers left unchecked
|
|
299
|
+
- [ ] Abstract is self-contained (understandable without reading the paper)
|
|
300
|
+
- [ ] Title is specific and informative (not generic)
|
|
301
|
+
- [ ] Related work is ≥1 full page
|
|
302
|
+
- [ ] references.bib contains ONLY cited entries (no bloat)
|
|
303
|
+
- [ ] **No stale section files** — every .tex in `sections/` is `\input`ed by `main.tex`
|
|
304
|
+
- [ ] **Section files match main.tex** — file numbering and `\input` paths are consistent
|
|
305
|
+
|
|
306
|
+
## Output Protocols
|
|
307
|
+
|
|
308
|
+
> Follow these shared protocols for all output files:
|
|
309
|
+
> - **[Output Versioning Protocol](../../shared-references/output-versioning.md)** — write timestamped file first, then copy to fixed name
|
|
310
|
+
> - **[Output Manifest Protocol](../../shared-references/output-manifest.md)** — log every output to MANIFEST.md
|
|
311
|
+
> - **[Output Language Protocol](../../shared-references/output-language.md)** — respect the project's language setting
|
|
312
|
+
|
|
313
|
+
## Key Rules
|
|
314
|
+
|
|
315
|
+
- **Large file handling**: If the Write tool fails due to file size, immediately retry using Bash (`cat << 'EOF' > file`) to write in chunks. Do NOT ask the user for permission — just do it silently.
|
|
316
|
+
|
|
317
|
+
- **Do NOT generate author names, emails, or affiliations** — use anonymous block or placeholder
|
|
318
|
+
- **Write complete sections, not outlines** — the output should be compilable LaTeX
|
|
319
|
+
- **One file per section** — modular structure for easy editing
|
|
320
|
+
- **Every claim must cite evidence** — cross-reference the Claims-Evidence Matrix
|
|
321
|
+
- **Compile-ready** — the output should compile with `latexmk` without errors (modulo missing figures)
|
|
322
|
+
- **No over-claiming** — use hedging language ("suggests", "indicates") for weak evidence
|
|
323
|
+
- **Venue style matters** — all three venues (ICLR/NeurIPS/ICML) use `natbib` (`\citep`/`\citet`)
|
|
324
|
+
- **Page limit = main body to Conclusion** — references and appendix do NOT count
|
|
325
|
+
- **Clean bib** — references.bib must only contain entries that are actually `\cite`d
|
|
326
|
+
- **Section count is flexible** — match PAPER_PLAN structure, don't force into 5 sections
|
|
327
|
+
- **Backup before overwrite** — never destroy existing `paper/` directory without backing up
|
|
328
|
+
|
|
329
|
+
## Writing Quality Reference
|
|
330
|
+
|
|
331
|
+
Principles from [Research-Paper-Writing-Skills](https://github.com/Master-cai/Research-Paper-Writing-Skills):
|
|
332
|
+
|
|
333
|
+
1. **One message per paragraph** — each paragraph makes exactly one point
|
|
334
|
+
2. **Topic sentence first** — the first sentence states the paragraph's message
|
|
335
|
+
3. **Explicit transitions** — connect paragraphs with logical connectors
|
|
336
|
+
4. **Reverse outline test** — extract topic sentences; they should form a coherent narrative
|
|
337
|
+
|
|
338
|
+
De-AI patterns from [kgraph57/paper-writer-skill](https://github.com/kgraph57/paper-writer-skill):
|
|
339
|
+
|
|
340
|
+
5. **No AI watch words** — delve, pivotal, landscape, tapestry, underscore
|
|
341
|
+
6. **No significance inflation** — groundbreaking, revolutionary, paradigm shift
|
|
342
|
+
7. **No formulaic structures** — vary sentence openings and transitions
|
|
343
|
+
|
|
344
|
+
## Acknowledgements
|
|
345
|
+
|
|
346
|
+
Writing methodology adapted from [Research-Paper-Writing-Skills](https://github.com/Master-cai/Research-Paper-Writing-Skills) (CCF award-winning methodology). Citation verification from [claude-scholar](https://github.com/Galaxy-Dawn/claude-scholar) and [Imbad0202/academic-research-skills](https://github.com/Imbad0202/academic-research-skills). De-AI polish from [kgraph57/paper-writer-skill](https://github.com/kgraph57/paper-writer-skill). Backup mechanism from [baoyu-skills](https://github.com/jimliu/baoyu-skills).
|
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "paper-writing"
|
|
3
|
+
description: "Workflow 3: Full paper writing pipeline. Orchestrates paper-plan \u2192 paper-figure \u2192 paper-write \u2192 paper-compile \u2192 auto-paper-improvement-loop to go from a narrative report to a polished, submission-ready PDF. Use when user says \\\"\u5199\u8bba\u6587\u5168\u6d41\u7a0b\\\", \\\"write paper pipeline\\\", \\\"\u4ece\u62a5\u544a\u5230PDF\\\", \\\"paper writing\\\", or wants the complete paper generation workflow."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
> Override for Codex users who want **Gemini**, not a second Codex agent, to act as the reviewer. Install this package **after** `skills/skills-codex/*`.
|
|
7
|
+
|
|
8
|
+
# Workflow 3: Paper Writing Pipeline
|
|
9
|
+
|
|
10
|
+
> **Gemini overlay assurance:** `review_independence: cross-family` and `acceptance_status: accepted`.
|
|
11
|
+
|
|
12
|
+
Orchestrate a complete paper writing workflow for: **$ARGUMENTS**
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
This skill chains five sub-skills into a single automated pipeline:
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
/paper-plan → /paper-figure → /paper-write → /paper-compile → /auto-paper-improvement-loop
|
|
20
|
+
(outline) (plots) (LaTeX) (build PDF) (review & polish ×2)
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Each phase builds on the previous one's output. The final deliverable is a polished, reviewed `paper/` directory with LaTeX source and compiled PDF.
|
|
24
|
+
|
|
25
|
+
## Constants
|
|
26
|
+
|
|
27
|
+
- **VENUE = `ICLR`** — Target venue. Options: `ICLR`, `NeurIPS`, `ICML`. Affects style file, page limit, citation format.
|
|
28
|
+
- **MAX_IMPROVEMENT_ROUNDS = 2** — Number of review→fix→recompile rounds in the improvement loop.
|
|
29
|
+
- **REVIEWER_MODEL = `gemini-review`** — Gemini reviewer invoked through the local `gemini-review` MCP bridge for plan review, figure review, writing review, and the improvement loop.
|
|
30
|
+
- **AUTO_PROCEED = true** — Auto-continue between phases. Set `false` to pause and wait for user approval after each phase.
|
|
31
|
+
- **HUMAN_CHECKPOINT = false** — When `true`, the improvement loop (Phase 5) pauses after each round's review to let you see the score and provide custom modification instructions. When `false` (default), the loop runs fully autonomously. Passed through to `/auto-paper-improvement-loop`.
|
|
32
|
+
|
|
33
|
+
> Override inline: `/paper-writing "NARRATIVE_REPORT.md" — venue: NeurIPS, human checkpoint: true`
|
|
34
|
+
|
|
35
|
+
## Inputs
|
|
36
|
+
|
|
37
|
+
This pipeline accepts one of:
|
|
38
|
+
|
|
39
|
+
1. **`NARRATIVE_REPORT.md`** (best) — structured research narrative with claims, experiments, results, figures
|
|
40
|
+
2. **Research direction + experiment results** — the skill will help draft the narrative first
|
|
41
|
+
3. **Existing `PAPER_PLAN.md`** — skip Phase 1, start from Phase 2
|
|
42
|
+
|
|
43
|
+
The more detailed the input (especially figure descriptions and quantitative results), the better the output.
|
|
44
|
+
|
|
45
|
+
## Pipeline
|
|
46
|
+
|
|
47
|
+
### Phase 1: Paper Plan
|
|
48
|
+
|
|
49
|
+
Invoke `/paper-plan` to create the structural outline:
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
/paper-plan "$ARGUMENTS"
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
**What this does:**
|
|
56
|
+
- Parse NARRATIVE_REPORT.md for claims, evidence, and figure descriptions
|
|
57
|
+
- Build a **Claims-Evidence Matrix** — every claim maps to evidence, every experiment supports a claim
|
|
58
|
+
- Design section structure (5-8 sections depending on paper type)
|
|
59
|
+
- Plan figure/table placement with data sources
|
|
60
|
+
- Scaffold citation structure
|
|
61
|
+
- Gemini reviews the plan for completeness via the `/paper-plan` overlay
|
|
62
|
+
|
|
63
|
+
**Output:** `PAPER_PLAN.md` with section plan, figure plan, citation scaffolding.
|
|
64
|
+
|
|
65
|
+
**Checkpoint:** Present the plan summary to the user.
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
📐 Paper plan complete:
|
|
69
|
+
- Title: [proposed title]
|
|
70
|
+
- Sections: [N] ([list])
|
|
71
|
+
- Figures: [N] auto-generated + [M] manual
|
|
72
|
+
- Target: [VENUE], [PAGE_LIMIT] pages
|
|
73
|
+
|
|
74
|
+
Shall I proceed with figure generation?
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
- **User approves** (or AUTO_PROCEED=true) → proceed to Phase 2.
|
|
78
|
+
- **User requests changes** → adjust plan and re-present.
|
|
79
|
+
|
|
80
|
+
### Phase 2: Figure Generation
|
|
81
|
+
|
|
82
|
+
Invoke `/paper-figure` to generate data-driven plots and tables:
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
/paper-figure "PAPER_PLAN.md"
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
**What this does:**
|
|
89
|
+
- Read figure plan from PAPER_PLAN.md
|
|
90
|
+
- Generate matplotlib/seaborn plots from JSON/CSV data
|
|
91
|
+
- Generate LaTeX comparison tables
|
|
92
|
+
- Create `figures/latex_includes.tex` for easy insertion
|
|
93
|
+
- Gemini reviews figure quality and captions via the `/paper-figure` overlay
|
|
94
|
+
|
|
95
|
+
**Output:** `figures/` directory with PDFs, generation scripts, and LaTeX snippets.
|
|
96
|
+
|
|
97
|
+
#### Phase 2b: AI Illustration Generation (when `illustration: true`)
|
|
98
|
+
|
|
99
|
+
**Skip this step entirely if `illustration` is not set or is `false`.**
|
|
100
|
+
|
|
101
|
+
If the paper plan includes architecture diagrams, pipeline figures, or method illustrations, invoke `/paper-illustration`:
|
|
102
|
+
|
|
103
|
+
```
|
|
104
|
+
/paper-illustration "[method description from PAPER_PLAN.md or NARRATIVE_REPORT.md]"
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
**What this does:**
|
|
108
|
+
- Codex plans the layout → Gemini optimizes → Nano Banana Pro renders → Codex reviews (score ≥ 9)
|
|
109
|
+
- Output: `figures/ai_generated/*.png` — publication-quality method diagrams
|
|
110
|
+
- Requires `GEMINI_API_KEY` environment variable
|
|
111
|
+
|
|
112
|
+
> **Without `illustration: true`:** Architecture diagrams must still be created manually (draw.io, Figma, TikZ) and placed in `figures/` before proceeding — same as before.
|
|
113
|
+
|
|
114
|
+
**Checkpoint:** List generated vs manual figures.
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
📊 Figures complete:
|
|
118
|
+
- Data plots (auto): [list]
|
|
119
|
+
- AI illustrations (auto): [list, if illustration: true]
|
|
120
|
+
- Manual (need your input): [list]
|
|
121
|
+
- LaTeX snippets: figures/latex_includes.tex
|
|
122
|
+
|
|
123
|
+
[If manual figures needed]: Please add them to figures/ before I proceed.
|
|
124
|
+
[If all auto]: Shall I proceed with LaTeX writing?
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Phase 3: LaTeX Writing
|
|
128
|
+
|
|
129
|
+
Invoke `/paper-write` to generate section-by-section LaTeX:
|
|
130
|
+
|
|
131
|
+
```
|
|
132
|
+
/paper-write "PAPER_PLAN.md"
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
**What this does:**
|
|
136
|
+
- Write each section following the plan, with proper LaTeX formatting
|
|
137
|
+
- Insert figure/table references from `figures/latex_includes.tex`
|
|
138
|
+
- Build `references.bib` from citation scaffolding
|
|
139
|
+
- Clean stale files from previous section structures
|
|
140
|
+
- Automated bib cleaning (remove uncited entries)
|
|
141
|
+
- De-AI polish (remove "delve", "pivotal", "landscape"...)
|
|
142
|
+
- Gemini reviews each section for quality via the `/paper-write` overlay
|
|
143
|
+
|
|
144
|
+
**Output:** `paper/` directory with `main.tex`, `sections/*.tex`, `references.bib`, `math_commands.tex`.
|
|
145
|
+
|
|
146
|
+
**Checkpoint:** Report section completion.
|
|
147
|
+
|
|
148
|
+
```
|
|
149
|
+
✍️ LaTeX writing complete:
|
|
150
|
+
- Sections: [N] written ([list])
|
|
151
|
+
- Citations: [N] unique keys in references.bib
|
|
152
|
+
- Stale files cleaned: [list, if any]
|
|
153
|
+
|
|
154
|
+
Shall I proceed with compilation?
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### Phase 4: Compilation
|
|
158
|
+
|
|
159
|
+
Invoke `/paper-compile` to build the PDF:
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
/paper-compile "paper/"
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
**What this does:**
|
|
166
|
+
- `latexmk -pdf` with automatic multi-pass compilation
|
|
167
|
+
- Auto-fix common errors (missing packages, undefined refs, BibTeX syntax)
|
|
168
|
+
- Up to 3 compilation attempts
|
|
169
|
+
- Post-compilation checks: undefined refs, page count, font embedding
|
|
170
|
+
- Precise page verification via `pdftotext`
|
|
171
|
+
- Stale file detection
|
|
172
|
+
|
|
173
|
+
**Output:** `paper/main.pdf`
|
|
174
|
+
|
|
175
|
+
**Checkpoint:** Report compilation results.
|
|
176
|
+
|
|
177
|
+
```
|
|
178
|
+
🔨 Compilation complete:
|
|
179
|
+
- Status: SUCCESS
|
|
180
|
+
- Pages: [X] (main body) + [Y] (references) + [Z] (appendix)
|
|
181
|
+
- Within page limit: YES/NO
|
|
182
|
+
- Undefined references: 0
|
|
183
|
+
- Undefined citations: 0
|
|
184
|
+
|
|
185
|
+
Shall I proceed with the improvement loop?
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
### Phase 5: Auto Improvement Loop
|
|
189
|
+
|
|
190
|
+
Invoke `/auto-paper-improvement-loop` to polish the paper:
|
|
191
|
+
|
|
192
|
+
```
|
|
193
|
+
/auto-paper-improvement-loop "paper/"
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
**What this does (2 rounds):**
|
|
197
|
+
|
|
198
|
+
**Round 1:** Gemini reviews the full paper → identifies CRITICAL/MAJOR/MINOR issues → Codex implements fixes → recompile → save `main_round1.pdf`
|
|
199
|
+
|
|
200
|
+
**Round 2:** Gemini re-reviews with conversation context → identifies remaining issues → Codex implements fixes → recompile → save `main_round2.pdf`
|
|
201
|
+
|
|
202
|
+
**Typical improvements:**
|
|
203
|
+
- Fix assumption-model mismatches
|
|
204
|
+
- Soften overclaims to match evidence
|
|
205
|
+
- Add missing interpretations and notation
|
|
206
|
+
- Strengthen limitations section
|
|
207
|
+
- Add theory-aligned experiments if needed
|
|
208
|
+
|
|
209
|
+
**Output:** Three PDFs for comparison + `PAPER_IMPROVEMENT_LOG.md`.
|
|
210
|
+
|
|
211
|
+
**Format check** (included in improvement loop Step 8): After final recompilation, auto-detect and fix overfull hboxes (content exceeding margins), verify page count vs venue limit, and ensure compact formatting. Any overfull > 10pt is fixed before generating the final PDF.
|
|
212
|
+
|
|
213
|
+
### Phase 5.9: Integrity Forensics (opt-in — Codex executor rules apply)
|
|
214
|
+
|
|
215
|
+
Same contract as the base Codex pack (`skills-codex/paper-writing` Phase 5.9,
|
|
216
|
+
which this overlay does not change): the executor here is Codex, so only
|
|
217
|
+
upstream's **deterministic-only slice** of `/integrity-forensics` is runnable
|
|
218
|
+
(numeric core + rules-only reporter — it can flag, it can never say
|
|
219
|
+
CLEAN), OFF unless the CURRENT `$ARGUMENTS` contains `— self_forensics:
|
|
220
|
+
true`. If opted in: run the launcher on `paper/` (absolute path), then before
|
|
221
|
+
the Final Report require `python3 "$GATE_HELPER" fresh --paper-dir paper/
|
|
222
|
+
--anti-ar-commit "$ANTI_AR_COMMIT"` exit 0 — an opted-in run without a fresh gate is **incomplete, not
|
|
223
|
+
skippable**; gate `BLOCK` refuses the Final Report.
|
|
224
|
+
|
|
225
|
+
### Phase 6: Final Report
|
|
226
|
+
|
|
227
|
+
```markdown
|
|
228
|
+
# Paper Writing Pipeline Report
|
|
229
|
+
|
|
230
|
+
**Input**: [NARRATIVE_REPORT.md or topic]
|
|
231
|
+
**Venue**: [ICLR/NeurIPS/ICML]
|
|
232
|
+
**Forensics**: [NO_NEW_BLOCKER | WARN: <n> open obligations (listed below) | BLOCK | n/a (opt-in, not requested)]
|
|
233
|
+
**Date**: [today]
|
|
234
|
+
|
|
235
|
+
## Pipeline Summary
|
|
236
|
+
|
|
237
|
+
| Phase | Status | Output |
|
|
238
|
+
|-------|--------|--------|
|
|
239
|
+
| 1. Paper Plan | ✅ | PAPER_PLAN.md |
|
|
240
|
+
| 2. Figures | ✅ | figures/ ([N] auto + [M] manual) |
|
|
241
|
+
| 3. LaTeX Writing | ✅ | paper/sections/*.tex ([N] sections, [M] citations) |
|
|
242
|
+
| 4. Compilation | ✅ | paper/main.pdf ([X] pages) |
|
|
243
|
+
| 5. Improvement | ✅ | [score0]/10 → [score2]/10 |
|
|
244
|
+
|
|
245
|
+
## Improvement Scores
|
|
246
|
+
| Round | Score | Key Changes |
|
|
247
|
+
|-------|-------|-------------|
|
|
248
|
+
| Round 0 | X/10 | Baseline |
|
|
249
|
+
| Round 1 | Y/10 | [summary] |
|
|
250
|
+
| Round 2 | Z/10 | [summary] |
|
|
251
|
+
|
|
252
|
+
## Deliverables
|
|
253
|
+
- paper/main.pdf — Final polished paper
|
|
254
|
+
- paper/main_round0_original.pdf — Before improvement
|
|
255
|
+
- paper/main_round1.pdf — After round 1
|
|
256
|
+
- paper/main_round2.pdf — After round 2
|
|
257
|
+
- paper/PAPER_IMPROVEMENT_LOG.md — Full review log
|
|
258
|
+
|
|
259
|
+
## Remaining Issues (if any)
|
|
260
|
+
- [items from final review that weren't addressed]
|
|
261
|
+
|
|
262
|
+
## Next Steps
|
|
263
|
+
- [ ] Visual inspection of PDF
|
|
264
|
+
- [ ] Add any missing manual figures
|
|
265
|
+
- [ ] Submit to [venue] via OpenReview / CMT / HotCRP
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
## Output Protocols
|
|
269
|
+
|
|
270
|
+
> Follow these shared protocols for all output files:
|
|
271
|
+
> - **[Output Versioning Protocol](../../shared-references/output-versioning.md)** — write timestamped file first, then copy to fixed name
|
|
272
|
+
> - **[Output Manifest Protocol](../../shared-references/output-manifest.md)** — log every output to MANIFEST.md
|
|
273
|
+
> - **[Output Language Protocol](../../shared-references/output-language.md)** — respect the project's language setting
|
|
274
|
+
> - Note: paper content is always written in English regardless of project language setting.
|
|
275
|
+
|
|
276
|
+
## Key Rules
|
|
277
|
+
|
|
278
|
+
- **Large file handling**: If the Write tool fails due to file size, immediately retry using Bash (`cat << 'EOF' > file`) to write in chunks. Do NOT ask the user for permission — just do it silently.
|
|
279
|
+
|
|
280
|
+
- **Don't skip phases.** Each phase builds on the previous one — skipping leads to errors.
|
|
281
|
+
- **Checkpoint between phases** when AUTO_PROCEED=false. Present results and wait for approval.
|
|
282
|
+
- **Manual figures first.** If the paper needs architecture diagrams or qualitative results, the user must provide them before Phase 3.
|
|
283
|
+
- **Compilation must succeed** before entering the improvement loop. Fix all errors first.
|
|
284
|
+
- **Preserve all PDFs.** The user needs round0/round1/round2 for comparison.
|
|
285
|
+
- **Document everything.** The pipeline report should be self-contained.
|
|
286
|
+
- **Respect page limits.** If the paper exceeds the venue limit, suggest specific cuts before the improvement loop.
|
|
287
|
+
|
|
288
|
+
## Composing with Other Workflows
|
|
289
|
+
|
|
290
|
+
```
|
|
291
|
+
/idea-discovery "direction" ← Workflow 1: find ideas
|
|
292
|
+
implement ← write code
|
|
293
|
+
/run-experiment ← deploy experiments
|
|
294
|
+
/auto-review-loop "paper topic" ← Workflow 2: iterate research
|
|
295
|
+
/paper-writing "NARRATIVE_REPORT.md" ← Workflow 3: you are here
|
|
296
|
+
submit! 🎉
|
|
297
|
+
|
|
298
|
+
Or use /research-pipeline for the Workflow 1+2 end-to-end flow,
|
|
299
|
+
then /paper-writing for the final writing step.
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
## Typical Timeline
|
|
303
|
+
|
|
304
|
+
| Phase | Duration | Can sleep? |
|
|
305
|
+
|-------|----------|------------|
|
|
306
|
+
| 1. Paper Plan | 5-10 min | No |
|
|
307
|
+
| 2. Figures | 5-15 min | No |
|
|
308
|
+
| 3. LaTeX Writing | 15-30 min | Yes ✅ |
|
|
309
|
+
| 4. Compilation | 2-5 min | No |
|
|
310
|
+
| 5. Improvement | 15-30 min | Yes ✅ |
|
|
311
|
+
|
|
312
|
+
**Total: ~45-90 min** for a full paper from narrative report to polished PDF.
|