#240 by GitHub stars
WUBING2023/PaperSpine
PaperSpine5 — local-first, evidence-bound paper research, writing, figures, review and delivery. Download: https://wubing2023.github.io/PaperSpine/v5/
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
dist/claude/skills/paper-spine/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
42312b8d9c76 → 42312b8d9c76
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 42312b8d9c76
No earlier version was observed for comparison.
dist/codex/skills/paper-spine/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
42312b8d9c76 → 42312b8d9c76
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 42312b8d9c76
No earlier version was observed for comparison.
dist/hermes/skills/academic-writing/paper-spine/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
42312b8d9c76 → 42312b8d9c76
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 42312b8d9c76
No earlier version was observed for comparison.
dist/openclaw/skills/paper-spine/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
42312b8d9c76 → 42312b8d9c76
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 42312b8d9c76
No earlier version was observed for comparison.
paperspine5/core/01_PaperSpine4/src/skill/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
42312b8d9c76 → 42312b8d9c76
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 42312b8d9c76
No earlier version was observed for comparison.
paperspine5/core/02_PaperFigure/02_paperFig_skill/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Network or broad shell
42312b8d9c76 → 42312b8d9c76
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 42312b8d9c76
No earlier version was observed for comparison.
src/skill/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
42312b8d9c76 → 42312b8d9c76
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 42312b8d9c76
No earlier version was observed for comparison.
Verified commit 42312b8d9c76ab25990cddfd76e3622276854118
git clone --filter=blob:none --no-checkout https://github.com/WUBING2023/PaperSpine.git .hotskills/wubing2023-paperspine && git -C .hotskills/wubing2023-paperspine checkout --detach 42312b8d9c76ab25990cddfd76e3622276854118
# Copy each selected skill directory from .hotskills/wubing2023-paperspine into .claude/skills/<skill-name>/Heat
6.7- Star growth, last 7 daysAhead of 87% of tracked repositories
- Star growth, last 24 hoursAhead of 84% of tracked repositories
- Rank movement, last 7 daysAhead of 58% of tracked repositories
- Commits, last 30 daysAhead of 60% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
Individual skills in this repository
- paper-spine
dist/claude/skills/paper-spine - paper-spine
dist/codex/skills/paper-spine - paper-spine
dist/hermes/skills/academic-writing/paper-spine - paper-spine
dist/openclaw/skills/paper-spine - paper-spine
paperspine5/core/01_PaperSpine4/src/skill - paperFig
paperspine5/core/02_PaperFigure/02_paperFig_skill - paper-spine
src/skill
How it works
paper-spine
When your agent uses it
Research, write, review and deliver evidence-bound papers in one task, with user choices, real files, editable outputs and same-task revision.
What it loads into context
Frontmatter
46 tokensAlways available to the agent
SKILL.md
4,489 tokensWhen the skill is activated
Reference documents
127,179 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Authority and boundaries
- Update once on invocation, then continue the paper
- Start, configure and continue the current paper
- Work continuously within the confirmed scope
- Scientific work and expected results
- Quality rules that always remain active
- Completion contract
Scripts executed separately
scripts/_paper_spine_utils.pyscripts/adaptive_shadow.pyscripts/artifact_check.pyscripts/asset_selection.pyscripts/author_voice_check.pyscripts/citation_bank_check.pyscripts/citation_quality_audit.pyscripts/citation_verification_en.pyscripts/citation_verification_zh.pyscripts/contribution_check.pyscripts/evidence_grounded_review.pyscripts/execution_receipt.pyscripts/figure_comparison.pyscripts/figure_reference_check.pyscripts/figure_story_check.pyscripts/humanize_check.pyscripts/intake_wizard.pyscripts/integrity_audit.pyscripts/latex_guard.pyscripts/launch_paperspine_ui.ps1scripts/launch_paperspine_ui.shscripts/manuscript_export.pyscripts/manuscript_refs.luascripts/material_inventory.pyscripts/metadata_readiness_check.pyscripts/open_release.pyscripts/paperspine5_web.pyscripts/paperspine_methods.pyscripts/paperspine_public_client.pyscripts/paperspine_stable_update.pyscripts/paperspine_update.pyscripts/preserve_figure_revision.pyscripts/progress_check.pyscripts/publication_cycle.pyscripts/publication_surface_check.pyscripts/reference_inventory.pyscripts/respond_check.pyscripts/results_validation_check.pyscripts/reviewer_audit_check.pyscripts/revision_audit.pyscripts/scientific_evidence_check.pyscripts/section_economy_check.pyscripts/skill_discovery_migration.pyscripts/structured_review.pyscripts/style_metrics.pyscripts/submission_check.pyscripts/supplement_evidence_index.pyscripts/translate_guard.pyscripts/usage_ledger.pyscripts/visual_readiness_check.pyscripts/word_guard.pyscripts/word_surface_repair.py
Files
../../../../.claude-plugin/marketplace.jsonasset650 bytes../../../../.claude-plugin/plugin.jsonasset536 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesagents/openai.yamlasset290 bytesagents/research-exemplar.mddoc1,320 bytesagents/research-scene.mddoc1,054 bytesagents/research-sota.mddoc1,131 bytesagents/reviewer-evidence.mddoc2,049 bytesagents/reviewer-method.mddoc1,639 bytesagents/reviewer-writing.mddoc2,489 bytesreferences/adaptive-shadow.mddoc5,343 bytesreferences/assertive-scientific-writing.mddoc5,409 bytesreferences/asset-selection.mddoc2,225 bytesreferences/audit.mddoc13,801 bytesreferences/build.mddoc7,375 bytesreferences/citation-support-bank.mddoc5,278 bytesreferences/citation.mddoc6,337 bytesreferences/contracts/adaptive-shadow-request.schema.jsonasset13,121 bytesreferences/contracts/adaptive-shadow-result.schema.jsonasset2,676 bytesreferences/contracts/asset-selection-request.schema.jsonasset1,759 bytesreferences/contracts/author-voice-profile.schema.jsonasset2,347 bytesreferences/contracts/author-voice-receipt.schema.jsonasset1,246 bytesreferences/contracts/author-voice-restoration.schema.jsonasset4,610 bytesreferences/contracts/evidence-review.schema.jsonasset4,414 bytesreferences/contracts/open-release-agent-ticket.schema.jsonasset2,041 bytesreferences/contracts/open-release-confirmation.schema.jsonasset1,043 bytesreferences/contracts/open-release-invocation.schema.jsonasset3,351 bytesreferences/contracts/open-release-manifest.schema.jsonasset1,411 bytesreferences/contracts/open-release-plan.schema.jsonasset3,536 bytesreferences/contracts/open-release-platform-receipts.schema.jsonasset1,950 bytesreferences/contracts/open-release-result.schema.jsonasset1,787 bytesreferences/contracts/publication-cycle-invocation.schema.jsonasset2,713 bytesreferences/contracts/publication-cycle-result.schema.jsonasset3,624 bytesreferences/contracts/publication-target-profile.schema.jsonasset5,376 bytesreferences/contracts/review-calibration.schema.jsonasset1,695 bytesreferences/contracts/skill-discovery-migration-preview.schema.jsonasset2,822 bytesreferences/contracts/skill-discovery-migration.schema.jsonasset2,922 bytesreferences/contracts/submission-package-plan.schema.jsonasset1,713 bytesreferences/contracts/supplement-evidence-index.schema.jsonasset3,286 bytesreferences/contribution.mddoc10,882 bytesreferences/current-method-routing.jsonasset81,528 bytesreferences/current-method-routing.mddoc10,617 bytesreferences/deep-imitation-protocol.mddoc7,448 bytesreferences/deep-reading.mddoc11,305 bytesreferences/editorial-completeness.mddoc4,211 bytesreferences/evidence-grounded-review.mddoc5,494 bytesreferences/execution-efficiency.mddoc6,450 bytesreferences/exemplar-learning-dossier.mddoc5,733 bytesreferences/figure-reference-mapping.mddoc6,615 bytesreferences/figure-story.mddoc10,246 bytesreferences/humanize-calibration.mddoc2,201 bytesreferences/humanize.mddoc8,736 bytesreferences/intake.mddoc5,018 bytesreferences/intent-configuration.mddoc4,352 bytesreferences/interaction-policy.mddoc4,986 bytesreferences/interactive-intake.mddoc6,850 bytesreferences/journal-learning.mddoc16,054 bytesreferences/journal-style-analysis.mddoc3,973 bytesreferences/journal-transfer.mddoc3,613 bytesreferences/latex-source-control.mddoc3,862 bytesreferences/latex.mddoc13,789 bytesreferences/local-reference-ingestion.mddoc1,754 bytesreferences/logic-transfer-audit.mddoc7,149 bytesreferences/manuscript-format.mddoc33,057 bytesreferences/motivation-thread-writing.mddoc9,979 bytesreferences/open-release-interface.mddoc5,016 bytesreferences/open-release-platforms.jsonasset33,591 bytesreferences/open-release.mddoc7,132 bytesreferences/orchestrator-branch-map.mddoc10,191 bytesreferences/paper-spine-production-protocol.mddoc22,993 bytesreferences/phase-contracts.mddoc2,409 bytesreferences/platform-cnki.mddoc831 bytesreferences/platform-general.mddoc933 bytesreferences/platform-weipu.mddoc832 bytesreferences/product-runner-host-route.mddoc29,467 bytesreferences/product-v1-workflow.mddoc46,089 bytesreferences/publication-cycle-contracts.mddoc11,723 bytesreferences/publication-cycle-interface.mddoc6,895 bytesreferences/publication-cycle.mddoc4,717 bytesreferences/publication-surface.mddoc3,725 bytesreferences/publication-target-profile.mddoc6,602 bytesreferences/research.mddoc5,962 bytesreferences/respond.mddoc3,818 bytesreferences/results-validation.mddoc8,238 bytesreferences/resume.mddoc10,881 bytesreferences/review-policy.mddoc6,257 bytesreferences/reviewer-audit.mddoc9,025 bytesreferences/reviewer-persona-registry.jsonasset2,620 bytesreferences/rewrite-matrix.mddoc8,613 bytesreferences/rewrite.mddoc5,238 bytesreferences/round1-literature-revision.mddoc6,541 bytesreferences/round2-journal-revision.mddoc4,379 bytesreferences/round3-latex-polish.mddoc7,028 bytesreferences/round4-template-integration.mddoc7,019 bytesreferences/scenario-competition.mddoc816 bytesreferences/scenario-conference.mddoc591 bytesreferences/scenario-journal.mddoc1,078 bytesreferences/scenario-report-review.mddoc825 bytesreferences/scientific-evidence-ledger.mddoc3,633 bytesreferences/scientific-figure-workflow.mddoc38,076 bytesreferences/semantic-confirmation.mddoc3,708 bytesreferences/style-learning-workflow.mddoc7,519 bytesreferences/submission-metadata.mddoc1,106 bytesreferences/submission.mddoc8,896 bytesreferences/suite-map.mddoc5,304 bytesreferences/supplement-evidence-index.mddoc1,471 bytesreferences/target-journal-research.mddoc5,929 bytesreferences/task-genre-research.mddoc3,820 bytesreferences/translate.mddoc4,305 bytesreferences/translation-package.mddoc3,117 bytesreferences/update.mddoc3,305 bytesreferences/upstream-review-protocols.mddoc1,868 bytesreferences/usage-telemetry.mddoc1,651 bytesreferences/version-requirements.mddoc2,029 bytesreferences/visual-readiness-gate.mddoc5,937 bytesreferences/writing-rationale-matrix.mddoc9,402 bytesscripts/_paper_spine_utils.pyruns8,131 bytesscripts/adaptive_shadow.pyruns47,030 bytesscripts/artifact_check.pyruns50,086 bytesscripts/asset_selection.pyruns16,143 bytesscripts/author_voice_check.pyruns28,967 bytesscripts/citation_bank_check.pyruns11,900 bytesscripts/citation_quality_audit.pyruns31,129 bytesscripts/citation_verification_en.pyruns26,558 bytesscripts/citation_verification_zh.pyruns8,545 bytesscripts/contribution_check.pyruns10,347 bytesscripts/evidence_grounded_review.pyruns36,051 bytesscripts/execution_receipt.pyruns7,538 bytesscripts/figure_comparison.pyruns13,321 bytesscripts/figure_reference_check.pyruns25,834 bytesscripts/figure_story_check.pyruns12,698 bytesscripts/humanize_check.pyruns9,399 bytesscripts/intake_wizard.pyruns47,597 bytesscripts/integrity_audit.pyruns34,819 bytesscripts/latex_guard.pyruns20,719 bytesscripts/launch_paperspine_ui.ps1runs4,242 bytesscripts/launch_paperspine_ui.shruns1,078 bytesscripts/manuscript_export.pyruns29,361 bytesscripts/manuscript_refs.luaruns7,370 bytesscripts/material_inventory.pyruns4,624 bytesscripts/metadata_readiness_check.pyruns3,977 bytesscripts/open_release.pyruns79,733 bytesscripts/paperspine5_web.pyruns30,775 bytesscripts/paperspine_methods.pyruns19,271 bytesscripts/paperspine_public_client.pyruns46,579 bytesscripts/paperspine_stable_update.pyruns31,884 bytesscripts/paperspine_update.pyruns39,848 bytesscripts/preserve_figure_revision.pyruns4,109 bytesscripts/progress_check.pyruns67,177 bytesscripts/publication_cycle.pyruns107,182 bytesscripts/publication_surface_check.pyruns25,748 bytesscripts/reference_inventory.pyruns4,603 bytesscripts/respond_check.pyruns14,775 bytesscripts/results_validation_check.pyruns6,580 bytesscripts/reviewer_audit_check.pyruns12,235 bytesscripts/revision_audit.pyruns8,007 bytesscripts/scientific_evidence_check.pyruns8,292 bytesscripts/section_economy_check.pyruns6,256 bytesscripts/skill_discovery_migration.pyruns21,991 bytesscripts/structured_review.pyruns45,767 bytesscripts/style_metrics.pyruns12,488 bytesscripts/submission_check.pyruns22,044 bytesscripts/supplement_evidence_index.pyruns11,847 bytesscripts/translate_guard.pyruns31,019 bytesscripts/usage_ledger.pyruns6,416 bytesscripts/visual_readiness_check.pyruns40,305 bytesscripts/word_guard.pyruns67,541 bytesscripts/word_surface_repair.pyruns12,884 bytes
Read SKILL.md
# PaperSpine Orchestrator
Before paper production or resume, read [paper-spine-production-protocol.md](references/paper-spine-production-protocol.md). It is the operational 17-step handoff for the methods below.
The current host Agent performs research, citation checking, interpretation,
writing, figures and revision, and arranges independent review. Web, local files
and small scripts support interaction, persistence, rendering and delivery.
When configuration is missing, launch the intake UI automatically before inspecting
materials; do not hand-write configuration or silently choose a paper root.
For a visible launcher action, use `require_escalated` as required by the host.
After the update preflight below, launch is the first paper-production action when configuration is missing.
**Product outcome:** an evidence-bound, coherent paper with informative figures,View the complete source on GitHubpaper-spine
When your agent uses it
Research, write, review and deliver evidence-bound papers in one task, with user choices, real files, editable outputs and same-task revision.
What it loads into context
Frontmatter
46 tokensAlways available to the agent
SKILL.md
4,489 tokensWhen the skill is activated
Reference documents
127,179 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Authority and boundaries
- Update once on invocation, then continue the paper
- Start, configure and continue the current paper
- Work continuously within the confirmed scope
- Scientific work and expected results
- Quality rules that always remain active
- Completion contract
Scripts executed separately
scripts/_paper_spine_utils.pyscripts/adaptive_shadow.pyscripts/artifact_check.pyscripts/asset_selection.pyscripts/author_voice_check.pyscripts/citation_bank_check.pyscripts/citation_quality_audit.pyscripts/citation_verification_en.pyscripts/citation_verification_zh.pyscripts/contribution_check.pyscripts/evidence_grounded_review.pyscripts/execution_receipt.pyscripts/figure_comparison.pyscripts/figure_reference_check.pyscripts/figure_story_check.pyscripts/humanize_check.pyscripts/intake_wizard.pyscripts/integrity_audit.pyscripts/latex_guard.pyscripts/launch_paperspine_ui.ps1scripts/launch_paperspine_ui.shscripts/manuscript_export.pyscripts/manuscript_refs.luascripts/material_inventory.pyscripts/metadata_readiness_check.pyscripts/open_release.pyscripts/paperspine5_web.pyscripts/paperspine_methods.pyscripts/paperspine_public_client.pyscripts/paperspine_stable_update.pyscripts/paperspine_update.pyscripts/preserve_figure_revision.pyscripts/progress_check.pyscripts/publication_cycle.pyscripts/publication_surface_check.pyscripts/reference_inventory.pyscripts/respond_check.pyscripts/results_validation_check.pyscripts/reviewer_audit_check.pyscripts/revision_audit.pyscripts/scientific_evidence_check.pyscripts/section_economy_check.pyscripts/skill_discovery_migration.pyscripts/structured_review.pyscripts/style_metrics.pyscripts/submission_check.pyscripts/supplement_evidence_index.pyscripts/translate_guard.pyscripts/usage_ledger.pyscripts/visual_readiness_check.pyscripts/word_guard.pyscripts/word_surface_repair.py
Files
SKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesagents/openai.yamlasset290 bytesagents/research-exemplar.mddoc1,320 bytesagents/research-scene.mddoc1,054 bytesagents/research-sota.mddoc1,131 bytesagents/reviewer-evidence.mddoc2,049 bytesagents/reviewer-method.mddoc1,639 bytesagents/reviewer-writing.mddoc2,489 bytesreferences/adaptive-shadow.mddoc5,343 bytesreferences/assertive-scientific-writing.mddoc5,409 bytesreferences/asset-selection.mddoc2,225 bytesreferences/audit.mddoc13,801 bytesreferences/build.mddoc7,375 bytesreferences/citation-support-bank.mddoc5,278 bytesreferences/citation.mddoc6,337 bytesreferences/contracts/adaptive-shadow-request.schema.jsonasset13,121 bytesreferences/contracts/adaptive-shadow-result.schema.jsonasset2,676 bytesreferences/contracts/asset-selection-request.schema.jsonasset1,759 bytesreferences/contracts/author-voice-profile.schema.jsonasset2,347 bytesreferences/contracts/author-voice-receipt.schema.jsonasset1,246 bytesreferences/contracts/author-voice-restoration.schema.jsonasset4,610 bytesreferences/contracts/evidence-review.schema.jsonasset4,414 bytesreferences/contracts/open-release-agent-ticket.schema.jsonasset2,041 bytesreferences/contracts/open-release-confirmation.schema.jsonasset1,043 bytesreferences/contracts/open-release-invocation.schema.jsonasset3,351 bytesreferences/contracts/open-release-manifest.schema.jsonasset1,411 bytesreferences/contracts/open-release-plan.schema.jsonasset3,536 bytesreferences/contracts/open-release-platform-receipts.schema.jsonasset1,950 bytesreferences/contracts/open-release-result.schema.jsonasset1,787 bytesreferences/contracts/publication-cycle-invocation.schema.jsonasset2,713 bytesreferences/contracts/publication-cycle-result.schema.jsonasset3,624 bytesreferences/contracts/publication-target-profile.schema.jsonasset5,376 bytesreferences/contracts/review-calibration.schema.jsonasset1,695 bytesreferences/contracts/skill-discovery-migration-preview.schema.jsonasset2,822 bytesreferences/contracts/skill-discovery-migration.schema.jsonasset2,922 bytesreferences/contracts/submission-package-plan.schema.jsonasset1,713 bytesreferences/contracts/supplement-evidence-index.schema.jsonasset3,286 bytesreferences/contribution.mddoc10,882 bytesreferences/current-method-routing.jsonasset81,528 bytesreferences/current-method-routing.mddoc10,617 bytesreferences/deep-imitation-protocol.mddoc7,448 bytesreferences/deep-reading.mddoc11,305 bytesreferences/editorial-completeness.mddoc4,211 bytesreferences/evidence-grounded-review.mddoc5,494 bytesreferences/execution-efficiency.mddoc6,450 bytesreferences/exemplar-learning-dossier.mddoc5,733 bytesreferences/figure-reference-mapping.mddoc6,615 bytesreferences/figure-story.mddoc10,246 bytesreferences/humanize-calibration.mddoc2,201 bytesreferences/humanize.mddoc8,736 bytesreferences/intake.mddoc5,018 bytesreferences/intent-configuration.mddoc4,352 bytesreferences/interaction-policy.mddoc4,986 bytesreferences/interactive-intake.mddoc6,850 bytesreferences/journal-learning.mddoc16,054 bytesreferences/journal-style-analysis.mddoc3,973 bytesreferences/journal-transfer.mddoc3,613 bytesreferences/latex-source-control.mddoc3,862 bytesreferences/latex.mddoc13,789 bytesreferences/local-reference-ingestion.mddoc1,754 bytesreferences/logic-transfer-audit.mddoc7,149 bytesreferences/manuscript-format.mddoc33,057 bytesreferences/motivation-thread-writing.mddoc9,979 bytesreferences/open-release-interface.mddoc5,016 bytesreferences/open-release-platforms.jsonasset33,591 bytesreferences/open-release.mddoc7,132 bytesreferences/orchestrator-branch-map.mddoc10,191 bytesreferences/paper-spine-production-protocol.mddoc22,993 bytesreferences/phase-contracts.mddoc2,409 bytesreferences/platform-cnki.mddoc831 bytesreferences/platform-general.mddoc933 bytesreferences/platform-weipu.mddoc832 bytesreferences/product-runner-host-route.mddoc29,467 bytesreferences/product-v1-workflow.mddoc46,089 bytesreferences/publication-cycle-contracts.mddoc11,723 bytesreferences/publication-cycle-interface.mddoc6,895 bytesreferences/publication-cycle.mddoc4,717 bytesreferences/publication-surface.mddoc3,725 bytesreferences/publication-target-profile.mddoc6,602 bytesreferences/research.mddoc5,962 bytesreferences/respond.mddoc3,818 bytesreferences/results-validation.mddoc8,238 bytesreferences/resume.mddoc10,881 bytesreferences/review-policy.mddoc6,257 bytesreferences/reviewer-audit.mddoc9,025 bytesreferences/reviewer-persona-registry.jsonasset2,620 bytesreferences/rewrite-matrix.mddoc8,613 bytesreferences/rewrite.mddoc5,238 bytesreferences/round1-literature-revision.mddoc6,541 bytesreferences/round2-journal-revision.mddoc4,379 bytesreferences/round3-latex-polish.mddoc7,028 bytesreferences/round4-template-integration.mddoc7,019 bytesreferences/scenario-competition.mddoc816 bytesreferences/scenario-conference.mddoc591 bytesreferences/scenario-journal.mddoc1,078 bytesreferences/scenario-report-review.mddoc825 bytesreferences/scientific-evidence-ledger.mddoc3,633 bytesreferences/scientific-figure-workflow.mddoc38,076 bytesreferences/semantic-confirmation.mddoc3,708 bytesreferences/style-learning-workflow.mddoc7,519 bytesreferences/submission-metadata.mddoc1,106 bytesreferences/submission.mddoc8,896 bytesreferences/suite-map.mddoc5,304 bytesreferences/supplement-evidence-index.mddoc1,471 bytesreferences/target-journal-research.mddoc5,929 bytesreferences/task-genre-research.mddoc3,820 bytesreferences/translate.mddoc4,305 bytesreferences/translation-package.mddoc3,117 bytesreferences/update.mddoc3,305 bytesreferences/upstream-review-protocols.mddoc1,868 bytesreferences/usage-telemetry.mddoc1,651 bytesreferences/version-requirements.mddoc2,029 bytesreferences/visual-readiness-gate.mddoc5,937 bytesreferences/writing-rationale-matrix.mddoc9,402 bytesscripts/_paper_spine_utils.pyruns8,131 bytesscripts/adaptive_shadow.pyruns47,030 bytesscripts/artifact_check.pyruns50,086 bytesscripts/asset_selection.pyruns16,143 bytesscripts/author_voice_check.pyruns28,967 bytesscripts/citation_bank_check.pyruns11,900 bytesscripts/citation_quality_audit.pyruns31,129 bytesscripts/citation_verification_en.pyruns26,558 bytesscripts/citation_verification_zh.pyruns8,545 bytesscripts/contribution_check.pyruns10,347 bytesscripts/evidence_grounded_review.pyruns36,051 bytesscripts/execution_receipt.pyruns7,538 bytesscripts/figure_comparison.pyruns13,321 bytesscripts/figure_reference_check.pyruns25,834 bytesscripts/figure_story_check.pyruns12,698 bytesscripts/humanize_check.pyruns9,399 bytesscripts/intake_wizard.pyruns47,597 bytesscripts/integrity_audit.pyruns34,819 bytesscripts/latex_guard.pyruns20,719 bytesscripts/launch_paperspine_ui.ps1runs4,242 bytesscripts/launch_paperspine_ui.shruns1,078 bytesscripts/manuscript_export.pyruns29,361 bytesscripts/manuscript_refs.luaruns7,370 bytesscripts/material_inventory.pyruns4,624 bytesscripts/metadata_readiness_check.pyruns3,977 bytesscripts/open_release.pyruns79,733 bytesscripts/paperspine5_web.pyruns30,775 bytesscripts/paperspine_methods.pyruns19,271 bytesscripts/paperspine_public_client.pyruns46,579 bytesscripts/paperspine_stable_update.pyruns31,884 bytesscripts/paperspine_update.pyruns39,848 bytesscripts/preserve_figure_revision.pyruns4,109 bytesscripts/progress_check.pyruns67,177 bytesscripts/publication_cycle.pyruns107,182 bytesscripts/publication_surface_check.pyruns25,748 bytesscripts/reference_inventory.pyruns4,603 bytesscripts/respond_check.pyruns14,775 bytesscripts/results_validation_check.pyruns6,580 bytesscripts/reviewer_audit_check.pyruns12,235 bytesscripts/revision_audit.pyruns8,007 bytesscripts/scientific_evidence_check.pyruns8,292 bytesscripts/section_economy_check.pyruns6,256 bytesscripts/skill_discovery_migration.pyruns21,991 bytesscripts/structured_review.pyruns45,767 bytesscripts/style_metrics.pyruns12,488 bytesscripts/submission_check.pyruns22,044 bytesscripts/supplement_evidence_index.pyruns11,847 bytesscripts/translate_guard.pyruns31,019 bytesscripts/usage_ledger.pyruns6,416 bytesscripts/visual_readiness_check.pyruns40,305 bytesscripts/word_guard.pyruns67,541 bytesscripts/word_surface_repair.pyruns12,884 bytes
Read SKILL.md
# PaperSpine Orchestrator
Before paper production or resume, read [paper-spine-production-protocol.md](references/paper-spine-production-protocol.md). It is the operational 17-step handoff for the methods below.
The current host Agent performs research, citation checking, interpretation,
writing, figures and revision, and arranges independent review. Web, local files
and small scripts support interaction, persistence, rendering and delivery.
When configuration is missing, launch the intake UI automatically before inspecting
materials; do not hand-write configuration or silently choose a paper root.
For a visible launcher action, use `require_escalated` as required by the host.
After the update preflight below, launch is the first paper-production action when configuration is missing.
**Product outcome:** an evidence-bound, coherent paper with informative figures,View the complete source on GitHubpaper-spine
When your agent uses it
Orchestrate evidence-bound paper work from intake through drafting, audit, and local package preparation without asserting unsupported readiness.
What it loads into context
Frontmatter
131 tokensAlways available to the agent
SKILL.md
4,575 tokensWhen the skill is activated
Reference documents
127,179 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Authority and boundaries
- Update once on invocation, then continue the paper
- Start, configure and continue the current paper
- Work continuously within the confirmed scope
- Scientific work and expected results
- Quality rules that always remain active
- Completion contract
Scripts executed separately
scripts/_paper_spine_utils.pyscripts/adaptive_shadow.pyscripts/artifact_check.pyscripts/asset_selection.pyscripts/author_voice_check.pyscripts/citation_bank_check.pyscripts/citation_quality_audit.pyscripts/citation_verification_en.pyscripts/citation_verification_zh.pyscripts/contribution_check.pyscripts/evidence_grounded_review.pyscripts/execution_receipt.pyscripts/figure_comparison.pyscripts/figure_reference_check.pyscripts/figure_story_check.pyscripts/humanize_check.pyscripts/intake_wizard.pyscripts/integrity_audit.pyscripts/latex_guard.pyscripts/launch_paperspine_ui.ps1scripts/launch_paperspine_ui.shscripts/manuscript_export.pyscripts/manuscript_refs.luascripts/material_inventory.pyscripts/metadata_readiness_check.pyscripts/open_release.pyscripts/paperspine5_web.pyscripts/paperspine_methods.pyscripts/paperspine_public_client.pyscripts/paperspine_stable_update.pyscripts/paperspine_update.pyscripts/preserve_figure_revision.pyscripts/progress_check.pyscripts/publication_cycle.pyscripts/publication_surface_check.pyscripts/reference_inventory.pyscripts/respond_check.pyscripts/results_validation_check.pyscripts/reviewer_audit_check.pyscripts/revision_audit.pyscripts/scientific_evidence_check.pyscripts/section_economy_check.pyscripts/skill_discovery_migration.pyscripts/structured_review.pyscripts/style_metrics.pyscripts/submission_check.pyscripts/supplement_evidence_index.pyscripts/translate_guard.pyscripts/usage_ledger.pyscripts/visual_readiness_check.pyscripts/word_guard.pyscripts/word_surface_repair.py
Files
SKILL.mdcore23,397 bytesSKILL.mdcore23,397 bytesSKILL.mdcore23,397 bytesSKILL.mdcore23,397 bytesSKILL.mdcore23,397 bytesagents/openai.yamlasset290 bytesagents/research-exemplar.mddoc1,320 bytesagents/research-scene.mddoc1,054 bytesagents/research-sota.mddoc1,131 bytesagents/reviewer-evidence.mddoc2,049 bytesagents/reviewer-method.mddoc1,639 bytesagents/reviewer-writing.mddoc2,489 bytesreferences/adaptive-shadow.mddoc5,343 bytesreferences/assertive-scientific-writing.mddoc5,409 bytesreferences/asset-selection.mddoc2,225 bytesreferences/audit.mddoc13,801 bytesreferences/build.mddoc7,375 bytesreferences/citation-support-bank.mddoc5,278 bytesreferences/citation.mddoc6,337 bytesreferences/contracts/adaptive-shadow-request.schema.jsonasset13,121 bytesreferences/contracts/adaptive-shadow-result.schema.jsonasset2,676 bytesreferences/contracts/asset-selection-request.schema.jsonasset1,759 bytesreferences/contracts/author-voice-profile.schema.jsonasset2,347 bytesreferences/contracts/author-voice-receipt.schema.jsonasset1,246 bytesreferences/contracts/author-voice-restoration.schema.jsonasset4,610 bytesreferences/contracts/evidence-review.schema.jsonasset4,414 bytesreferences/contracts/open-release-agent-ticket.schema.jsonasset2,041 bytesreferences/contracts/open-release-confirmation.schema.jsonasset1,043 bytesreferences/contracts/open-release-invocation.schema.jsonasset3,351 bytesreferences/contracts/open-release-manifest.schema.jsonasset1,411 bytesreferences/contracts/open-release-plan.schema.jsonasset3,536 bytesreferences/contracts/open-release-platform-receipts.schema.jsonasset1,950 bytesreferences/contracts/open-release-result.schema.jsonasset1,787 bytesreferences/contracts/publication-cycle-invocation.schema.jsonasset2,713 bytesreferences/contracts/publication-cycle-result.schema.jsonasset3,624 bytesreferences/contracts/publication-target-profile.schema.jsonasset5,376 bytesreferences/contracts/review-calibration.schema.jsonasset1,695 bytesreferences/contracts/skill-discovery-migration-preview.schema.jsonasset2,822 bytesreferences/contracts/skill-discovery-migration.schema.jsonasset2,922 bytesreferences/contracts/submission-package-plan.schema.jsonasset1,713 bytesreferences/contracts/supplement-evidence-index.schema.jsonasset3,286 bytesreferences/contribution.mddoc10,882 bytesreferences/current-method-routing.jsonasset81,528 bytesreferences/current-method-routing.mddoc10,617 bytesreferences/deep-imitation-protocol.mddoc7,448 bytesreferences/deep-reading.mddoc11,305 bytesreferences/editorial-completeness.mddoc4,211 bytesreferences/evidence-grounded-review.mddoc5,494 bytesreferences/execution-efficiency.mddoc6,450 bytesreferences/exemplar-learning-dossier.mddoc5,733 bytesreferences/figure-reference-mapping.mddoc6,615 bytesreferences/figure-story.mddoc10,246 bytesreferences/humanize-calibration.mddoc2,201 bytesreferences/humanize.mddoc8,736 bytesreferences/intake.mddoc5,018 bytesreferences/intent-configuration.mddoc4,352 bytesreferences/interaction-policy.mddoc4,986 bytesreferences/interactive-intake.mddoc6,850 bytesreferences/journal-learning.mddoc16,054 bytesreferences/journal-style-analysis.mddoc3,973 bytesreferences/journal-transfer.mddoc3,613 bytesreferences/latex-source-control.mddoc3,862 bytesreferences/latex.mddoc13,789 bytesreferences/local-reference-ingestion.mddoc1,754 bytesreferences/logic-transfer-audit.mddoc7,149 bytesreferences/manuscript-format.mddoc33,057 bytesreferences/motivation-thread-writing.mddoc9,979 bytesreferences/open-release-interface.mddoc5,016 bytesreferences/open-release-platforms.jsonasset33,591 bytesreferences/open-release.mddoc7,132 bytesreferences/orchestrator-branch-map.mddoc10,191 bytesreferences/paper-spine-production-protocol.mddoc22,993 bytesreferences/phase-contracts.mddoc2,409 bytesreferences/platform-cnki.mddoc831 bytesreferences/platform-general.mddoc933 bytesreferences/platform-weipu.mddoc832 bytesreferences/product-runner-host-route.mddoc29,467 bytesreferences/product-v1-workflow.mddoc46,089 bytesreferences/publication-cycle-contracts.mddoc11,723 bytesreferences/publication-cycle-interface.mddoc6,895 bytesreferences/publication-cycle.mddoc4,717 bytesreferences/publication-surface.mddoc3,725 bytesreferences/publication-target-profile.mddoc6,602 bytesreferences/research.mddoc5,962 bytesreferences/respond.mddoc3,818 bytesreferences/results-validation.mddoc8,238 bytesreferences/resume.mddoc10,881 bytesreferences/review-policy.mddoc6,257 bytesreferences/reviewer-audit.mddoc9,025 bytesreferences/reviewer-persona-registry.jsonasset2,620 bytesreferences/rewrite-matrix.mddoc8,613 bytesreferences/rewrite.mddoc5,238 bytesreferences/round1-literature-revision.mddoc6,541 bytesreferences/round2-journal-revision.mddoc4,379 bytesreferences/round3-latex-polish.mddoc7,028 bytesreferences/round4-template-integration.mddoc7,019 bytesreferences/scenario-competition.mddoc816 bytesreferences/scenario-conference.mddoc591 bytesreferences/scenario-journal.mddoc1,078 bytesreferences/scenario-report-review.mddoc825 bytesreferences/scientific-evidence-ledger.mddoc3,633 bytesreferences/scientific-figure-workflow.mddoc38,076 bytesreferences/semantic-confirmation.mddoc3,708 bytesreferences/style-learning-workflow.mddoc7,519 bytesreferences/submission-metadata.mddoc1,106 bytesreferences/submission.mddoc8,896 bytesreferences/suite-map.mddoc5,304 bytesreferences/supplement-evidence-index.mddoc1,471 bytesreferences/target-journal-research.mddoc5,929 bytesreferences/task-genre-research.mddoc3,820 bytesreferences/translate.mddoc4,305 bytesreferences/translation-package.mddoc3,117 bytesreferences/update.mddoc3,305 bytesreferences/upstream-review-protocols.mddoc1,868 bytesreferences/usage-telemetry.mddoc1,651 bytesreferences/version-requirements.mddoc2,029 bytesreferences/visual-readiness-gate.mddoc5,937 bytesreferences/writing-rationale-matrix.mddoc9,402 bytesscripts/_paper_spine_utils.pyruns8,131 bytesscripts/adaptive_shadow.pyruns47,030 bytesscripts/artifact_check.pyruns50,086 bytesscripts/asset_selection.pyruns16,143 bytesscripts/author_voice_check.pyruns28,967 bytesscripts/citation_bank_check.pyruns11,900 bytesscripts/citation_quality_audit.pyruns31,129 bytesscripts/citation_verification_en.pyruns26,558 bytesscripts/citation_verification_zh.pyruns8,545 bytesscripts/contribution_check.pyruns10,347 bytesscripts/evidence_grounded_review.pyruns36,051 bytesscripts/execution_receipt.pyruns7,538 bytesscripts/figure_comparison.pyruns13,321 bytesscripts/figure_reference_check.pyruns25,834 bytesscripts/figure_story_check.pyruns12,698 bytesscripts/humanize_check.pyruns9,399 bytesscripts/intake_wizard.pyruns47,597 bytesscripts/integrity_audit.pyruns34,819 bytesscripts/latex_guard.pyruns20,719 bytesscripts/launch_paperspine_ui.ps1runs4,242 bytesscripts/launch_paperspine_ui.shruns1,078 bytesscripts/manuscript_export.pyruns29,361 bytesscripts/manuscript_refs.luaruns7,370 bytesscripts/material_inventory.pyruns4,624 bytesscripts/metadata_readiness_check.pyruns3,977 bytesscripts/open_release.pyruns79,733 bytesscripts/paperspine5_web.pyruns30,775 bytesscripts/paperspine_methods.pyruns19,271 bytesscripts/paperspine_public_client.pyruns46,579 bytesscripts/paperspine_stable_update.pyruns31,884 bytesscripts/paperspine_update.pyruns39,848 bytesscripts/preserve_figure_revision.pyruns4,109 bytesscripts/progress_check.pyruns67,177 bytesscripts/publication_cycle.pyruns107,182 bytesscripts/publication_surface_check.pyruns25,748 bytesscripts/reference_inventory.pyruns4,603 bytesscripts/respond_check.pyruns14,775 bytesscripts/results_validation_check.pyruns6,580 bytesscripts/reviewer_audit_check.pyruns12,235 bytesscripts/revision_audit.pyruns8,007 bytesscripts/scientific_evidence_check.pyruns8,292 bytesscripts/section_economy_check.pyruns6,256 bytesscripts/skill_discovery_migration.pyruns21,991 bytesscripts/structured_review.pyruns45,767 bytesscripts/style_metrics.pyruns12,488 bytesscripts/submission_check.pyruns22,044 bytesscripts/supplement_evidence_index.pyruns11,847 bytesscripts/translate_guard.pyruns31,019 bytesscripts/usage_ledger.pyruns6,416 bytesscripts/visual_readiness_check.pyruns40,305 bytesscripts/word_guard.pyruns67,541 bytesscripts/word_surface_repair.pyruns12,884 bytes
Read SKILL.md
# PaperSpine Orchestrator
Before paper production or resume, read [paper-spine-production-protocol.md](references/paper-spine-production-protocol.md). It is the operational 17-step handoff for the methods below.
The current host Agent performs research, citation checking, interpretation,
writing, figures and revision, and arranges independent review. Web, local files
and small scripts support interaction, persistence, rendering and delivery.
When configuration is missing, launch the intake UI automatically before inspecting
materials; do not hand-write configuration or silently choose a paper root.
For a visible launcher action, use `require_escalated` as required by the host.
After the update preflight below, launch is the first paper-production action when configuration is missing.
**Product outcome:** an evidence-bound, coherent paper with informative figures,View the complete source on GitHubpaper-spine
When your agent uses it
Research, write, review and deliver evidence-bound papers in one task, with user choices, real files, editable outputs and same-task revision.
What it loads into context
Frontmatter
46 tokensAlways available to the agent
SKILL.md
4,489 tokensWhen the skill is activated
Reference documents
127,179 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Authority and boundaries
- Update once on invocation, then continue the paper
- Start, configure and continue the current paper
- Work continuously within the confirmed scope
- Scientific work and expected results
- Quality rules that always remain active
- Completion contract
Scripts executed separately
scripts/_paper_spine_utils.pyscripts/adaptive_shadow.pyscripts/artifact_check.pyscripts/asset_selection.pyscripts/author_voice_check.pyscripts/citation_bank_check.pyscripts/citation_quality_audit.pyscripts/citation_verification_en.pyscripts/citation_verification_zh.pyscripts/contribution_check.pyscripts/evidence_grounded_review.pyscripts/execution_receipt.pyscripts/figure_comparison.pyscripts/figure_reference_check.pyscripts/figure_story_check.pyscripts/humanize_check.pyscripts/intake_wizard.pyscripts/integrity_audit.pyscripts/latex_guard.pyscripts/launch_paperspine_ui.ps1scripts/launch_paperspine_ui.shscripts/manuscript_export.pyscripts/manuscript_refs.luascripts/material_inventory.pyscripts/metadata_readiness_check.pyscripts/open_release.pyscripts/paperspine5_web.pyscripts/paperspine_methods.pyscripts/paperspine_public_client.pyscripts/paperspine_stable_update.pyscripts/paperspine_update.pyscripts/preserve_figure_revision.pyscripts/progress_check.pyscripts/publication_cycle.pyscripts/publication_surface_check.pyscripts/reference_inventory.pyscripts/respond_check.pyscripts/results_validation_check.pyscripts/reviewer_audit_check.pyscripts/revision_audit.pyscripts/scientific_evidence_check.pyscripts/section_economy_check.pyscripts/skill_discovery_migration.pyscripts/structured_review.pyscripts/style_metrics.pyscripts/submission_check.pyscripts/supplement_evidence_index.pyscripts/translate_guard.pyscripts/usage_ledger.pyscripts/visual_readiness_check.pyscripts/word_guard.pyscripts/word_surface_repair.py
Files
SKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesagents/openai.yamlasset290 bytesagents/research-exemplar.mddoc1,320 bytesagents/research-scene.mddoc1,054 bytesagents/research-sota.mddoc1,131 bytesagents/reviewer-evidence.mddoc2,049 bytesagents/reviewer-method.mddoc1,639 bytesagents/reviewer-writing.mddoc2,489 bytesreferences/adaptive-shadow.mddoc5,343 bytesreferences/assertive-scientific-writing.mddoc5,409 bytesreferences/asset-selection.mddoc2,225 bytesreferences/audit.mddoc13,801 bytesreferences/build.mddoc7,375 bytesreferences/citation-support-bank.mddoc5,278 bytesreferences/citation.mddoc6,337 bytesreferences/contracts/adaptive-shadow-request.schema.jsonasset13,121 bytesreferences/contracts/adaptive-shadow-result.schema.jsonasset2,676 bytesreferences/contracts/asset-selection-request.schema.jsonasset1,759 bytesreferences/contracts/author-voice-profile.schema.jsonasset2,347 bytesreferences/contracts/author-voice-receipt.schema.jsonasset1,246 bytesreferences/contracts/author-voice-restoration.schema.jsonasset4,610 bytesreferences/contracts/evidence-review.schema.jsonasset4,414 bytesreferences/contracts/open-release-agent-ticket.schema.jsonasset2,041 bytesreferences/contracts/open-release-confirmation.schema.jsonasset1,043 bytesreferences/contracts/open-release-invocation.schema.jsonasset3,351 bytesreferences/contracts/open-release-manifest.schema.jsonasset1,411 bytesreferences/contracts/open-release-plan.schema.jsonasset3,536 bytesreferences/contracts/open-release-platform-receipts.schema.jsonasset1,950 bytesreferences/contracts/open-release-result.schema.jsonasset1,787 bytesreferences/contracts/publication-cycle-invocation.schema.jsonasset2,713 bytesreferences/contracts/publication-cycle-result.schema.jsonasset3,624 bytesreferences/contracts/publication-target-profile.schema.jsonasset5,376 bytesreferences/contracts/review-calibration.schema.jsonasset1,695 bytesreferences/contracts/skill-discovery-migration-preview.schema.jsonasset2,822 bytesreferences/contracts/skill-discovery-migration.schema.jsonasset2,922 bytesreferences/contracts/submission-package-plan.schema.jsonasset1,713 bytesreferences/contracts/supplement-evidence-index.schema.jsonasset3,286 bytesreferences/contribution.mddoc10,882 bytesreferences/current-method-routing.jsonasset81,528 bytesreferences/current-method-routing.mddoc10,617 bytesreferences/deep-imitation-protocol.mddoc7,448 bytesreferences/deep-reading.mddoc11,305 bytesreferences/editorial-completeness.mddoc4,211 bytesreferences/evidence-grounded-review.mddoc5,494 bytesreferences/execution-efficiency.mddoc6,450 bytesreferences/exemplar-learning-dossier.mddoc5,733 bytesreferences/figure-reference-mapping.mddoc6,615 bytesreferences/figure-story.mddoc10,246 bytesreferences/humanize-calibration.mddoc2,201 bytesreferences/humanize.mddoc8,736 bytesreferences/intake.mddoc5,018 bytesreferences/intent-configuration.mddoc4,352 bytesreferences/interaction-policy.mddoc4,986 bytesreferences/interactive-intake.mddoc6,850 bytesreferences/journal-learning.mddoc16,054 bytesreferences/journal-style-analysis.mddoc3,973 bytesreferences/journal-transfer.mddoc3,613 bytesreferences/latex-source-control.mddoc3,862 bytesreferences/latex.mddoc13,789 bytesreferences/local-reference-ingestion.mddoc1,754 bytesreferences/logic-transfer-audit.mddoc7,149 bytesreferences/manuscript-format.mddoc33,057 bytesreferences/motivation-thread-writing.mddoc9,979 bytesreferences/open-release-interface.mddoc5,016 bytesreferences/open-release-platforms.jsonasset33,591 bytesreferences/open-release.mddoc7,132 bytesreferences/orchestrator-branch-map.mddoc10,191 bytesreferences/paper-spine-production-protocol.mddoc22,993 bytesreferences/phase-contracts.mddoc2,409 bytesreferences/platform-cnki.mddoc831 bytesreferences/platform-general.mddoc933 bytesreferences/platform-weipu.mddoc832 bytesreferences/product-runner-host-route.mddoc29,467 bytesreferences/product-v1-workflow.mddoc46,089 bytesreferences/publication-cycle-contracts.mddoc11,723 bytesreferences/publication-cycle-interface.mddoc6,895 bytesreferences/publication-cycle.mddoc4,717 bytesreferences/publication-surface.mddoc3,725 bytesreferences/publication-target-profile.mddoc6,602 bytesreferences/research.mddoc5,962 bytesreferences/respond.mddoc3,818 bytesreferences/results-validation.mddoc8,238 bytesreferences/resume.mddoc10,881 bytesreferences/review-policy.mddoc6,257 bytesreferences/reviewer-audit.mddoc9,025 bytesreferences/reviewer-persona-registry.jsonasset2,620 bytesreferences/rewrite-matrix.mddoc8,613 bytesreferences/rewrite.mddoc5,238 bytesreferences/round1-literature-revision.mddoc6,541 bytesreferences/round2-journal-revision.mddoc4,379 bytesreferences/round3-latex-polish.mddoc7,028 bytesreferences/round4-template-integration.mddoc7,019 bytesreferences/scenario-competition.mddoc816 bytesreferences/scenario-conference.mddoc591 bytesreferences/scenario-journal.mddoc1,078 bytesreferences/scenario-report-review.mddoc825 bytesreferences/scientific-evidence-ledger.mddoc3,633 bytesreferences/scientific-figure-workflow.mddoc38,076 bytesreferences/semantic-confirmation.mddoc3,708 bytesreferences/style-learning-workflow.mddoc7,519 bytesreferences/submission-metadata.mddoc1,106 bytesreferences/submission.mddoc8,896 bytesreferences/suite-map.mddoc5,304 bytesreferences/supplement-evidence-index.mddoc1,471 bytesreferences/target-journal-research.mddoc5,929 bytesreferences/task-genre-research.mddoc3,820 bytesreferences/translate.mddoc4,305 bytesreferences/translation-package.mddoc3,117 bytesreferences/update.mddoc3,305 bytesreferences/upstream-review-protocols.mddoc1,868 bytesreferences/usage-telemetry.mddoc1,651 bytesreferences/version-requirements.mddoc2,029 bytesreferences/visual-readiness-gate.mddoc5,937 bytesreferences/writing-rationale-matrix.mddoc9,402 bytesscripts/_paper_spine_utils.pyruns8,131 bytesscripts/adaptive_shadow.pyruns47,030 bytesscripts/artifact_check.pyruns50,086 bytesscripts/asset_selection.pyruns16,143 bytesscripts/author_voice_check.pyruns28,967 bytesscripts/citation_bank_check.pyruns11,900 bytesscripts/citation_quality_audit.pyruns31,129 bytesscripts/citation_verification_en.pyruns26,558 bytesscripts/citation_verification_zh.pyruns8,545 bytesscripts/contribution_check.pyruns10,347 bytesscripts/evidence_grounded_review.pyruns36,051 bytesscripts/execution_receipt.pyruns7,538 bytesscripts/figure_comparison.pyruns13,321 bytesscripts/figure_reference_check.pyruns25,834 bytesscripts/figure_story_check.pyruns12,698 bytesscripts/humanize_check.pyruns9,399 bytesscripts/intake_wizard.pyruns47,597 bytesscripts/integrity_audit.pyruns34,819 bytesscripts/latex_guard.pyruns20,719 bytesscripts/launch_paperspine_ui.ps1runs4,242 bytesscripts/launch_paperspine_ui.shruns1,078 bytesscripts/manuscript_export.pyruns29,361 bytesscripts/manuscript_refs.luaruns7,370 bytesscripts/material_inventory.pyruns4,624 bytesscripts/metadata_readiness_check.pyruns3,977 bytesscripts/open_release.pyruns79,733 bytesscripts/paperspine5_web.pyruns30,775 bytesscripts/paperspine_methods.pyruns19,271 bytesscripts/paperspine_public_client.pyruns46,579 bytesscripts/paperspine_stable_update.pyruns31,884 bytesscripts/paperspine_update.pyruns39,848 bytesscripts/preserve_figure_revision.pyruns4,109 bytesscripts/progress_check.pyruns67,177 bytesscripts/publication_cycle.pyruns107,182 bytesscripts/publication_surface_check.pyruns25,748 bytesscripts/reference_inventory.pyruns4,603 bytesscripts/respond_check.pyruns14,775 bytesscripts/results_validation_check.pyruns6,580 bytesscripts/reviewer_audit_check.pyruns12,235 bytesscripts/revision_audit.pyruns8,007 bytesscripts/scientific_evidence_check.pyruns8,292 bytesscripts/section_economy_check.pyruns6,256 bytesscripts/skill_discovery_migration.pyruns21,991 bytesscripts/structured_review.pyruns45,767 bytesscripts/style_metrics.pyruns12,488 bytesscripts/submission_check.pyruns22,044 bytesscripts/supplement_evidence_index.pyruns11,847 bytesscripts/translate_guard.pyruns31,019 bytesscripts/usage_ledger.pyruns6,416 bytesscripts/visual_readiness_check.pyruns40,305 bytesscripts/word_guard.pyruns67,541 bytesscripts/word_surface_repair.pyruns12,884 bytes
Read SKILL.md
# PaperSpine Orchestrator
Before paper production or resume, read [paper-spine-production-protocol.md](references/paper-spine-production-protocol.md). It is the operational 17-step handoff for the methods below.
The current host Agent performs research, citation checking, interpretation,
writing, figures and revision, and arranges independent review. Web, local files
and small scripts support interaction, persistence, rendering and delivery.
When configuration is missing, launch the intake UI automatically before inspecting
materials; do not hand-write configuration or silently choose a paper root.
For a visible launcher action, use `require_escalated` as required by the host.
After the update preflight below, launch is the first paper-production action when configuration is missing.
**Product outcome:** an evidence-bound, coherent paper with informative figures,View the complete source on GitHubpaper-spine
When your agent uses it
Research, write, review and deliver evidence-bound papers in one task, with user choices, real files, editable outputs and same-task revision.
What it loads into context
Frontmatter
46 tokensAlways available to the agent
SKILL.md
4,489 tokensWhen the skill is activated
Reference documents
127,179 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Authority and boundaries
- Update once on invocation, then continue the paper
- Start, configure and continue the current paper
- Work continuously within the confirmed scope
- Scientific work and expected results
- Quality rules that always remain active
- Completion contract
Files
SKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesagents/openai.yamlasset290 bytesagents/research-exemplar.mddoc1,320 bytesagents/research-scene.mddoc1,054 bytesagents/research-sota.mddoc1,131 bytesagents/reviewer-evidence.mddoc2,049 bytesagents/reviewer-method.mddoc1,639 bytesagents/reviewer-writing.mddoc2,489 bytesreferences/adaptive-shadow.mddoc5,343 bytesreferences/assertive-scientific-writing.mddoc5,409 bytesreferences/asset-selection.mddoc2,225 bytesreferences/audit.mddoc13,801 bytesreferences/build.mddoc7,375 bytesreferences/citation-support-bank.mddoc5,278 bytesreferences/citation.mddoc6,337 bytesreferences/contracts/adaptive-shadow-request.schema.jsonasset13,121 bytesreferences/contracts/adaptive-shadow-result.schema.jsonasset2,676 bytesreferences/contracts/asset-selection-request.schema.jsonasset1,759 bytesreferences/contracts/author-voice-profile.schema.jsonasset2,347 bytesreferences/contracts/author-voice-receipt.schema.jsonasset1,246 bytesreferences/contracts/author-voice-restoration.schema.jsonasset4,610 bytesreferences/contracts/evidence-review.schema.jsonasset4,414 bytesreferences/contracts/open-release-agent-ticket.schema.jsonasset2,041 bytesreferences/contracts/open-release-confirmation.schema.jsonasset1,043 bytesreferences/contracts/open-release-invocation.schema.jsonasset3,351 bytesreferences/contracts/open-release-manifest.schema.jsonasset1,411 bytesreferences/contracts/open-release-plan.schema.jsonasset3,536 bytesreferences/contracts/open-release-platform-receipts.schema.jsonasset1,950 bytesreferences/contracts/open-release-result.schema.jsonasset1,787 bytesreferences/contracts/publication-cycle-invocation.schema.jsonasset2,713 bytesreferences/contracts/publication-cycle-result.schema.jsonasset3,624 bytesreferences/contracts/publication-target-profile.schema.jsonasset5,376 bytesreferences/contracts/review-calibration.schema.jsonasset1,695 bytesreferences/contracts/skill-discovery-migration-preview.schema.jsonasset2,822 bytesreferences/contracts/skill-discovery-migration.schema.jsonasset2,922 bytesreferences/contracts/submission-package-plan.schema.jsonasset1,713 bytesreferences/contracts/supplement-evidence-index.schema.jsonasset3,286 bytesreferences/contribution.mddoc10,882 bytesreferences/current-method-routing.jsonasset81,528 bytesreferences/current-method-routing.mddoc10,617 bytesreferences/deep-imitation-protocol.mddoc7,448 bytesreferences/deep-reading.mddoc11,305 bytesreferences/editorial-completeness.mddoc4,211 bytesreferences/evidence-grounded-review.mddoc5,494 bytesreferences/execution-efficiency.mddoc6,450 bytesreferences/exemplar-learning-dossier.mddoc5,733 bytesreferences/figure-reference-mapping.mddoc6,615 bytesreferences/figure-story.mddoc10,246 bytesreferences/humanize-calibration.mddoc2,201 bytesreferences/humanize.mddoc8,736 bytesreferences/intake.mddoc5,018 bytesreferences/intent-configuration.mddoc4,352 bytesreferences/interaction-policy.mddoc4,986 bytesreferences/interactive-intake.mddoc6,850 bytesreferences/journal-learning.mddoc16,054 bytesreferences/journal-style-analysis.mddoc3,973 bytesreferences/journal-transfer.mddoc3,613 bytesreferences/latex-source-control.mddoc3,862 bytesreferences/latex.mddoc13,789 bytesreferences/local-reference-ingestion.mddoc1,754 bytesreferences/logic-transfer-audit.mddoc7,149 bytesreferences/manuscript-format.mddoc33,057 bytesreferences/motivation-thread-writing.mddoc9,979 bytesreferences/open-release-interface.mddoc5,016 bytesreferences/open-release-platforms.jsonasset33,591 bytesreferences/open-release.mddoc7,132 bytesreferences/orchestrator-branch-map.mddoc10,191 bytesreferences/paper-spine-production-protocol.mddoc22,993 bytesreferences/phase-contracts.mddoc2,409 bytesreferences/platform-cnki.mddoc831 bytesreferences/platform-general.mddoc933 bytesreferences/platform-weipu.mddoc832 bytesreferences/product-runner-host-route.mddoc29,467 bytesreferences/product-v1-workflow.mddoc46,089 bytesreferences/publication-cycle-contracts.mddoc11,723 bytesreferences/publication-cycle-interface.mddoc6,895 bytesreferences/publication-cycle.mddoc4,717 bytesreferences/publication-surface.mddoc3,725 bytesreferences/publication-target-profile.mddoc6,602 bytesreferences/research.mddoc5,962 bytesreferences/respond.mddoc3,818 bytesreferences/results-validation.mddoc8,238 bytesreferences/resume.mddoc10,881 bytesreferences/review-policy.mddoc6,257 bytesreferences/reviewer-audit.mddoc9,025 bytesreferences/reviewer-persona-registry.jsonasset2,620 bytesreferences/rewrite-matrix.mddoc8,613 bytesreferences/rewrite.mddoc5,238 bytesreferences/round1-literature-revision.mddoc6,541 bytesreferences/round2-journal-revision.mddoc4,379 bytesreferences/round3-latex-polish.mddoc7,028 bytesreferences/round4-template-integration.mddoc7,019 bytesreferences/scenario-competition.mddoc816 bytesreferences/scenario-conference.mddoc591 bytesreferences/scenario-journal.mddoc1,078 bytesreferences/scenario-report-review.mddoc825 bytesreferences/scientific-evidence-ledger.mddoc3,633 bytesreferences/scientific-figure-workflow.mddoc38,076 bytesreferences/semantic-confirmation.mddoc3,708 bytesreferences/style-learning-workflow.mddoc7,519 bytesreferences/submission-metadata.mddoc1,106 bytesreferences/submission.mddoc8,896 bytesreferences/suite-map.mddoc5,304 bytesreferences/supplement-evidence-index.mddoc1,471 bytesreferences/target-journal-research.mddoc5,929 bytesreferences/task-genre-research.mddoc3,820 bytesreferences/translate.mddoc4,305 bytesreferences/translation-package.mddoc3,117 bytesreferences/update.mddoc3,305 bytesreferences/upstream-review-protocols.mddoc1,868 bytesreferences/usage-telemetry.mddoc1,651 bytesreferences/version-requirements.mddoc2,029 bytesreferences/visual-readiness-gate.mddoc5,937 bytesreferences/writing-rationale-matrix.mddoc9,402 bytes
Read SKILL.md
# PaperSpine Orchestrator
Before paper production or resume, read [paper-spine-production-protocol.md](references/paper-spine-production-protocol.md). It is the operational 17-step handoff for the methods below.
The current host Agent performs research, citation checking, interpretation,
writing, figures and revision, and arranges independent review. Web, local files
and small scripts support interaction, persistence, rendering and delivery.
When configuration is missing, launch the intake UI automatically before inspecting
materials; do not hand-write configuration or silently choose a paper root.
For a visible launcher action, use `require_escalated` as required by the host.
After the update preflight below, launch is the first paper-production action when configuration is missing.
**Product outcome:** an evidence-bound, coherent paper with informative figures,View the complete source on GitHubpaperFig
When your agent uses it
Design, implement, revise, and validate publication-quality scientific figures from references, existing plotting code, and real project data. Trace every figure to source code and inputs; deconstruct reference figures; plan the scientific story and multi-panel structure; build complex model architecture and statistical panels; enforce a consistent visual system; and render-verify PDF/SVG/PNG outputs. Use for 科研配图, 论文配图, 找图的源代码, 参考图复刻与改造, 模型框架图, 多面板主图, figure redesign, or standardizing a research-figure process.
What it loads into context
Frontmatter
131 tokensAlways available to the agent
SKILL.md
2,034 tokensWhen the skill is activated
Reference documents
2,941 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Mandatory routing
- Trigger conditions
- Core principles
- Inputs
- Workflow
- Deliverables
- Completion standard
Scripts executed separately
assets/comparison_atlas_builder.pyscripts/inspect_figure_project.pyscripts/validate_research_figures.py
Files
SKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesSKILL.mdcore10,020 bytesagents/openai.yamlasset342 bytesassets/comparison_atlas_builder.pyruns4,036 bytesassets/comparison_atlas_config.example.jsonasset797 bytesassets/design_brief.example.mddoc1,239 bytesassets/figure_manifest.example.jsonasset1,453 bytesassets/style_palette.example.jsonasset353 bytesreferences/architecture-and-multipanel-design.mddoc2,899 bytesreferences/reference-deconstruction.mddoc2,488 bytesreferences/research-figure-process.mddoc4,559 bytesreferences/scientific-visual-qa.mddoc3,317 bytesscripts/inspect_figure_project.pyruns6,102 bytesscripts/validate_research_figures.pyruns6,866 bytes
Read SKILL.md
# paperFig
Create scientifically faithful, publication-quality figures through a
repeatable process from evidence inventory to final render QA.
This skill governs the **research-figure process only**. It does not include
anonymization, data perturbation, synthetic replacement, identifier removal,
or privacy guarantees. If the user separately requests those operations,
treat them as an additional workflow with an explicit data-release contract;
do not silently mix them into ordinary scientific plotting.
## Mandatory routing
Read the following references before acting:View the complete source on GitHubpaper-spine
When your agent uses it
Research, write, review and deliver evidence-bound papers in one task, with user choices, real files, editable outputs and same-task revision.
What it loads into context
Frontmatter
46 tokensAlways available to the agent
SKILL.md
4,489 tokensWhen the skill is activated
Reference documents
127,179 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Authority and boundaries
- Update once on invocation, then continue the paper
- Start, configure and continue the current paper
- Work continuously within the confirmed scope
- Scientific work and expected results
- Quality rules that always remain active
- Completion contract
Files
SKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesSKILL.mdcore22,978 bytesagents/openai.yamlasset290 bytesagents/research-exemplar.mddoc1,320 bytesagents/research-scene.mddoc1,054 bytesagents/research-sota.mddoc1,131 bytesagents/reviewer-evidence.mddoc2,049 bytesagents/reviewer-method.mddoc1,639 bytesagents/reviewer-writing.mddoc2,489 bytesreferences/adaptive-shadow.mddoc5,343 bytesreferences/assertive-scientific-writing.mddoc5,409 bytesreferences/asset-selection.mddoc2,225 bytesreferences/audit.mddoc13,801 bytesreferences/build.mddoc7,375 bytesreferences/citation-support-bank.mddoc5,278 bytesreferences/citation.mddoc6,337 bytesreferences/contracts/adaptive-shadow-request.schema.jsonasset13,121 bytesreferences/contracts/adaptive-shadow-result.schema.jsonasset2,676 bytesreferences/contracts/asset-selection-request.schema.jsonasset1,759 bytesreferences/contracts/author-voice-profile.schema.jsonasset2,347 bytesreferences/contracts/author-voice-receipt.schema.jsonasset1,246 bytesreferences/contracts/author-voice-restoration.schema.jsonasset4,610 bytesreferences/contracts/evidence-review.schema.jsonasset4,414 bytesreferences/contracts/open-release-agent-ticket.schema.jsonasset2,041 bytesreferences/contracts/open-release-confirmation.schema.jsonasset1,043 bytesreferences/contracts/open-release-invocation.schema.jsonasset3,351 bytesreferences/contracts/open-release-manifest.schema.jsonasset1,411 bytesreferences/contracts/open-release-plan.schema.jsonasset3,536 bytesreferences/contracts/open-release-platform-receipts.schema.jsonasset1,950 bytesreferences/contracts/open-release-result.schema.jsonasset1,787 bytesreferences/contracts/publication-cycle-invocation.schema.jsonasset2,713 bytesreferences/contracts/publication-cycle-result.schema.jsonasset3,624 bytesreferences/contracts/publication-target-profile.schema.jsonasset5,376 bytesreferences/contracts/review-calibration.schema.jsonasset1,695 bytesreferences/contracts/skill-discovery-migration-preview.schema.jsonasset2,822 bytesreferences/contracts/skill-discovery-migration.schema.jsonasset2,922 bytesreferences/contracts/submission-package-plan.schema.jsonasset1,713 bytesreferences/contracts/supplement-evidence-index.schema.jsonasset3,286 bytesreferences/contribution.mddoc10,882 bytesreferences/current-method-routing.jsonasset81,528 bytesreferences/current-method-routing.mddoc10,617 bytesreferences/deep-imitation-protocol.mddoc7,448 bytesreferences/deep-reading.mddoc11,305 bytesreferences/editorial-completeness.mddoc4,211 bytesreferences/evidence-grounded-review.mddoc5,494 bytesreferences/execution-efficiency.mddoc6,450 bytesreferences/exemplar-learning-dossier.mddoc5,733 bytesreferences/figure-reference-mapping.mddoc6,615 bytesreferences/figure-story.mddoc10,246 bytesreferences/humanize-calibration.mddoc2,201 bytesreferences/humanize.mddoc8,736 bytesreferences/intake.mddoc5,018 bytesreferences/intent-configuration.mddoc4,352 bytesreferences/interaction-policy.mddoc4,986 bytesreferences/interactive-intake.mddoc6,850 bytesreferences/journal-learning.mddoc16,054 bytesreferences/journal-style-analysis.mddoc3,973 bytesreferences/journal-transfer.mddoc3,613 bytesreferences/latex-source-control.mddoc3,862 bytesreferences/latex.mddoc13,789 bytesreferences/local-reference-ingestion.mddoc1,754 bytesreferences/logic-transfer-audit.mddoc7,149 bytesreferences/manuscript-format.mddoc33,057 bytesreferences/motivation-thread-writing.mddoc9,979 bytesreferences/open-release-interface.mddoc5,016 bytesreferences/open-release-platforms.jsonasset33,591 bytesreferences/open-release.mddoc7,132 bytesreferences/orchestrator-branch-map.mddoc10,191 bytesreferences/paper-spine-production-protocol.mddoc22,993 bytesreferences/phase-contracts.mddoc2,409 bytesreferences/platform-cnki.mddoc831 bytesreferences/platform-general.mddoc933 bytesreferences/platform-weipu.mddoc832 bytesreferences/product-runner-host-route.mddoc29,467 bytesreferences/product-v1-workflow.mddoc46,089 bytesreferences/publication-cycle-contracts.mddoc11,723 bytesreferences/publication-cycle-interface.mddoc6,895 bytesreferences/publication-cycle.mddoc4,717 bytesreferences/publication-surface.mddoc3,725 bytesreferences/publication-target-profile.mddoc6,602 bytesreferences/research.mddoc5,962 bytesreferences/respond.mddoc3,818 bytesreferences/results-validation.mddoc8,238 bytesreferences/resume.mddoc10,881 bytesreferences/review-policy.mddoc6,257 bytesreferences/reviewer-audit.mddoc9,025 bytesreferences/reviewer-persona-registry.jsonasset2,620 bytesreferences/rewrite-matrix.mddoc8,613 bytesreferences/rewrite.mddoc5,238 bytesreferences/round1-literature-revision.mddoc6,541 bytesreferences/round2-journal-revision.mddoc4,379 bytesreferences/round3-latex-polish.mddoc7,028 bytesreferences/round4-template-integration.mddoc7,019 bytesreferences/scenario-competition.mddoc816 bytesreferences/scenario-conference.mddoc591 bytesreferences/scenario-journal.mddoc1,078 bytesreferences/scenario-report-review.mddoc825 bytesreferences/scientific-evidence-ledger.mddoc3,633 bytesreferences/scientific-figure-workflow.mddoc38,076 bytesreferences/semantic-confirmation.mddoc3,708 bytesreferences/style-learning-workflow.mddoc7,519 bytesreferences/submission-metadata.mddoc1,106 bytesreferences/submission.mddoc8,896 bytesreferences/suite-map.mddoc5,304 bytesreferences/supplement-evidence-index.mddoc1,471 bytesreferences/target-journal-research.mddoc5,929 bytesreferences/task-genre-research.mddoc3,820 bytesreferences/translate.mddoc4,305 bytesreferences/translation-package.mddoc3,117 bytesreferences/update.mddoc3,305 bytesreferences/upstream-review-protocols.mddoc1,868 bytesreferences/usage-telemetry.mddoc1,651 bytesreferences/version-requirements.mddoc2,029 bytesreferences/visual-readiness-gate.mddoc5,937 bytesreferences/writing-rationale-matrix.mddoc9,402 bytes
Read SKILL.md
# PaperSpine Orchestrator
Before paper production or resume, read [paper-spine-production-protocol.md](references/paper-spine-production-protocol.md). It is the operational 17-step handoff for the methods below.
The current host Agent performs research, citation checking, interpretation,
writing, figures and revision, and arranges independent review. Web, local files
and small scripts support interaction, persistence, rendering and delivery.
When configuration is missing, launch the intake UI automatically before inspecting
materials; do not hand-write configuration or silently choose a paper root.
For a visible launcher action, use `require_escalated` as required by the host.
After the update preflight below, launch is the first paper-production action when configuration is missing.
**Product outcome:** an evidence-bound, coherent paper with informative figures,View the complete source on GitHubSkills included
- paper-spine
- paper-spine
- paper-spine
- paper-spine
- paper-spine
- paperFig
- paper-spine
Repository facts
- License
- MIT
- Created
- May 17, 2026
- Last pushed
- Oct 14, 2026
- Forks
- 249
- Open issues
- 1
- Project activity
- Active
Rank over the last 12 weeks
Now #240 · best #211 · down 16 in 30 days
- #233 on Oct 29
- #236 on Oct 30
- #237 on Oct 31
- #236 from Nov 1 to Nov 2
- #238 from Nov 3 to Nov 5
- #240 since Nov 6
61 earlier periods
- #204 on Aug 2
- #206 from Aug 7 to Aug 8
- #205 on Aug 9
- #210 from Aug 10 to Aug 12
- #213 from Aug 13 to Aug 14
- #212 from Aug 15 to Aug 16
- #211 on Aug 17
- #215 on Aug 18
- #214 on Aug 19
- #212 on Aug 20
- #213 on Aug 21
- #211 on Aug 22
- #216 from Aug 23 to Aug 25
- #217 on Aug 26
- #218 on Aug 27
- #217 on Aug 28
- #218 on Aug 29
- #216 from Aug 30 to Aug 31
- #221 on Sep 1
- #215 on Sep 2
- #222 on Sep 3
- #219 on Sep 4
- #221 on Sep 5
- #218 on Sep 6
- #221 from Sep 7 to Sep 8
- #222 on Sep 9
- #220 on Sep 10
- #221 on Sep 11
- #224 on Sep 12
- #226 on Sep 13
- #225 on Sep 14
- #226 on Sep 15
- #225 on Sep 16
- #224 on Sep 17
- #227 on Sep 18
- #224 on Sep 19
- #225 from Sep 20 to Sep 21
- #223 on Sep 22
- #222 on Sep 23
- #221 on Sep 24
- #220 from Sep 25 to Sep 27
- #224 from Sep 28 to Sep 29
- #222 on Sep 30
- #224 from Oct 1 to Oct 2
- #220 on Oct 3
- #218 on Oct 4
- #219 on Oct 5
- #221 on Oct 6
- #224 on Oct 7
- #223 on Oct 8
- #226 on Oct 9
- #223 from Oct 10 to Oct 11
- #227 from Oct 12 to Oct 13
- #226 from Oct 14 to Oct 15
- #224 on Oct 16
- #226 from Oct 17 to Oct 20
- #227 on Oct 21
- #226 on Oct 22
- #227 from Oct 23 to Oct 24
- #229 on Oct 25
- #231 on Oct 28
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 2, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 38 notes
dist/claude/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/claude/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/claude/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/claude/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/codex/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/codex/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/codex/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/codex/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/hermes/skills/academic-writing/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/hermes/skills/academic-writing/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/hermes/skills/academic-writing/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/hermes/skills/academic-writing/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/openclaw/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/openclaw/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/openclaw/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddist/openclaw/skills/paper-spine/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpaperspine5/core/01_PaperSpine4/src/skill/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpaperspine5/core/01_PaperSpine4/src/skill/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpaperspine5/core/01_PaperSpine4/src/skill/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedpaperspine5/core/01_PaperSpine4/src/skill/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 1,377 network referencesin 198 files: paper-spine/references/open-release-platforms.json:30 paper-spine/references/open-release-platforms.json:30 paper-spine/references/open-release-platforms.json:30 and 195 more
- No hidden or obfuscated text
- No instruction overrides
- 211 executable scriptsin 211 files: paper-spine/scripts/_paper_spine_utils.py:1 paper-spine/scripts/adaptive_shadow.py:1 paper-spine/scripts/artifact_check.py:1 and 208 more
- 104 references to secretsin 24 files: paper-spine/scripts/paperspine_public_client.py:41 paper-spine/scripts/paperspine_update.py:129 paper-spine/scripts/paperspine_public_client.py:41 and 21 more
- No requests to vote in Hot
Show all 1,692 signals by file
.claude-plugin/marketplace.json
- Network accessline 1
{ "$schema": "https://anthropic.com/claude-code/marketplace.schema.json", - Network accessline 2
"$schema": "https://anthropic.com/claude-code/marketplace.schema.json", - Network accessline 5
"owner": { "name": "WUBING2023", "url": "https://github.com/WUBING2023" - Network accessline 6
"name": "WUBING2023", "url": "https://github.com/WUBING2023" }, - Network accessline 7
"url": "https://github.com/WUBING2023" - Network accessline 14
"version": "4.0.1", "category": "writing", "homepage": "https://github.com/WUBING2023/PaperSpine", - Network accessline 15
"category": "writing", "homepage": "https://github.com/WUBING2023/PaperSpine", "skills": [ - Network accessline 16
"homepage": "https://github.com/WUBING2023/PaperSpine",
.claude-plugin/plugin.json
- Network accessline 1
{ "$schema": "https://anthropic.com/claude-code/plugin.schema.json", - Network accessline 2
"$schema": "https://anthropic.com/claude-code/plugin.schema.json", - Network accessline 6
"author": { "name": "WUBING2023", "url": "https://github.com/WUBING2023" - Network accessline 7
"name": "WUBING2023", "url": "https://github.com/WUBING2023" }, - Network accessline 8
"url": "https://github.com/WUBING2023" - Network accessline 9
}, "repository": "https://github.com/WUBING2023/PaperSpine", "license": "MIT", - Network accessline 10
"repository": "https://github.com/WUBING2023/PaperSpine",
dist/claude/skills/paper-spine/references/contracts/adaptive-shadow-request.schema.json
dist/claude/skills/paper-spine/references/contracts/adaptive-shadow-result.schema.json
dist/claude/skills/paper-spine/references/contracts/asset-selection-request.schema.json
dist/claude/skills/paper-spine/references/contracts/author-voice-profile.schema.json
dist/claude/skills/paper-spine/references/contracts/author-voice-receipt.schema.json
dist/claude/skills/paper-spine/references/contracts/author-voice-restoration.schema.json
dist/claude/skills/paper-spine/references/contracts/evidence-review.schema.json
dist/claude/skills/paper-spine/references/contracts/open-release-agent-ticket.schema.json
dist/claude/skills/paper-spine/references/contracts/open-release-confirmation.schema.json
dist/claude/skills/paper-spine/references/contracts/open-release-invocation.schema.json
dist/claude/skills/paper-spine/references/contracts/open-release-manifest.schema.json
dist/claude/skills/paper-spine/references/contracts/open-release-plan.schema.json
dist/claude/skills/paper-spine/references/contracts/open-release-platform-receipts.schema.json
dist/claude/skills/paper-spine/references/contracts/open-release-result.schema.json
dist/claude/skills/paper-spine/references/contracts/publication-cycle-invocation.schema.json
dist/claude/skills/paper-spine/references/contracts/publication-cycle-result.schema.json
dist/claude/skills/paper-spine/references/contracts/publication-target-profile.schema.json
dist/claude/skills/paper-spine/references/contracts/review-calibration.schema.json
dist/claude/skills/paper-spine/references/contracts/skill-discovery-migration-preview.schema.json
dist/claude/skills/paper-spine/references/contracts/skill-discovery-migration.schema.json
dist/claude/skills/paper-spine/references/contracts/submission-package-plan.schema.json
dist/claude/skills/paper-spine/references/contracts/supplement-evidence-index.schema.json
dist/claude/skills/paper-spine/references/open-release-platforms.json
- Network accessline 30
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://github.com/", - Network accessline 31
"official_urls": { "home": "https://github.com/", "submit": "https://github.com/new", - Network accessline 32
"home": "https://github.com/", - Network accessline 33
"submit": "https://github.com/new", - Network accessline 34
"requirements": "https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-new-repository", - Network accessline 35
"authentication": "https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/about-authentication-to-github" - Network accessline 59
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://zenodo.org/", - Network accessline 60
"official_urls": { "home": "https://zenodo.org/", "submit": "https://zenodo.org/uploads/new", - Network accessline 61
"home": "https://zenodo.org/", - Network accessline 62
"submit": "https://zenodo.org/uploads/new", - Network accessline 63
"requirements": "https://help.zenodo.org/docs/get-started/quickstart/", - Network accessline 64
"api": "https://developers.zenodo.org/" - Network accessline 87
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://arxiv.org/", - Network accessline 88
"official_urls": { "home": "https://arxiv.org/", "submit": "https://arxiv.org/submit", - Network accessline 89
"home": "https://arxiv.org/", - Network accessline 90
"submit": "https://arxiv.org/submit", - Network accessline 91
"requirements": "https://info.arxiv.org/help/submit/index.html", - Network accessline 92
"endorsement": "https://info.arxiv.org/help/endorsement.html" - Network accessline 116
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://figshare.com/", - Network accessline 117
"official_urls": { "home": "https://figshare.com/", "submit": "https://figshare.com/account/home", - Network accessline 118
"home": "https://figshare.com/", - Network accessline 119
"submit": "https://figshare.com/account/home", - Network accessline 120
"requirements": "https://help.figshare.com/article/how-to-upload-and-publish-your-research", - Network accessline 121
"api": "https://info.figshare.com/user-guide/how-to-use-the-figshare-api/" - Network accessline 145
"sensitive_data_policy": "private_workspace_supported_but_public_release_requires_clearance", "official_urls": { "home": "https://osf.io/", - Network accessline 146
"official_urls": { "home": "https://osf.io/", "submit": "https://osf.io/", - Network accessline 147
"home": "https://osf.io/", - Network accessline 148
"submit": "https://osf.io/", - Network accessline 149
"requirements": "https://help.osf.io/article/387-files", - Network accessline 150
"api": "https://developer.osf.io/" - Network accessline 173
"sensitive_data_policy": "public_only_strict_human_deidentification", "official_urls": { "home": "https://datadryad.org/", - Network accessline 174
"official_urls": { "home": "https://datadryad.org/", "submit": "https://datadryad.org/stash/submissions/new", - Network accessline 175
"home": "https://datadryad.org/", - Network accessline 176
"submit": "https://datadryad.org/stash/submissions/new", - Network accessline 177
"requirements": "https://datadryad.org/help/submission_steps/description", - Network accessline 178
"human_data": "https://datadryad.org/docs/HumanSubjectsData.pdf" - Network accessline 202
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://huggingface.co/", - Network accessline 203
"official_urls": { "home": "https://huggingface.co/", "submit": "https://huggingface.co/new", - Network accessline 204
"home": "https://huggingface.co/", - Network accessline 205
"submit": "https://huggingface.co/new", - Network accessline 206
"requirements": "https://huggingface.co/docs/hub/repositories-getting-started" - Network accessline 230
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://www.protocols.io/", - Network accessline 231
"official_urls": { "home": "https://www.protocols.io/", "submit": "https://www.protocols.io/", - Network accessline 232
"home": "https://www.protocols.io/", - Network accessline 233
"submit": "https://www.protocols.io/", - Network accessline 234
"requirements": "https://apidoc.protocols.io/" - Network accessline 257
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://www.medrxiv.org/", - Network accessline 258
"official_urls": { "home": "https://www.medrxiv.org/", "submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 259
"home": "https://www.medrxiv.org/", - Network accessline 260
"submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 261
"requirements": "https://www.medrxiv.org/submit-a-manuscript" - Network accessline 284
"sensitive_data_policy": "registry_summary_only_no_participant_level_data", "official_urls": { "home": "https://clinicaltrials.gov/", - Network accessline 285
"official_urls": { "home": "https://clinicaltrials.gov/", "submit": "https://register.clinicaltrials.gov/", - Network accessline 286
"home": "https://clinicaltrials.gov/", - Network accessline 287
"submit": "https://register.clinicaltrials.gov/", - Network accessline 288
"requirements": "https://clinicaltrials.gov/submit-studies/prs-help/user-guide", - Network accessline 289
"accounts": "https://clinicaltrials.gov/submit-studies/prs-accounts" - Network accessline 312
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 313
"official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", "submit": "https://www.nihms.nih.gov/", - Network accessline 314
"home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 315
"submit": "https://www.nihms.nih.gov/", - Network accessline 316
"requirements": "https://pmc.ncbi.nlm.nih.gov/about/submission-methods/" - Network accessline 339
"sensitive_data_policy": "public_functional_genomics_no_controlled_human_data", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 340
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", "submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 341
"home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 342
"submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 343
"requirements": "https://www.ncbi.nlm.nih.gov/geo/info/seq.html" - Network accessline 366
"sensitive_data_policy": "public_only_with_explicit_consent_otherwise_route_dbgap", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 367
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", "submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 368
"home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 369
"submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 370
"requirements": "https://www.ncbi.nlm.nih.gov/sra/docs/submit/" - Network accessline 393
"sensitive_data_policy": "controlled_access_supported", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 394
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", "submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 395
"home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 396
"submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 397
"requirements": "https://www.ncbi.nlm.nih.gov/gap/docs/submissionguide/", - Network accessline 398
"sequence": "https://www.ncbi.nlm.nih.gov/sra/docs/submitdbgap/" - Network accessline 421
"sensitive_data_policy": "open_restricted_or_credentialed_after_phi_removal", "official_urls": { "home": "https://physionet.org/", - Network accessline 422
"official_urls": { "home": "https://physionet.org/", "submit": "https://physionet.org/projects/", - Network accessline 423
"home": "https://physionet.org/", - Network accessline 424
"submit": "https://physionet.org/projects/", - Network accessline 425
"requirements": "https://physionet.org/about/publish/" - Network accessline 449
"sensitive_data_policy": "public_only_no_identifiable_health_information", "official_urls": { "home": "https://openneuro.org/", - Network accessline 450
"official_urls": { "home": "https://openneuro.org/", "submit": "https://openneuro.org/", - Network accessline 451
"home": "https://openneuro.org/", - Network accessline 452
"submit": "https://openneuro.org/", - Network accessline 453
"requirements": "https://docs.openneuro.org/user_guide.html" - Network accessline 476
"sensitive_data_policy": "public_release_requires_clearance", "official_urls": { "home": "https://www.ebi.ac.uk/pride/", - Network accessline 477
"official_urls": { "home": "https://www.ebi.ac.uk/pride/", "submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 478
"home": "https://www.ebi.ac.uk/pride/", - Network accessline 479
"submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 480
"requirements": "https://www.ebi.ac.uk/training/online/courses/pride-quick-tour/submitting-data-to-pride/" - Network accessline 503
"sensitive_data_policy": "not_for_patient_level_data", "official_urls": { "home": "https://www.wwpdb.org/", - Network accessline 504
"official_urls": { "home": "https://www.wwpdb.org/", "submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 505
"home": "https://www.wwpdb.org/", - Network accessline 506
"submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 507
"requirements": "https://www.wwpdb.org/documentation/policy" - Network accessline 531
"sensitive_data_policy": "instance_policy_dependent", "official_urls": { "home": "https://dataverse.org/", - Network accessline 532
"official_urls": { "home": "https://dataverse.org/", "submit": "https://dataverse.harvard.edu/", - Network accessline 533
"home": "https://dataverse.org/", - Network accessline 534
"submit": "https://dataverse.harvard.edu/", - Network accessline 535
"requirements": "https://guides.dataverse.org/en/latest/user/dataset-management.html" - Network accessline 558
"sensitive_data_policy": "public_release_requires_location_clearance", "official_urls": { "home": "https://www.pangaea.de/", - Network accessline 559
"official_urls": { "home": "https://www.pangaea.de/", "submit": "https://www.pangaea.de/submit/", - Network accessline 560
"home": "https://www.pangaea.de/", - Network accessline 561
"submit": "https://www.pangaea.de/submit/", - Network accessline 562
"requirements": "https://www.pangaea.de/submit/" - Network accessline 583
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://fairsharing.org/", - Network accessline 584
"official_urls": { "home": "https://fairsharing.org/", "requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 585
"home": "https://fairsharing.org/", - Network accessline 586
"requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 607
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://www.re3data.org/", - Network accessline 608
"official_urls": { "home": "https://www.re3data.org/", "requirements": "https://www.re3data.org/faq" - Network accessline 609
"home": "https://www.re3data.org/", - Network accessline 610
"requirements": "https://www.re3data.org/faq"
dist/claude/skills/paper-spine/references/publication-cycle-contracts.md
- Network accessline 25
"id": "official-guide", "authority": "official", "url": "https://journal.example/guide-for-authors", - Network accessline 26
"authority": "official", "url": "https://journal.example/guide-for-authors", "checked_at": "2026-08-23" - Network accessline 27
"url": "https://journal.example/guide-for-authors", - Network accessline 31
"id": "recent-corpus", "authority": "published_corpus", "url": "https://journal.example/recent-articles", - Network accessline 32
"authority": "published_corpus", "url": "https://journal.example/recent-articles", "checked_at": "2026-08-23" - Network accessline 33
"url": "https://journal.example/recent-articles",
dist/claude/skills/paper-spine/references/update.md
- Network accessline 22
https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json
dist/claude/skills/paper-spine/references/upstream-review-protocols.md
dist/claude/skills/paper-spine/scripts/_paper_spine_utils.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/adaptive_shadow.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/artifact_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/asset_selection.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/author_voice_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/citation_bank_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/citation_quality_audit.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 38
ARXIV_RE = re.compile(r"\barxiv\s*:?\s*(\d{4}\.\d{4,5}(?:v\d+)?)\b", re.IGNORECASE) URL_RE = re.compile(r"https?://[^\s)\]]+", re.IGNORECASE) CROSSREF_URL = "https://api.crossref.org/works/" - Network accessline 39
URL_RE = re.compile(r"https?://[^\s)\]]+", re.IGNORECASE) CROSSREF_URL = "https://api.crossref.org/works/" SEMANTIC_SCHOLAR_URL = "https://api.semanticscholar.org/graph/v1/paper/DOI:" - Network accessline 40
CROSSREF_URL = "https://api.crossref.org/works/" - Network accessline 41
SEMANTIC_SCHOLAR_URL = "https://api.semanticscholar.org/graph/v1/paper/DOI:" - Network accessline 42
USER_AGENT = "PaperSpine/3.0 (citation-quality; https://github.com/WUBING2023/PaperSpine)"
dist/claude/skills/paper-spine/scripts/citation_verification_en.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 29
CROSSREF_QUERY_URL = "https://api.crossref.org/works" - Network accessline 185
Extracted as a module-level function so tests can mock it without touching ``urllib.request.urlopen`` internals. Returns the parsed - Network accessline 186
touching ``urllib.request.urlopen`` internals. Returns the parsed - Network accessline 189
req = urllib.request.Request(url, headers={"User-Agent": USER_AGENT}) - Network accessline 190
try: with urllib.request.urlopen(req, timeout=timeout) as resp: return json.loads(resp.read().decode("utf-8")) # type: ignore[no-any-return] - Network accessline 191
with urllib.request.urlopen(req, timeout=timeout) as resp: - Network accessline 460
doi_url = f"{CROSSREF_QUERY_URL}/{urllib.parse.quote(doi, safe='')}" data = fetch(doi_url) # type: ignore[call-arg] - Network accessline 461
data = fetch(doi_url) # type: ignore[call-arg] - Network accessline 514
f"{urllib.parse.urlencode({'query.bibliographic': bib_query[:200], 'rows': 3})}" ) data = fetch(bib_url) # type: ignore[call-arg] - Network accessline 516
data = fetch(bib_url) # type: ignore[call-arg]
dist/claude/skills/paper-spine/scripts/citation_verification_zh.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 24
USER_AGENT = "PaperSpine/3.0 (citation-zh; https://github.com/WUBING2023/PaperSpine)" - Network accessline 97
def verify_doi(doi: str) -> bool: try: req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) - Network accessline 98
try: req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) with urlopen(req, timeout=15) as resp: - Network accessline 99
req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) with urlopen(req, timeout=15) as resp: return resp.status == 200
dist/claude/skills/paper-spine/scripts/contribution_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/evidence_grounded_review.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/execution_receipt.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/figure_comparison.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/figure_reference_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/figure_story_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/humanize_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/intake_wizard.py
dist/claude/skills/paper-spine/scripts/integrity_audit.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/latex_guard.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/launch_paperspine_ui.ps1
- Executable scriptline 1
Executable file
dist/claude/skills/paper-spine/scripts/launch_paperspine_ui.sh
- Executable scriptline 1
#!/usr/bin/env bash
dist/claude/skills/paper-spine/scripts/manuscript_export.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/manuscript_refs.lua
- Executable scriptline 1
Executable file
dist/claude/skills/paper-spine/scripts/material_inventory.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/metadata_readiness_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/open_release.py
dist/claude/skills/paper-spine/scripts/paperspine5_web.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 29
[Credential-related source omitted] - Access to secretsline 200
[Credential-related source omitted] - Access to secretsline 201
[Credential-related source omitted] - Access to secretsline 411
[Credential-related source omitted] - Access to secretsline 516
[Credential-related source omitted]
dist/claude/skills/paper-spine/scripts/paperspine_methods.py
- Executable scriptline 1
Executable file
dist/claude/skills/paper-spine/scripts/paperspine_public_client.py
- Executable scriptline 1
Executable file - Access to secretsline 41
[Credential-related source omitted] - Access to secretsline 45
[Credential-related source omitted] - Access to secretsline 78
[Credential-related source omitted] - Access to secretsline 142
[Credential-related source omitted] - Network accessline 228
with urlopen(f'http://127.0.0.1:{port}/api/v1/session', timeout=2) as response: - Access to secretsline 335
[Credential-related source omitted] - Network accessline 382
kernel.close() raise RuntimeError('Product code changed during Web startup; retry this same profile after the update finishes.') _write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', - Network accessline 383
raise RuntimeError('Product code changed during Web startup; retry this same profile after the update finishes.') _write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', 'port': server.server_ - Network accessline 384
_write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', - Access to secretsline 533
[Credential-related source omitted] - Access to secretsline 562
[Credential-related source omitted] - Access to secretsline 655
[Credential-related source omitted]
dist/claude/skills/paper-spine/scripts/paperspine_stable_update.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 208
def fetch(source, target, limit=LIMIT): - Network accessline 230
scratch.mkdir(parents=True, exist_ok=True) downloaded = scratch / "source" fetch(source, downloaded) - Network accessline 231
downloaded = scratch / "source" fetch(source, downloaded) channel = None - Network accessline 232
fetch(source, downloaded) - Network accessline 235
channel = read(downloaded) bundle = select_bundle(channel) fetch(bundle_reference(source, bundle), scratch / "bundle.zip") - Network accessline 236
bundle = select_bundle(channel) fetch(bundle_reference(source, bundle), scratch / "bundle.zip") expected = bundle["sha256"] - Network accessline 237
fetch(bundle_reference(source, bundle), scratch / "bundle.zip") - Network accessline 254
with tempfile.TemporaryDirectory(prefix="paperspine-check-") as temporary: metadata = Path(temporary) / "channel.json" fetch(source, metadata, limit=2 * 1024 * 1024) - Network accessline 255
metadata = Path(temporary) / "channel.json" fetch(source, metadata, limit=2 * 1024 * 1024) if zipfile.is_zipfile(metadata): - Network accessline 256
fetch(source, metadata, limit=2 * 1024 * 1024) - Access to secretsline 455
[Credential-related source omitted] - Access to secretsline 628
[Credential-related source omitted]
dist/claude/skills/paper-spine/scripts/paperspine_update.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 26
DEFAULT_MANIFEST_URL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/dist/paperspine_version.json" - Network accessline 27
"https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/dist/paperspine_version.json" - Network accessline 28
) DEFAULT_STABLE_CHANNEL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" - Network accessline 29
DEFAULT_STABLE_CHANNEL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" ) - Network accessline 30
"https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" - Network accessline 33
DEFAULT_ARCHIVE_URL = "https://github.com/WUBING2023/PaperSpine/archive/refs/tags/v4.0.0.zip" - Access to secretsline 129
[Credential-related source omitted] - Network accessline 291
def load_manifest_from_url(url: str) -> dict[str, Any]: try: with urllib.request.urlopen(url, timeout=20) as response: - Network accessline 292
try: with urllib.request.urlopen(url, timeout=20) as response: body = response.read().decode("utf-8") - Network accessline 293
with urllib.request.urlopen(url, timeout=20) as response: - Network accessline 313
archive_path = temp_dir / "paperspine-update.zip" try: with urllib.request.urlopen(url, timeout=60) as response: - Network accessline 314
try: with urllib.request.urlopen(url, timeout=60) as response: archive_path.write_bytes(response.read()) - Network accessline 315
with urllib.request.urlopen(url, timeout=60) as response: - Access to secretsline 440
[Credential-related source omitted] - Access to secretsline 443
[Credential-related source omitted] - Access to secretsline 445
[Credential-related source omitted] - Access to secretsline 446
[Credential-related source omitted] - Access to secretsline 448
[Credential-related source omitted] - Access to secretsline 451
[Credential-related source omitted] - Access to secretsline 601
[Credential-related source omitted]
dist/claude/skills/paper-spine/scripts/preserve_figure_revision.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/progress_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/publication_cycle.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/publication_surface_check.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 269
def _docx(path: Path) -> list[_Text]: ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main", - Network accessline 270
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main", - Network accessline 271
"r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships"}
dist/claude/skills/paper-spine/scripts/reference_inventory.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/respond_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/results_validation_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/reviewer_audit_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/revision_audit.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/scientific_evidence_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/section_economy_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/skill_discovery_migration.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/structured_review.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/style_metrics.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/submission_check.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 65
A4_HEIGHT_TWIPS = "16838" DEFAULT_MARGIN_TWIPS = "1440" W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" - Network accessline 66
DEFAULT_MARGIN_TWIPS = "1440" W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" W = f"{{{W_NS}}}" - Network accessline 67
W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main"
dist/claude/skills/paper-spine/scripts/supplement_evidence_index.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/translate_guard.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 514
except (zipfile.BadZipFile, ElementTree.ParseError, OSError): return "" ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 515
return "" ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} paragraphs: list[str] = [] - Network accessline 516
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"}
dist/claude/skills/paper-spine/scripts/usage_ledger.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/visual_readiness_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/claude/skills/paper-spine/scripts/word_guard.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 172
W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" - Network accessline 173
A_NS = "http://schemas.openxmlformats.org/drawingml/2006/main" - Network accessline 174
WP_NS = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" - Network accessline 175
PIC_NS = "http://schemas.openxmlformats.org/drawingml/2006/picture" - Network accessline 176
R_NS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships" - Network accessline 177
PACKAGE_NS = "http://schemas.openxmlformats.org/package/2006/relationships" - Network accessline 481
def extract_text(document_xml: bytes) -> tuple[str, int]: root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 482
root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} paragraphs: list[str] = [] - Network accessline 483
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 506
root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 507
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 968
if root.getroottree().docinfo.doctype: raise ValueError("Word font repair does not accept DTD-bearing XML") mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" - Network accessline 969
raise ValueError("Word font repair does not accept DTD-bearing XML") mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" qname_lists = {f"{{{mc}}}{name}" for name in ( - Network accessline 970
mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" - Network accessline 1118
if anchor and not node.get("{http://schemas.openxmlformats.org/officeDocument/2006/relationships}id") and anchor.lower() != "_top" and anchor not in bookmarks:
dist/claude/skills/paper-spine/scripts/word_surface_repair.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/references/contracts/adaptive-shadow-request.schema.json
dist/codex/skills/paper-spine/references/contracts/adaptive-shadow-result.schema.json
dist/codex/skills/paper-spine/references/contracts/asset-selection-request.schema.json
dist/codex/skills/paper-spine/references/contracts/author-voice-profile.schema.json
dist/codex/skills/paper-spine/references/contracts/author-voice-receipt.schema.json
dist/codex/skills/paper-spine/references/contracts/author-voice-restoration.schema.json
dist/codex/skills/paper-spine/references/contracts/evidence-review.schema.json
dist/codex/skills/paper-spine/references/contracts/open-release-agent-ticket.schema.json
dist/codex/skills/paper-spine/references/contracts/open-release-confirmation.schema.json
dist/codex/skills/paper-spine/references/contracts/open-release-invocation.schema.json
dist/codex/skills/paper-spine/references/contracts/open-release-manifest.schema.json
dist/codex/skills/paper-spine/references/contracts/open-release-plan.schema.json
dist/codex/skills/paper-spine/references/contracts/open-release-platform-receipts.schema.json
dist/codex/skills/paper-spine/references/contracts/open-release-result.schema.json
dist/codex/skills/paper-spine/references/contracts/publication-cycle-invocation.schema.json
dist/codex/skills/paper-spine/references/contracts/publication-cycle-result.schema.json
dist/codex/skills/paper-spine/references/contracts/publication-target-profile.schema.json
dist/codex/skills/paper-spine/references/contracts/review-calibration.schema.json
dist/codex/skills/paper-spine/references/contracts/skill-discovery-migration-preview.schema.json
dist/codex/skills/paper-spine/references/contracts/skill-discovery-migration.schema.json
dist/codex/skills/paper-spine/references/contracts/submission-package-plan.schema.json
dist/codex/skills/paper-spine/references/contracts/supplement-evidence-index.schema.json
dist/codex/skills/paper-spine/references/open-release-platforms.json
- Network accessline 30
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://github.com/", - Network accessline 31
"official_urls": { "home": "https://github.com/", "submit": "https://github.com/new", - Network accessline 32
"home": "https://github.com/", - Network accessline 33
"submit": "https://github.com/new", - Network accessline 34
"requirements": "https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-new-repository", - Network accessline 35
"authentication": "https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/about-authentication-to-github" - Network accessline 59
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://zenodo.org/", - Network accessline 60
"official_urls": { "home": "https://zenodo.org/", "submit": "https://zenodo.org/uploads/new", - Network accessline 61
"home": "https://zenodo.org/", - Network accessline 62
"submit": "https://zenodo.org/uploads/new", - Network accessline 63
"requirements": "https://help.zenodo.org/docs/get-started/quickstart/", - Network accessline 64
"api": "https://developers.zenodo.org/" - Network accessline 87
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://arxiv.org/", - Network accessline 88
"official_urls": { "home": "https://arxiv.org/", "submit": "https://arxiv.org/submit", - Network accessline 89
"home": "https://arxiv.org/", - Network accessline 90
"submit": "https://arxiv.org/submit", - Network accessline 91
"requirements": "https://info.arxiv.org/help/submit/index.html", - Network accessline 92
"endorsement": "https://info.arxiv.org/help/endorsement.html" - Network accessline 116
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://figshare.com/", - Network accessline 117
"official_urls": { "home": "https://figshare.com/", "submit": "https://figshare.com/account/home", - Network accessline 118
"home": "https://figshare.com/", - Network accessline 119
"submit": "https://figshare.com/account/home", - Network accessline 120
"requirements": "https://help.figshare.com/article/how-to-upload-and-publish-your-research", - Network accessline 121
"api": "https://info.figshare.com/user-guide/how-to-use-the-figshare-api/" - Network accessline 145
"sensitive_data_policy": "private_workspace_supported_but_public_release_requires_clearance", "official_urls": { "home": "https://osf.io/", - Network accessline 146
"official_urls": { "home": "https://osf.io/", "submit": "https://osf.io/", - Network accessline 147
"home": "https://osf.io/", - Network accessline 148
"submit": "https://osf.io/", - Network accessline 149
"requirements": "https://help.osf.io/article/387-files", - Network accessline 150
"api": "https://developer.osf.io/" - Network accessline 173
"sensitive_data_policy": "public_only_strict_human_deidentification", "official_urls": { "home": "https://datadryad.org/", - Network accessline 174
"official_urls": { "home": "https://datadryad.org/", "submit": "https://datadryad.org/stash/submissions/new", - Network accessline 175
"home": "https://datadryad.org/", - Network accessline 176
"submit": "https://datadryad.org/stash/submissions/new", - Network accessline 177
"requirements": "https://datadryad.org/help/submission_steps/description", - Network accessline 178
"human_data": "https://datadryad.org/docs/HumanSubjectsData.pdf" - Network accessline 202
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://huggingface.co/", - Network accessline 203
"official_urls": { "home": "https://huggingface.co/", "submit": "https://huggingface.co/new", - Network accessline 204
"home": "https://huggingface.co/", - Network accessline 205
"submit": "https://huggingface.co/new", - Network accessline 206
"requirements": "https://huggingface.co/docs/hub/repositories-getting-started" - Network accessline 230
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://www.protocols.io/", - Network accessline 231
"official_urls": { "home": "https://www.protocols.io/", "submit": "https://www.protocols.io/", - Network accessline 232
"home": "https://www.protocols.io/", - Network accessline 233
"submit": "https://www.protocols.io/", - Network accessline 234
"requirements": "https://apidoc.protocols.io/" - Network accessline 257
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://www.medrxiv.org/", - Network accessline 258
"official_urls": { "home": "https://www.medrxiv.org/", "submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 259
"home": "https://www.medrxiv.org/", - Network accessline 260
"submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 261
"requirements": "https://www.medrxiv.org/submit-a-manuscript" - Network accessline 284
"sensitive_data_policy": "registry_summary_only_no_participant_level_data", "official_urls": { "home": "https://clinicaltrials.gov/", - Network accessline 285
"official_urls": { "home": "https://clinicaltrials.gov/", "submit": "https://register.clinicaltrials.gov/", - Network accessline 286
"home": "https://clinicaltrials.gov/", - Network accessline 287
"submit": "https://register.clinicaltrials.gov/", - Network accessline 288
"requirements": "https://clinicaltrials.gov/submit-studies/prs-help/user-guide", - Network accessline 289
"accounts": "https://clinicaltrials.gov/submit-studies/prs-accounts" - Network accessline 312
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 313
"official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", "submit": "https://www.nihms.nih.gov/", - Network accessline 314
"home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 315
"submit": "https://www.nihms.nih.gov/", - Network accessline 316
"requirements": "https://pmc.ncbi.nlm.nih.gov/about/submission-methods/" - Network accessline 339
"sensitive_data_policy": "public_functional_genomics_no_controlled_human_data", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 340
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", "submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 341
"home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 342
"submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 343
"requirements": "https://www.ncbi.nlm.nih.gov/geo/info/seq.html" - Network accessline 366
"sensitive_data_policy": "public_only_with_explicit_consent_otherwise_route_dbgap", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 367
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", "submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 368
"home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 369
"submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 370
"requirements": "https://www.ncbi.nlm.nih.gov/sra/docs/submit/" - Network accessline 393
"sensitive_data_policy": "controlled_access_supported", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 394
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", "submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 395
"home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 396
"submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 397
"requirements": "https://www.ncbi.nlm.nih.gov/gap/docs/submissionguide/", - Network accessline 398
"sequence": "https://www.ncbi.nlm.nih.gov/sra/docs/submitdbgap/" - Network accessline 421
"sensitive_data_policy": "open_restricted_or_credentialed_after_phi_removal", "official_urls": { "home": "https://physionet.org/", - Network accessline 422
"official_urls": { "home": "https://physionet.org/", "submit": "https://physionet.org/projects/", - Network accessline 423
"home": "https://physionet.org/", - Network accessline 424
"submit": "https://physionet.org/projects/", - Network accessline 425
"requirements": "https://physionet.org/about/publish/" - Network accessline 449
"sensitive_data_policy": "public_only_no_identifiable_health_information", "official_urls": { "home": "https://openneuro.org/", - Network accessline 450
"official_urls": { "home": "https://openneuro.org/", "submit": "https://openneuro.org/", - Network accessline 451
"home": "https://openneuro.org/", - Network accessline 452
"submit": "https://openneuro.org/", - Network accessline 453
"requirements": "https://docs.openneuro.org/user_guide.html" - Network accessline 476
"sensitive_data_policy": "public_release_requires_clearance", "official_urls": { "home": "https://www.ebi.ac.uk/pride/", - Network accessline 477
"official_urls": { "home": "https://www.ebi.ac.uk/pride/", "submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 478
"home": "https://www.ebi.ac.uk/pride/", - Network accessline 479
"submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 480
"requirements": "https://www.ebi.ac.uk/training/online/courses/pride-quick-tour/submitting-data-to-pride/" - Network accessline 503
"sensitive_data_policy": "not_for_patient_level_data", "official_urls": { "home": "https://www.wwpdb.org/", - Network accessline 504
"official_urls": { "home": "https://www.wwpdb.org/", "submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 505
"home": "https://www.wwpdb.org/", - Network accessline 506
"submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 507
"requirements": "https://www.wwpdb.org/documentation/policy" - Network accessline 531
"sensitive_data_policy": "instance_policy_dependent", "official_urls": { "home": "https://dataverse.org/", - Network accessline 532
"official_urls": { "home": "https://dataverse.org/", "submit": "https://dataverse.harvard.edu/", - Network accessline 533
"home": "https://dataverse.org/", - Network accessline 534
"submit": "https://dataverse.harvard.edu/", - Network accessline 535
"requirements": "https://guides.dataverse.org/en/latest/user/dataset-management.html" - Network accessline 558
"sensitive_data_policy": "public_release_requires_location_clearance", "official_urls": { "home": "https://www.pangaea.de/", - Network accessline 559
"official_urls": { "home": "https://www.pangaea.de/", "submit": "https://www.pangaea.de/submit/", - Network accessline 560
"home": "https://www.pangaea.de/", - Network accessline 561
"submit": "https://www.pangaea.de/submit/", - Network accessline 562
"requirements": "https://www.pangaea.de/submit/" - Network accessline 583
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://fairsharing.org/", - Network accessline 584
"official_urls": { "home": "https://fairsharing.org/", "requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 585
"home": "https://fairsharing.org/", - Network accessline 586
"requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 607
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://www.re3data.org/", - Network accessline 608
"official_urls": { "home": "https://www.re3data.org/", "requirements": "https://www.re3data.org/faq" - Network accessline 609
"home": "https://www.re3data.org/", - Network accessline 610
"requirements": "https://www.re3data.org/faq"
dist/codex/skills/paper-spine/references/publication-cycle-contracts.md
- Network accessline 25
"id": "official-guide", "authority": "official", "url": "https://journal.example/guide-for-authors", - Network accessline 26
"authority": "official", "url": "https://journal.example/guide-for-authors", "checked_at": "2026-08-23" - Network accessline 27
"url": "https://journal.example/guide-for-authors", - Network accessline 31
"id": "recent-corpus", "authority": "published_corpus", "url": "https://journal.example/recent-articles", - Network accessline 32
"authority": "published_corpus", "url": "https://journal.example/recent-articles", "checked_at": "2026-08-23" - Network accessline 33
"url": "https://journal.example/recent-articles",
dist/codex/skills/paper-spine/references/update.md
- Network accessline 22
https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json
dist/codex/skills/paper-spine/references/upstream-review-protocols.md
dist/codex/skills/paper-spine/scripts/_paper_spine_utils.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/adaptive_shadow.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/artifact_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/asset_selection.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/author_voice_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/citation_bank_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/citation_quality_audit.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 38
ARXIV_RE = re.compile(r"\barxiv\s*:?\s*(\d{4}\.\d{4,5}(?:v\d+)?)\b", re.IGNORECASE) URL_RE = re.compile(r"https?://[^\s)\]]+", re.IGNORECASE) CROSSREF_URL = "https://api.crossref.org/works/" - Network accessline 39
URL_RE = re.compile(r"https?://[^\s)\]]+", re.IGNORECASE) CROSSREF_URL = "https://api.crossref.org/works/" SEMANTIC_SCHOLAR_URL = "https://api.semanticscholar.org/graph/v1/paper/DOI:" - Network accessline 40
CROSSREF_URL = "https://api.crossref.org/works/" - Network accessline 41
SEMANTIC_SCHOLAR_URL = "https://api.semanticscholar.org/graph/v1/paper/DOI:" - Network accessline 42
USER_AGENT = "PaperSpine/3.0 (citation-quality; https://github.com/WUBING2023/PaperSpine)"
dist/codex/skills/paper-spine/scripts/citation_verification_en.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 29
CROSSREF_QUERY_URL = "https://api.crossref.org/works" - Network accessline 185
Extracted as a module-level function so tests can mock it without touching ``urllib.request.urlopen`` internals. Returns the parsed - Network accessline 186
touching ``urllib.request.urlopen`` internals. Returns the parsed - Network accessline 189
req = urllib.request.Request(url, headers={"User-Agent": USER_AGENT}) - Network accessline 190
try: with urllib.request.urlopen(req, timeout=timeout) as resp: return json.loads(resp.read().decode("utf-8")) # type: ignore[no-any-return] - Network accessline 191
with urllib.request.urlopen(req, timeout=timeout) as resp: - Network accessline 460
doi_url = f"{CROSSREF_QUERY_URL}/{urllib.parse.quote(doi, safe='')}" data = fetch(doi_url) # type: ignore[call-arg] - Network accessline 461
data = fetch(doi_url) # type: ignore[call-arg] - Network accessline 514
f"{urllib.parse.urlencode({'query.bibliographic': bib_query[:200], 'rows': 3})}" ) data = fetch(bib_url) # type: ignore[call-arg] - Network accessline 516
data = fetch(bib_url) # type: ignore[call-arg]
dist/codex/skills/paper-spine/scripts/citation_verification_zh.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 24
USER_AGENT = "PaperSpine/3.0 (citation-zh; https://github.com/WUBING2023/PaperSpine)" - Network accessline 97
def verify_doi(doi: str) -> bool: try: req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) - Network accessline 98
try: req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) with urlopen(req, timeout=15) as resp: - Network accessline 99
req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) with urlopen(req, timeout=15) as resp: return resp.status == 200
dist/codex/skills/paper-spine/scripts/contribution_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/evidence_grounded_review.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/execution_receipt.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/figure_comparison.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/figure_reference_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/figure_story_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/humanize_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/intake_wizard.py
dist/codex/skills/paper-spine/scripts/integrity_audit.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/latex_guard.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/launch_paperspine_ui.ps1
- Executable scriptline 1
Executable file
dist/codex/skills/paper-spine/scripts/launch_paperspine_ui.sh
- Executable scriptline 1
#!/usr/bin/env bash
dist/codex/skills/paper-spine/scripts/manuscript_export.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/manuscript_refs.lua
- Executable scriptline 1
Executable file
dist/codex/skills/paper-spine/scripts/material_inventory.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/metadata_readiness_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/open_release.py
dist/codex/skills/paper-spine/scripts/paperspine5_web.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 29
[Credential-related source omitted] - Access to secretsline 200
[Credential-related source omitted] - Access to secretsline 201
[Credential-related source omitted] - Access to secretsline 411
[Credential-related source omitted] - Access to secretsline 516
[Credential-related source omitted]
dist/codex/skills/paper-spine/scripts/paperspine_methods.py
- Executable scriptline 1
Executable file
dist/codex/skills/paper-spine/scripts/paperspine_public_client.py
- Executable scriptline 1
Executable file - Access to secretsline 41
[Credential-related source omitted] - Access to secretsline 45
[Credential-related source omitted] - Access to secretsline 78
[Credential-related source omitted] - Access to secretsline 142
[Credential-related source omitted] - Network accessline 228
with urlopen(f'http://127.0.0.1:{port}/api/v1/session', timeout=2) as response: - Access to secretsline 335
[Credential-related source omitted] - Network accessline 382
kernel.close() raise RuntimeError('Product code changed during Web startup; retry this same profile after the update finishes.') _write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', - Network accessline 383
raise RuntimeError('Product code changed during Web startup; retry this same profile after the update finishes.') _write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', 'port': server.server_ - Network accessline 384
_write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', - Access to secretsline 533
[Credential-related source omitted] - Access to secretsline 562
[Credential-related source omitted] - Access to secretsline 655
[Credential-related source omitted]
dist/codex/skills/paper-spine/scripts/paperspine_stable_update.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 208
def fetch(source, target, limit=LIMIT): - Network accessline 230
scratch.mkdir(parents=True, exist_ok=True) downloaded = scratch / "source" fetch(source, downloaded) - Network accessline 231
downloaded = scratch / "source" fetch(source, downloaded) channel = None - Network accessline 232
fetch(source, downloaded) - Network accessline 235
channel = read(downloaded) bundle = select_bundle(channel) fetch(bundle_reference(source, bundle), scratch / "bundle.zip") - Network accessline 236
bundle = select_bundle(channel) fetch(bundle_reference(source, bundle), scratch / "bundle.zip") expected = bundle["sha256"] - Network accessline 237
fetch(bundle_reference(source, bundle), scratch / "bundle.zip") - Network accessline 254
with tempfile.TemporaryDirectory(prefix="paperspine-check-") as temporary: metadata = Path(temporary) / "channel.json" fetch(source, metadata, limit=2 * 1024 * 1024) - Network accessline 255
metadata = Path(temporary) / "channel.json" fetch(source, metadata, limit=2 * 1024 * 1024) if zipfile.is_zipfile(metadata): - Network accessline 256
fetch(source, metadata, limit=2 * 1024 * 1024) - Access to secretsline 455
[Credential-related source omitted] - Access to secretsline 628
[Credential-related source omitted]
dist/codex/skills/paper-spine/scripts/paperspine_update.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 26
DEFAULT_MANIFEST_URL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/dist/paperspine_version.json" - Network accessline 27
"https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/dist/paperspine_version.json" - Network accessline 28
) DEFAULT_STABLE_CHANNEL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" - Network accessline 29
DEFAULT_STABLE_CHANNEL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" ) - Network accessline 30
"https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" - Network accessline 33
DEFAULT_ARCHIVE_URL = "https://github.com/WUBING2023/PaperSpine/archive/refs/tags/v4.0.0.zip" - Access to secretsline 129
[Credential-related source omitted] - Network accessline 291
def load_manifest_from_url(url: str) -> dict[str, Any]: try: with urllib.request.urlopen(url, timeout=20) as response: - Network accessline 292
try: with urllib.request.urlopen(url, timeout=20) as response: body = response.read().decode("utf-8") - Network accessline 293
with urllib.request.urlopen(url, timeout=20) as response: - Network accessline 313
archive_path = temp_dir / "paperspine-update.zip" try: with urllib.request.urlopen(url, timeout=60) as response: - Network accessline 314
try: with urllib.request.urlopen(url, timeout=60) as response: archive_path.write_bytes(response.read()) - Network accessline 315
with urllib.request.urlopen(url, timeout=60) as response: - Access to secretsline 440
[Credential-related source omitted] - Access to secretsline 443
[Credential-related source omitted] - Access to secretsline 445
[Credential-related source omitted] - Access to secretsline 446
[Credential-related source omitted] - Access to secretsline 448
[Credential-related source omitted] - Access to secretsline 451
[Credential-related source omitted] - Access to secretsline 601
[Credential-related source omitted]
dist/codex/skills/paper-spine/scripts/preserve_figure_revision.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/progress_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/publication_cycle.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/publication_surface_check.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 269
def _docx(path: Path) -> list[_Text]: ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main", - Network accessline 270
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main", - Network accessline 271
"r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships"}
dist/codex/skills/paper-spine/scripts/reference_inventory.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/respond_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/results_validation_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/reviewer_audit_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/revision_audit.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/scientific_evidence_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/section_economy_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/skill_discovery_migration.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/structured_review.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/style_metrics.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/submission_check.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 65
A4_HEIGHT_TWIPS = "16838" DEFAULT_MARGIN_TWIPS = "1440" W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" - Network accessline 66
DEFAULT_MARGIN_TWIPS = "1440" W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" W = f"{{{W_NS}}}" - Network accessline 67
W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main"
dist/codex/skills/paper-spine/scripts/supplement_evidence_index.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/translate_guard.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 514
except (zipfile.BadZipFile, ElementTree.ParseError, OSError): return "" ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 515
return "" ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} paragraphs: list[str] = [] - Network accessline 516
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"}
dist/codex/skills/paper-spine/scripts/usage_ledger.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/visual_readiness_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/codex/skills/paper-spine/scripts/word_guard.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 172
W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" - Network accessline 173
A_NS = "http://schemas.openxmlformats.org/drawingml/2006/main" - Network accessline 174
WP_NS = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" - Network accessline 175
PIC_NS = "http://schemas.openxmlformats.org/drawingml/2006/picture" - Network accessline 176
R_NS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships" - Network accessline 177
PACKAGE_NS = "http://schemas.openxmlformats.org/package/2006/relationships" - Network accessline 481
def extract_text(document_xml: bytes) -> tuple[str, int]: root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 482
root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} paragraphs: list[str] = [] - Network accessline 483
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 506
root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 507
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 968
if root.getroottree().docinfo.doctype: raise ValueError("Word font repair does not accept DTD-bearing XML") mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" - Network accessline 969
raise ValueError("Word font repair does not accept DTD-bearing XML") mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" qname_lists = {f"{{{mc}}}{name}" for name in ( - Network accessline 970
mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" - Network accessline 1118
if anchor and not node.get("{http://schemas.openxmlformats.org/officeDocument/2006/relationships}id") and anchor.lower() != "_top" and anchor not in bookmarks:
dist/codex/skills/paper-spine/scripts/word_surface_repair.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/references/contracts/adaptive-shadow-request.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/adaptive-shadow-result.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/asset-selection-request.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/author-voice-profile.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/author-voice-receipt.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/author-voice-restoration.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/evidence-review.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/open-release-agent-ticket.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/open-release-confirmation.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/open-release-invocation.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/open-release-manifest.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/open-release-plan.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/open-release-platform-receipts.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/open-release-result.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/publication-cycle-invocation.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/publication-cycle-result.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/publication-target-profile.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/review-calibration.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/skill-discovery-migration-preview.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/skill-discovery-migration.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/submission-package-plan.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/contracts/supplement-evidence-index.schema.json
dist/hermes/skills/academic-writing/paper-spine/references/open-release-platforms.json
- Network accessline 30
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://github.com/", - Network accessline 31
"official_urls": { "home": "https://github.com/", "submit": "https://github.com/new", - Network accessline 32
"home": "https://github.com/", - Network accessline 33
"submit": "https://github.com/new", - Network accessline 34
"requirements": "https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-new-repository", - Network accessline 35
"authentication": "https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/about-authentication-to-github" - Network accessline 59
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://zenodo.org/", - Network accessline 60
"official_urls": { "home": "https://zenodo.org/", "submit": "https://zenodo.org/uploads/new", - Network accessline 61
"home": "https://zenodo.org/", - Network accessline 62
"submit": "https://zenodo.org/uploads/new", - Network accessline 63
"requirements": "https://help.zenodo.org/docs/get-started/quickstart/", - Network accessline 64
"api": "https://developers.zenodo.org/" - Network accessline 87
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://arxiv.org/", - Network accessline 88
"official_urls": { "home": "https://arxiv.org/", "submit": "https://arxiv.org/submit", - Network accessline 89
"home": "https://arxiv.org/", - Network accessline 90
"submit": "https://arxiv.org/submit", - Network accessline 91
"requirements": "https://info.arxiv.org/help/submit/index.html", - Network accessline 92
"endorsement": "https://info.arxiv.org/help/endorsement.html" - Network accessline 116
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://figshare.com/", - Network accessline 117
"official_urls": { "home": "https://figshare.com/", "submit": "https://figshare.com/account/home", - Network accessline 118
"home": "https://figshare.com/", - Network accessline 119
"submit": "https://figshare.com/account/home", - Network accessline 120
"requirements": "https://help.figshare.com/article/how-to-upload-and-publish-your-research", - Network accessline 121
"api": "https://info.figshare.com/user-guide/how-to-use-the-figshare-api/" - Network accessline 145
"sensitive_data_policy": "private_workspace_supported_but_public_release_requires_clearance", "official_urls": { "home": "https://osf.io/", - Network accessline 146
"official_urls": { "home": "https://osf.io/", "submit": "https://osf.io/", - Network accessline 147
"home": "https://osf.io/", - Network accessline 148
"submit": "https://osf.io/", - Network accessline 149
"requirements": "https://help.osf.io/article/387-files", - Network accessline 150
"api": "https://developer.osf.io/" - Network accessline 173
"sensitive_data_policy": "public_only_strict_human_deidentification", "official_urls": { "home": "https://datadryad.org/", - Network accessline 174
"official_urls": { "home": "https://datadryad.org/", "submit": "https://datadryad.org/stash/submissions/new", - Network accessline 175
"home": "https://datadryad.org/", - Network accessline 176
"submit": "https://datadryad.org/stash/submissions/new", - Network accessline 177
"requirements": "https://datadryad.org/help/submission_steps/description", - Network accessline 178
"human_data": "https://datadryad.org/docs/HumanSubjectsData.pdf" - Network accessline 202
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://huggingface.co/", - Network accessline 203
"official_urls": { "home": "https://huggingface.co/", "submit": "https://huggingface.co/new", - Network accessline 204
"home": "https://huggingface.co/", - Network accessline 205
"submit": "https://huggingface.co/new", - Network accessline 206
"requirements": "https://huggingface.co/docs/hub/repositories-getting-started" - Network accessline 230
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://www.protocols.io/", - Network accessline 231
"official_urls": { "home": "https://www.protocols.io/", "submit": "https://www.protocols.io/", - Network accessline 232
"home": "https://www.protocols.io/", - Network accessline 233
"submit": "https://www.protocols.io/", - Network accessline 234
"requirements": "https://apidoc.protocols.io/" - Network accessline 257
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://www.medrxiv.org/", - Network accessline 258
"official_urls": { "home": "https://www.medrxiv.org/", "submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 259
"home": "https://www.medrxiv.org/", - Network accessline 260
"submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 261
"requirements": "https://www.medrxiv.org/submit-a-manuscript" - Network accessline 284
"sensitive_data_policy": "registry_summary_only_no_participant_level_data", "official_urls": { "home": "https://clinicaltrials.gov/", - Network accessline 285
"official_urls": { "home": "https://clinicaltrials.gov/", "submit": "https://register.clinicaltrials.gov/", - Network accessline 286
"home": "https://clinicaltrials.gov/", - Network accessline 287
"submit": "https://register.clinicaltrials.gov/", - Network accessline 288
"requirements": "https://clinicaltrials.gov/submit-studies/prs-help/user-guide", - Network accessline 289
"accounts": "https://clinicaltrials.gov/submit-studies/prs-accounts" - Network accessline 312
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 313
"official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", "submit": "https://www.nihms.nih.gov/", - Network accessline 314
"home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 315
"submit": "https://www.nihms.nih.gov/", - Network accessline 316
"requirements": "https://pmc.ncbi.nlm.nih.gov/about/submission-methods/" - Network accessline 339
"sensitive_data_policy": "public_functional_genomics_no_controlled_human_data", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 340
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", "submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 341
"home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 342
"submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 343
"requirements": "https://www.ncbi.nlm.nih.gov/geo/info/seq.html" - Network accessline 366
"sensitive_data_policy": "public_only_with_explicit_consent_otherwise_route_dbgap", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 367
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", "submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 368
"home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 369
"submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 370
"requirements": "https://www.ncbi.nlm.nih.gov/sra/docs/submit/" - Network accessline 393
"sensitive_data_policy": "controlled_access_supported", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 394
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", "submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 395
"home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 396
"submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 397
"requirements": "https://www.ncbi.nlm.nih.gov/gap/docs/submissionguide/", - Network accessline 398
"sequence": "https://www.ncbi.nlm.nih.gov/sra/docs/submitdbgap/" - Network accessline 421
"sensitive_data_policy": "open_restricted_or_credentialed_after_phi_removal", "official_urls": { "home": "https://physionet.org/", - Network accessline 422
"official_urls": { "home": "https://physionet.org/", "submit": "https://physionet.org/projects/", - Network accessline 423
"home": "https://physionet.org/", - Network accessline 424
"submit": "https://physionet.org/projects/", - Network accessline 425
"requirements": "https://physionet.org/about/publish/" - Network accessline 449
"sensitive_data_policy": "public_only_no_identifiable_health_information", "official_urls": { "home": "https://openneuro.org/", - Network accessline 450
"official_urls": { "home": "https://openneuro.org/", "submit": "https://openneuro.org/", - Network accessline 451
"home": "https://openneuro.org/", - Network accessline 452
"submit": "https://openneuro.org/", - Network accessline 453
"requirements": "https://docs.openneuro.org/user_guide.html" - Network accessline 476
"sensitive_data_policy": "public_release_requires_clearance", "official_urls": { "home": "https://www.ebi.ac.uk/pride/", - Network accessline 477
"official_urls": { "home": "https://www.ebi.ac.uk/pride/", "submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 478
"home": "https://www.ebi.ac.uk/pride/", - Network accessline 479
"submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 480
"requirements": "https://www.ebi.ac.uk/training/online/courses/pride-quick-tour/submitting-data-to-pride/" - Network accessline 503
"sensitive_data_policy": "not_for_patient_level_data", "official_urls": { "home": "https://www.wwpdb.org/", - Network accessline 504
"official_urls": { "home": "https://www.wwpdb.org/", "submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 505
"home": "https://www.wwpdb.org/", - Network accessline 506
"submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 507
"requirements": "https://www.wwpdb.org/documentation/policy" - Network accessline 531
"sensitive_data_policy": "instance_policy_dependent", "official_urls": { "home": "https://dataverse.org/", - Network accessline 532
"official_urls": { "home": "https://dataverse.org/", "submit": "https://dataverse.harvard.edu/", - Network accessline 533
"home": "https://dataverse.org/", - Network accessline 534
"submit": "https://dataverse.harvard.edu/", - Network accessline 535
"requirements": "https://guides.dataverse.org/en/latest/user/dataset-management.html" - Network accessline 558
"sensitive_data_policy": "public_release_requires_location_clearance", "official_urls": { "home": "https://www.pangaea.de/", - Network accessline 559
"official_urls": { "home": "https://www.pangaea.de/", "submit": "https://www.pangaea.de/submit/", - Network accessline 560
"home": "https://www.pangaea.de/", - Network accessline 561
"submit": "https://www.pangaea.de/submit/", - Network accessline 562
"requirements": "https://www.pangaea.de/submit/" - Network accessline 583
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://fairsharing.org/", - Network accessline 584
"official_urls": { "home": "https://fairsharing.org/", "requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 585
"home": "https://fairsharing.org/", - Network accessline 586
"requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 607
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://www.re3data.org/", - Network accessline 608
"official_urls": { "home": "https://www.re3data.org/", "requirements": "https://www.re3data.org/faq" - Network accessline 609
"home": "https://www.re3data.org/", - Network accessline 610
"requirements": "https://www.re3data.org/faq"
dist/hermes/skills/academic-writing/paper-spine/references/publication-cycle-contracts.md
- Network accessline 25
"id": "official-guide", "authority": "official", "url": "https://journal.example/guide-for-authors", - Network accessline 26
"authority": "official", "url": "https://journal.example/guide-for-authors", "checked_at": "2026-08-23" - Network accessline 27
"url": "https://journal.example/guide-for-authors", - Network accessline 31
"id": "recent-corpus", "authority": "published_corpus", "url": "https://journal.example/recent-articles", - Network accessline 32
"authority": "published_corpus", "url": "https://journal.example/recent-articles", "checked_at": "2026-08-23" - Network accessline 33
"url": "https://journal.example/recent-articles",
dist/hermes/skills/academic-writing/paper-spine/references/update.md
- Network accessline 22
https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json
dist/hermes/skills/academic-writing/paper-spine/references/upstream-review-protocols.md
dist/hermes/skills/academic-writing/paper-spine/scripts/_paper_spine_utils.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/adaptive_shadow.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/artifact_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/asset_selection.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/author_voice_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/citation_bank_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/citation_quality_audit.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 38
ARXIV_RE = re.compile(r"\barxiv\s*:?\s*(\d{4}\.\d{4,5}(?:v\d+)?)\b", re.IGNORECASE) URL_RE = re.compile(r"https?://[^\s)\]]+", re.IGNORECASE) CROSSREF_URL = "https://api.crossref.org/works/" - Network accessline 39
URL_RE = re.compile(r"https?://[^\s)\]]+", re.IGNORECASE) CROSSREF_URL = "https://api.crossref.org/works/" SEMANTIC_SCHOLAR_URL = "https://api.semanticscholar.org/graph/v1/paper/DOI:" - Network accessline 40
CROSSREF_URL = "https://api.crossref.org/works/" - Network accessline 41
SEMANTIC_SCHOLAR_URL = "https://api.semanticscholar.org/graph/v1/paper/DOI:" - Network accessline 42
USER_AGENT = "PaperSpine/3.0 (citation-quality; https://github.com/WUBING2023/PaperSpine)"
dist/hermes/skills/academic-writing/paper-spine/scripts/citation_verification_en.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 29
CROSSREF_QUERY_URL = "https://api.crossref.org/works" - Network accessline 185
Extracted as a module-level function so tests can mock it without touching ``urllib.request.urlopen`` internals. Returns the parsed - Network accessline 186
touching ``urllib.request.urlopen`` internals. Returns the parsed - Network accessline 189
req = urllib.request.Request(url, headers={"User-Agent": USER_AGENT}) - Network accessline 190
try: with urllib.request.urlopen(req, timeout=timeout) as resp: return json.loads(resp.read().decode("utf-8")) # type: ignore[no-any-return] - Network accessline 191
with urllib.request.urlopen(req, timeout=timeout) as resp: - Network accessline 460
doi_url = f"{CROSSREF_QUERY_URL}/{urllib.parse.quote(doi, safe='')}" data = fetch(doi_url) # type: ignore[call-arg] - Network accessline 461
data = fetch(doi_url) # type: ignore[call-arg] - Network accessline 514
f"{urllib.parse.urlencode({'query.bibliographic': bib_query[:200], 'rows': 3})}" ) data = fetch(bib_url) # type: ignore[call-arg] - Network accessline 516
data = fetch(bib_url) # type: ignore[call-arg]
dist/hermes/skills/academic-writing/paper-spine/scripts/citation_verification_zh.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 24
USER_AGENT = "PaperSpine/3.0 (citation-zh; https://github.com/WUBING2023/PaperSpine)" - Network accessline 97
def verify_doi(doi: str) -> bool: try: req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) - Network accessline 98
try: req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) with urlopen(req, timeout=15) as resp: - Network accessline 99
req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) with urlopen(req, timeout=15) as resp: return resp.status == 200
dist/hermes/skills/academic-writing/paper-spine/scripts/contribution_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/evidence_grounded_review.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/execution_receipt.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/figure_comparison.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/figure_reference_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/figure_story_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/humanize_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/intake_wizard.py
dist/hermes/skills/academic-writing/paper-spine/scripts/integrity_audit.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/latex_guard.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/launch_paperspine_ui.ps1
- Executable scriptline 1
Executable file
dist/hermes/skills/academic-writing/paper-spine/scripts/launch_paperspine_ui.sh
- Executable scriptline 1
#!/usr/bin/env bash
dist/hermes/skills/academic-writing/paper-spine/scripts/manuscript_export.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/manuscript_refs.lua
- Executable scriptline 1
Executable file
dist/hermes/skills/academic-writing/paper-spine/scripts/material_inventory.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/metadata_readiness_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/open_release.py
dist/hermes/skills/academic-writing/paper-spine/scripts/paperspine5_web.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 29
[Credential-related source omitted] - Access to secretsline 200
[Credential-related source omitted] - Access to secretsline 201
[Credential-related source omitted] - Access to secretsline 411
[Credential-related source omitted] - Access to secretsline 516
[Credential-related source omitted]
dist/hermes/skills/academic-writing/paper-spine/scripts/paperspine_methods.py
- Executable scriptline 1
Executable file
dist/hermes/skills/academic-writing/paper-spine/scripts/paperspine_public_client.py
- Executable scriptline 1
Executable file - Access to secretsline 41
[Credential-related source omitted] - Access to secretsline 45
[Credential-related source omitted] - Access to secretsline 78
[Credential-related source omitted] - Access to secretsline 142
[Credential-related source omitted] - Network accessline 228
with urlopen(f'http://127.0.0.1:{port}/api/v1/session', timeout=2) as response: - Access to secretsline 335
[Credential-related source omitted] - Network accessline 382
kernel.close() raise RuntimeError('Product code changed during Web startup; retry this same profile after the update finishes.') _write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', - Network accessline 383
raise RuntimeError('Product code changed during Web startup; retry this same profile after the update finishes.') _write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', 'port': server.server_ - Network accessline 384
_write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', - Access to secretsline 533
[Credential-related source omitted] - Access to secretsline 562
[Credential-related source omitted] - Access to secretsline 655
[Credential-related source omitted]
dist/hermes/skills/academic-writing/paper-spine/scripts/paperspine_stable_update.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 208
def fetch(source, target, limit=LIMIT): - Network accessline 230
scratch.mkdir(parents=True, exist_ok=True) downloaded = scratch / "source" fetch(source, downloaded) - Network accessline 231
downloaded = scratch / "source" fetch(source, downloaded) channel = None - Network accessline 232
fetch(source, downloaded) - Network accessline 235
channel = read(downloaded) bundle = select_bundle(channel) fetch(bundle_reference(source, bundle), scratch / "bundle.zip") - Network accessline 236
bundle = select_bundle(channel) fetch(bundle_reference(source, bundle), scratch / "bundle.zip") expected = bundle["sha256"] - Network accessline 237
fetch(bundle_reference(source, bundle), scratch / "bundle.zip") - Network accessline 254
with tempfile.TemporaryDirectory(prefix="paperspine-check-") as temporary: metadata = Path(temporary) / "channel.json" fetch(source, metadata, limit=2 * 1024 * 1024) - Network accessline 255
metadata = Path(temporary) / "channel.json" fetch(source, metadata, limit=2 * 1024 * 1024) if zipfile.is_zipfile(metadata): - Network accessline 256
fetch(source, metadata, limit=2 * 1024 * 1024) - Access to secretsline 455
[Credential-related source omitted] - Access to secretsline 628
[Credential-related source omitted]
dist/hermes/skills/academic-writing/paper-spine/scripts/paperspine_update.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 26
DEFAULT_MANIFEST_URL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/dist/paperspine_version.json" - Network accessline 27
"https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/dist/paperspine_version.json" - Network accessline 28
) DEFAULT_STABLE_CHANNEL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" - Network accessline 29
DEFAULT_STABLE_CHANNEL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" ) - Network accessline 30
"https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" - Network accessline 33
DEFAULT_ARCHIVE_URL = "https://github.com/WUBING2023/PaperSpine/archive/refs/tags/v4.0.0.zip" - Access to secretsline 129
[Credential-related source omitted] - Network accessline 291
def load_manifest_from_url(url: str) -> dict[str, Any]: try: with urllib.request.urlopen(url, timeout=20) as response: - Network accessline 292
try: with urllib.request.urlopen(url, timeout=20) as response: body = response.read().decode("utf-8") - Network accessline 293
with urllib.request.urlopen(url, timeout=20) as response: - Network accessline 313
archive_path = temp_dir / "paperspine-update.zip" try: with urllib.request.urlopen(url, timeout=60) as response: - Network accessline 314
try: with urllib.request.urlopen(url, timeout=60) as response: archive_path.write_bytes(response.read()) - Network accessline 315
with urllib.request.urlopen(url, timeout=60) as response: - Access to secretsline 440
[Credential-related source omitted] - Access to secretsline 443
[Credential-related source omitted] - Access to secretsline 445
[Credential-related source omitted] - Access to secretsline 446
[Credential-related source omitted] - Access to secretsline 448
[Credential-related source omitted] - Access to secretsline 451
[Credential-related source omitted] - Access to secretsline 601
[Credential-related source omitted]
dist/hermes/skills/academic-writing/paper-spine/scripts/preserve_figure_revision.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/progress_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/publication_cycle.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/publication_surface_check.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 269
def _docx(path: Path) -> list[_Text]: ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main", - Network accessline 270
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main", - Network accessline 271
"r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships"}
dist/hermes/skills/academic-writing/paper-spine/scripts/reference_inventory.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/respond_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/results_validation_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/reviewer_audit_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/revision_audit.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/scientific_evidence_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/section_economy_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/skill_discovery_migration.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/structured_review.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/style_metrics.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/submission_check.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 65
A4_HEIGHT_TWIPS = "16838" DEFAULT_MARGIN_TWIPS = "1440" W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" - Network accessline 66
DEFAULT_MARGIN_TWIPS = "1440" W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" W = f"{{{W_NS}}}" - Network accessline 67
W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main"
dist/hermes/skills/academic-writing/paper-spine/scripts/supplement_evidence_index.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/translate_guard.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 514
except (zipfile.BadZipFile, ElementTree.ParseError, OSError): return "" ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 515
return "" ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} paragraphs: list[str] = [] - Network accessline 516
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"}
dist/hermes/skills/academic-writing/paper-spine/scripts/usage_ledger.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/visual_readiness_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/hermes/skills/academic-writing/paper-spine/scripts/word_guard.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 172
W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" - Network accessline 173
A_NS = "http://schemas.openxmlformats.org/drawingml/2006/main" - Network accessline 174
WP_NS = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" - Network accessline 175
PIC_NS = "http://schemas.openxmlformats.org/drawingml/2006/picture" - Network accessline 176
R_NS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships" - Network accessline 177
PACKAGE_NS = "http://schemas.openxmlformats.org/package/2006/relationships" - Network accessline 481
def extract_text(document_xml: bytes) -> tuple[str, int]: root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 482
root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} paragraphs: list[str] = [] - Network accessline 483
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 506
root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 507
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 968
if root.getroottree().docinfo.doctype: raise ValueError("Word font repair does not accept DTD-bearing XML") mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" - Network accessline 969
raise ValueError("Word font repair does not accept DTD-bearing XML") mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" qname_lists = {f"{{{mc}}}{name}" for name in ( - Network accessline 970
mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" - Network accessline 1118
if anchor and not node.get("{http://schemas.openxmlformats.org/officeDocument/2006/relationships}id") and anchor.lower() != "_top" and anchor not in bookmarks:
dist/hermes/skills/academic-writing/paper-spine/scripts/word_surface_repair.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/references/contracts/adaptive-shadow-request.schema.json
dist/openclaw/skills/paper-spine/references/contracts/adaptive-shadow-result.schema.json
dist/openclaw/skills/paper-spine/references/contracts/asset-selection-request.schema.json
dist/openclaw/skills/paper-spine/references/contracts/author-voice-profile.schema.json
dist/openclaw/skills/paper-spine/references/contracts/author-voice-receipt.schema.json
dist/openclaw/skills/paper-spine/references/contracts/author-voice-restoration.schema.json
dist/openclaw/skills/paper-spine/references/contracts/evidence-review.schema.json
dist/openclaw/skills/paper-spine/references/contracts/open-release-agent-ticket.schema.json
dist/openclaw/skills/paper-spine/references/contracts/open-release-confirmation.schema.json
dist/openclaw/skills/paper-spine/references/contracts/open-release-invocation.schema.json
dist/openclaw/skills/paper-spine/references/contracts/open-release-manifest.schema.json
dist/openclaw/skills/paper-spine/references/contracts/open-release-plan.schema.json
dist/openclaw/skills/paper-spine/references/contracts/open-release-platform-receipts.schema.json
dist/openclaw/skills/paper-spine/references/contracts/open-release-result.schema.json
dist/openclaw/skills/paper-spine/references/contracts/publication-cycle-invocation.schema.json
dist/openclaw/skills/paper-spine/references/contracts/publication-cycle-result.schema.json
dist/openclaw/skills/paper-spine/references/contracts/publication-target-profile.schema.json
dist/openclaw/skills/paper-spine/references/contracts/review-calibration.schema.json
dist/openclaw/skills/paper-spine/references/contracts/skill-discovery-migration-preview.schema.json
dist/openclaw/skills/paper-spine/references/contracts/skill-discovery-migration.schema.json
dist/openclaw/skills/paper-spine/references/contracts/submission-package-plan.schema.json
dist/openclaw/skills/paper-spine/references/contracts/supplement-evidence-index.schema.json
dist/openclaw/skills/paper-spine/references/open-release-platforms.json
- Network accessline 30
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://github.com/", - Network accessline 31
"official_urls": { "home": "https://github.com/", "submit": "https://github.com/new", - Network accessline 32
"home": "https://github.com/", - Network accessline 33
"submit": "https://github.com/new", - Network accessline 34
"requirements": "https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-new-repository", - Network accessline 35
"authentication": "https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/about-authentication-to-github" - Network accessline 59
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://zenodo.org/", - Network accessline 60
"official_urls": { "home": "https://zenodo.org/", "submit": "https://zenodo.org/uploads/new", - Network accessline 61
"home": "https://zenodo.org/", - Network accessline 62
"submit": "https://zenodo.org/uploads/new", - Network accessline 63
"requirements": "https://help.zenodo.org/docs/get-started/quickstart/", - Network accessline 64
"api": "https://developers.zenodo.org/" - Network accessline 87
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://arxiv.org/", - Network accessline 88
"official_urls": { "home": "https://arxiv.org/", "submit": "https://arxiv.org/submit", - Network accessline 89
"home": "https://arxiv.org/", - Network accessline 90
"submit": "https://arxiv.org/submit", - Network accessline 91
"requirements": "https://info.arxiv.org/help/submit/index.html", - Network accessline 92
"endorsement": "https://info.arxiv.org/help/endorsement.html" - Network accessline 116
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://figshare.com/", - Network accessline 117
"official_urls": { "home": "https://figshare.com/", "submit": "https://figshare.com/account/home", - Network accessline 118
"home": "https://figshare.com/", - Network accessline 119
"submit": "https://figshare.com/account/home", - Network accessline 120
"requirements": "https://help.figshare.com/article/how-to-upload-and-publish-your-research", - Network accessline 121
"api": "https://info.figshare.com/user-guide/how-to-use-the-figshare-api/" - Network accessline 145
"sensitive_data_policy": "private_workspace_supported_but_public_release_requires_clearance", "official_urls": { "home": "https://osf.io/", - Network accessline 146
"official_urls": { "home": "https://osf.io/", "submit": "https://osf.io/", - Network accessline 147
"home": "https://osf.io/", - Network accessline 148
"submit": "https://osf.io/", - Network accessline 149
"requirements": "https://help.osf.io/article/387-files", - Network accessline 150
"api": "https://developer.osf.io/" - Network accessline 173
"sensitive_data_policy": "public_only_strict_human_deidentification", "official_urls": { "home": "https://datadryad.org/", - Network accessline 174
"official_urls": { "home": "https://datadryad.org/", "submit": "https://datadryad.org/stash/submissions/new", - Network accessline 175
"home": "https://datadryad.org/", - Network accessline 176
"submit": "https://datadryad.org/stash/submissions/new", - Network accessline 177
"requirements": "https://datadryad.org/help/submission_steps/description", - Network accessline 178
"human_data": "https://datadryad.org/docs/HumanSubjectsData.pdf" - Network accessline 202
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://huggingface.co/", - Network accessline 203
"official_urls": { "home": "https://huggingface.co/", "submit": "https://huggingface.co/new", - Network accessline 204
"home": "https://huggingface.co/", - Network accessline 205
"submit": "https://huggingface.co/new", - Network accessline 206
"requirements": "https://huggingface.co/docs/hub/repositories-getting-started" - Network accessline 230
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://www.protocols.io/", - Network accessline 231
"official_urls": { "home": "https://www.protocols.io/", "submit": "https://www.protocols.io/", - Network accessline 232
"home": "https://www.protocols.io/", - Network accessline 233
"submit": "https://www.protocols.io/", - Network accessline 234
"requirements": "https://apidoc.protocols.io/" - Network accessline 257
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://www.medrxiv.org/", - Network accessline 258
"official_urls": { "home": "https://www.medrxiv.org/", "submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 259
"home": "https://www.medrxiv.org/", - Network accessline 260
"submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 261
"requirements": "https://www.medrxiv.org/submit-a-manuscript" - Network accessline 284
"sensitive_data_policy": "registry_summary_only_no_participant_level_data", "official_urls": { "home": "https://clinicaltrials.gov/", - Network accessline 285
"official_urls": { "home": "https://clinicaltrials.gov/", "submit": "https://register.clinicaltrials.gov/", - Network accessline 286
"home": "https://clinicaltrials.gov/", - Network accessline 287
"submit": "https://register.clinicaltrials.gov/", - Network accessline 288
"requirements": "https://clinicaltrials.gov/submit-studies/prs-help/user-guide", - Network accessline 289
"accounts": "https://clinicaltrials.gov/submit-studies/prs-accounts" - Network accessline 312
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 313
"official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", "submit": "https://www.nihms.nih.gov/", - Network accessline 314
"home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 315
"submit": "https://www.nihms.nih.gov/", - Network accessline 316
"requirements": "https://pmc.ncbi.nlm.nih.gov/about/submission-methods/" - Network accessline 339
"sensitive_data_policy": "public_functional_genomics_no_controlled_human_data", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 340
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", "submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 341
"home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 342
"submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 343
"requirements": "https://www.ncbi.nlm.nih.gov/geo/info/seq.html" - Network accessline 366
"sensitive_data_policy": "public_only_with_explicit_consent_otherwise_route_dbgap", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 367
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", "submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 368
"home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 369
"submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 370
"requirements": "https://www.ncbi.nlm.nih.gov/sra/docs/submit/" - Network accessline 393
"sensitive_data_policy": "controlled_access_supported", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 394
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", "submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 395
"home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 396
"submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 397
"requirements": "https://www.ncbi.nlm.nih.gov/gap/docs/submissionguide/", - Network accessline 398
"sequence": "https://www.ncbi.nlm.nih.gov/sra/docs/submitdbgap/" - Network accessline 421
"sensitive_data_policy": "open_restricted_or_credentialed_after_phi_removal", "official_urls": { "home": "https://physionet.org/", - Network accessline 422
"official_urls": { "home": "https://physionet.org/", "submit": "https://physionet.org/projects/", - Network accessline 423
"home": "https://physionet.org/", - Network accessline 424
"submit": "https://physionet.org/projects/", - Network accessline 425
"requirements": "https://physionet.org/about/publish/" - Network accessline 449
"sensitive_data_policy": "public_only_no_identifiable_health_information", "official_urls": { "home": "https://openneuro.org/", - Network accessline 450
"official_urls": { "home": "https://openneuro.org/", "submit": "https://openneuro.org/", - Network accessline 451
"home": "https://openneuro.org/", - Network accessline 452
"submit": "https://openneuro.org/", - Network accessline 453
"requirements": "https://docs.openneuro.org/user_guide.html" - Network accessline 476
"sensitive_data_policy": "public_release_requires_clearance", "official_urls": { "home": "https://www.ebi.ac.uk/pride/", - Network accessline 477
"official_urls": { "home": "https://www.ebi.ac.uk/pride/", "submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 478
"home": "https://www.ebi.ac.uk/pride/", - Network accessline 479
"submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 480
"requirements": "https://www.ebi.ac.uk/training/online/courses/pride-quick-tour/submitting-data-to-pride/" - Network accessline 503
"sensitive_data_policy": "not_for_patient_level_data", "official_urls": { "home": "https://www.wwpdb.org/", - Network accessline 504
"official_urls": { "home": "https://www.wwpdb.org/", "submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 505
"home": "https://www.wwpdb.org/", - Network accessline 506
"submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 507
"requirements": "https://www.wwpdb.org/documentation/policy" - Network accessline 531
"sensitive_data_policy": "instance_policy_dependent", "official_urls": { "home": "https://dataverse.org/", - Network accessline 532
"official_urls": { "home": "https://dataverse.org/", "submit": "https://dataverse.harvard.edu/", - Network accessline 533
"home": "https://dataverse.org/", - Network accessline 534
"submit": "https://dataverse.harvard.edu/", - Network accessline 535
"requirements": "https://guides.dataverse.org/en/latest/user/dataset-management.html" - Network accessline 558
"sensitive_data_policy": "public_release_requires_location_clearance", "official_urls": { "home": "https://www.pangaea.de/", - Network accessline 559
"official_urls": { "home": "https://www.pangaea.de/", "submit": "https://www.pangaea.de/submit/", - Network accessline 560
"home": "https://www.pangaea.de/", - Network accessline 561
"submit": "https://www.pangaea.de/submit/", - Network accessline 562
"requirements": "https://www.pangaea.de/submit/" - Network accessline 583
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://fairsharing.org/", - Network accessline 584
"official_urls": { "home": "https://fairsharing.org/", "requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 585
"home": "https://fairsharing.org/", - Network accessline 586
"requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 607
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://www.re3data.org/", - Network accessline 608
"official_urls": { "home": "https://www.re3data.org/", "requirements": "https://www.re3data.org/faq" - Network accessline 609
"home": "https://www.re3data.org/", - Network accessline 610
"requirements": "https://www.re3data.org/faq"
dist/openclaw/skills/paper-spine/references/publication-cycle-contracts.md
- Network accessline 25
"id": "official-guide", "authority": "official", "url": "https://journal.example/guide-for-authors", - Network accessline 26
"authority": "official", "url": "https://journal.example/guide-for-authors", "checked_at": "2026-08-23" - Network accessline 27
"url": "https://journal.example/guide-for-authors", - Network accessline 31
"id": "recent-corpus", "authority": "published_corpus", "url": "https://journal.example/recent-articles", - Network accessline 32
"authority": "published_corpus", "url": "https://journal.example/recent-articles", "checked_at": "2026-08-23" - Network accessline 33
"url": "https://journal.example/recent-articles",
dist/openclaw/skills/paper-spine/references/update.md
- Network accessline 22
https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json
dist/openclaw/skills/paper-spine/references/upstream-review-protocols.md
dist/openclaw/skills/paper-spine/scripts/_paper_spine_utils.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/adaptive_shadow.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/artifact_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/asset_selection.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/author_voice_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/citation_bank_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/citation_quality_audit.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 38
ARXIV_RE = re.compile(r"\barxiv\s*:?\s*(\d{4}\.\d{4,5}(?:v\d+)?)\b", re.IGNORECASE) URL_RE = re.compile(r"https?://[^\s)\]]+", re.IGNORECASE) CROSSREF_URL = "https://api.crossref.org/works/" - Network accessline 39
URL_RE = re.compile(r"https?://[^\s)\]]+", re.IGNORECASE) CROSSREF_URL = "https://api.crossref.org/works/" SEMANTIC_SCHOLAR_URL = "https://api.semanticscholar.org/graph/v1/paper/DOI:" - Network accessline 40
CROSSREF_URL = "https://api.crossref.org/works/" - Network accessline 41
SEMANTIC_SCHOLAR_URL = "https://api.semanticscholar.org/graph/v1/paper/DOI:" - Network accessline 42
USER_AGENT = "PaperSpine/3.0 (citation-quality; https://github.com/WUBING2023/PaperSpine)"
dist/openclaw/skills/paper-spine/scripts/citation_verification_en.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 29
CROSSREF_QUERY_URL = "https://api.crossref.org/works" - Network accessline 185
Extracted as a module-level function so tests can mock it without touching ``urllib.request.urlopen`` internals. Returns the parsed - Network accessline 186
touching ``urllib.request.urlopen`` internals. Returns the parsed - Network accessline 189
req = urllib.request.Request(url, headers={"User-Agent": USER_AGENT}) - Network accessline 190
try: with urllib.request.urlopen(req, timeout=timeout) as resp: return json.loads(resp.read().decode("utf-8")) # type: ignore[no-any-return] - Network accessline 191
with urllib.request.urlopen(req, timeout=timeout) as resp: - Network accessline 460
doi_url = f"{CROSSREF_QUERY_URL}/{urllib.parse.quote(doi, safe='')}" data = fetch(doi_url) # type: ignore[call-arg] - Network accessline 461
data = fetch(doi_url) # type: ignore[call-arg] - Network accessline 514
f"{urllib.parse.urlencode({'query.bibliographic': bib_query[:200], 'rows': 3})}" ) data = fetch(bib_url) # type: ignore[call-arg] - Network accessline 516
data = fetch(bib_url) # type: ignore[call-arg]
dist/openclaw/skills/paper-spine/scripts/citation_verification_zh.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 24
USER_AGENT = "PaperSpine/3.0 (citation-zh; https://github.com/WUBING2023/PaperSpine)" - Network accessline 97
def verify_doi(doi: str) -> bool: try: req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) - Network accessline 98
try: req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) with urlopen(req, timeout=15) as resp: - Network accessline 99
req = Request(f"https://api.crossref.org/works/{doi}", headers={"User-Agent": USER_AGENT}) with urlopen(req, timeout=15) as resp: return resp.status == 200
dist/openclaw/skills/paper-spine/scripts/contribution_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/evidence_grounded_review.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/execution_receipt.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/figure_comparison.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/figure_reference_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/figure_story_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/humanize_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/intake_wizard.py
dist/openclaw/skills/paper-spine/scripts/integrity_audit.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/latex_guard.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/launch_paperspine_ui.ps1
- Executable scriptline 1
Executable file
dist/openclaw/skills/paper-spine/scripts/launch_paperspine_ui.sh
- Executable scriptline 1
#!/usr/bin/env bash
dist/openclaw/skills/paper-spine/scripts/manuscript_export.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/manuscript_refs.lua
- Executable scriptline 1
Executable file
dist/openclaw/skills/paper-spine/scripts/material_inventory.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/metadata_readiness_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/open_release.py
dist/openclaw/skills/paper-spine/scripts/paperspine5_web.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 29
[Credential-related source omitted] - Access to secretsline 200
[Credential-related source omitted] - Access to secretsline 201
[Credential-related source omitted] - Access to secretsline 411
[Credential-related source omitted] - Access to secretsline 516
[Credential-related source omitted]
dist/openclaw/skills/paper-spine/scripts/paperspine_methods.py
- Executable scriptline 1
Executable file
dist/openclaw/skills/paper-spine/scripts/paperspine_public_client.py
- Executable scriptline 1
Executable file - Access to secretsline 41
[Credential-related source omitted] - Access to secretsline 45
[Credential-related source omitted] - Access to secretsline 78
[Credential-related source omitted] - Access to secretsline 142
[Credential-related source omitted] - Network accessline 228
with urlopen(f'http://127.0.0.1:{port}/api/v1/session', timeout=2) as response: - Access to secretsline 335
[Credential-related source omitted] - Network accessline 382
kernel.close() raise RuntimeError('Product code changed during Web startup; retry this same profile after the update finishes.') _write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', - Network accessline 383
raise RuntimeError('Product code changed during Web startup; retry this same profile after the update finishes.') _write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', 'port': server.server_ - Network accessline 384
_write_json(Path(job['ready_file']), {'address': f'http://127.0.0.1:{server.server_port}/', - Access to secretsline 533
[Credential-related source omitted] - Access to secretsline 562
[Credential-related source omitted] - Access to secretsline 655
[Credential-related source omitted]
dist/openclaw/skills/paper-spine/scripts/paperspine_stable_update.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 208
def fetch(source, target, limit=LIMIT): - Network accessline 230
scratch.mkdir(parents=True, exist_ok=True) downloaded = scratch / "source" fetch(source, downloaded) - Network accessline 231
downloaded = scratch / "source" fetch(source, downloaded) channel = None - Network accessline 232
fetch(source, downloaded) - Network accessline 235
channel = read(downloaded) bundle = select_bundle(channel) fetch(bundle_reference(source, bundle), scratch / "bundle.zip") - Network accessline 236
bundle = select_bundle(channel) fetch(bundle_reference(source, bundle), scratch / "bundle.zip") expected = bundle["sha256"] - Network accessline 237
fetch(bundle_reference(source, bundle), scratch / "bundle.zip") - Network accessline 254
with tempfile.TemporaryDirectory(prefix="paperspine-check-") as temporary: metadata = Path(temporary) / "channel.json" fetch(source, metadata, limit=2 * 1024 * 1024) - Network accessline 255
metadata = Path(temporary) / "channel.json" fetch(source, metadata, limit=2 * 1024 * 1024) if zipfile.is_zipfile(metadata): - Network accessline 256
fetch(source, metadata, limit=2 * 1024 * 1024) - Access to secretsline 455
[Credential-related source omitted] - Access to secretsline 628
[Credential-related source omitted]
dist/openclaw/skills/paper-spine/scripts/paperspine_update.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 26
DEFAULT_MANIFEST_URL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/dist/paperspine_version.json" - Network accessline 27
"https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/dist/paperspine_version.json" - Network accessline 28
) DEFAULT_STABLE_CHANNEL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" - Network accessline 29
DEFAULT_STABLE_CHANNEL = ( "https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" ) - Network accessline 30
"https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json" - Network accessline 33
DEFAULT_ARCHIVE_URL = "https://github.com/WUBING2023/PaperSpine/archive/refs/tags/v4.0.0.zip" - Access to secretsline 129
[Credential-related source omitted] - Network accessline 291
def load_manifest_from_url(url: str) -> dict[str, Any]: try: with urllib.request.urlopen(url, timeout=20) as response: - Network accessline 292
try: with urllib.request.urlopen(url, timeout=20) as response: body = response.read().decode("utf-8") - Network accessline 293
with urllib.request.urlopen(url, timeout=20) as response: - Network accessline 313
archive_path = temp_dir / "paperspine-update.zip" try: with urllib.request.urlopen(url, timeout=60) as response: - Network accessline 314
try: with urllib.request.urlopen(url, timeout=60) as response: archive_path.write_bytes(response.read()) - Network accessline 315
with urllib.request.urlopen(url, timeout=60) as response: - Access to secretsline 440
[Credential-related source omitted] - Access to secretsline 443
[Credential-related source omitted] - Access to secretsline 445
[Credential-related source omitted] - Access to secretsline 446
[Credential-related source omitted] - Access to secretsline 448
[Credential-related source omitted] - Access to secretsline 451
[Credential-related source omitted] - Access to secretsline 601
[Credential-related source omitted]
dist/openclaw/skills/paper-spine/scripts/preserve_figure_revision.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/progress_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/publication_cycle.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/publication_surface_check.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 269
def _docx(path: Path) -> list[_Text]: ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main", - Network accessline 270
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main", - Network accessline 271
"r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships"}
dist/openclaw/skills/paper-spine/scripts/reference_inventory.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/respond_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/results_validation_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/reviewer_audit_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/revision_audit.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/scientific_evidence_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/section_economy_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/skill_discovery_migration.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/structured_review.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/style_metrics.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/submission_check.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 65
A4_HEIGHT_TWIPS = "16838" DEFAULT_MARGIN_TWIPS = "1440" W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" - Network accessline 66
DEFAULT_MARGIN_TWIPS = "1440" W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" W = f"{{{W_NS}}}" - Network accessline 67
W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main"
dist/openclaw/skills/paper-spine/scripts/supplement_evidence_index.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/translate_guard.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 514
except (zipfile.BadZipFile, ElementTree.ParseError, OSError): return "" ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 515
return "" ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} paragraphs: list[str] = [] - Network accessline 516
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"}
dist/openclaw/skills/paper-spine/scripts/usage_ledger.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/visual_readiness_check.py
- Executable scriptline 1
#!/usr/bin/env python3
dist/openclaw/skills/paper-spine/scripts/word_guard.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 172
W_NS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main" - Network accessline 173
A_NS = "http://schemas.openxmlformats.org/drawingml/2006/main" - Network accessline 174
WP_NS = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" - Network accessline 175
PIC_NS = "http://schemas.openxmlformats.org/drawingml/2006/picture" - Network accessline 176
R_NS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships" - Network accessline 177
PACKAGE_NS = "http://schemas.openxmlformats.org/package/2006/relationships" - Network accessline 481
def extract_text(document_xml: bytes) -> tuple[str, int]: root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 482
root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} paragraphs: list[str] = [] - Network accessline 483
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 506
root = ElementTree.fromstring(document_xml) ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 507
ns = {"w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main"} - Network accessline 968
if root.getroottree().docinfo.doctype: raise ValueError("Word font repair does not accept DTD-bearing XML") mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" - Network accessline 969
raise ValueError("Word font repair does not accept DTD-bearing XML") mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" qname_lists = {f"{{{mc}}}{name}" for name in ( - Network accessline 970
mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" - Network accessline 1118
if anchor and not node.get("{http://schemas.openxmlformats.org/officeDocument/2006/relationships}id") and anchor.lower() != "_top" and anchor not in bookmarks:
dist/openclaw/skills/paper-spine/scripts/word_surface_repair.py
- Executable scriptline 1
#!/usr/bin/env python3
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/adaptive-shadow-request.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/adaptive-shadow-result.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/asset-selection-request.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/author-voice-profile.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/author-voice-receipt.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/author-voice-restoration.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/evidence-review.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/open-release-agent-ticket.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/open-release-confirmation.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/open-release-invocation.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/open-release-manifest.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/open-release-plan.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/open-release-platform-receipts.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/open-release-result.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/publication-cycle-invocation.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/publication-cycle-result.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/publication-target-profile.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/review-calibration.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/skill-discovery-migration-preview.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/skill-discovery-migration.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/submission-package-plan.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/contracts/supplement-evidence-index.schema.json
paperspine5/core/01_PaperSpine4/src/skill/references/open-release-platforms.json
- Network accessline 30
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://github.com/", - Network accessline 31
"official_urls": { "home": "https://github.com/", "submit": "https://github.com/new", - Network accessline 32
"home": "https://github.com/", - Network accessline 33
"submit": "https://github.com/new", - Network accessline 34
"requirements": "https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-new-repository", - Network accessline 35
"authentication": "https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/about-authentication-to-github" - Network accessline 59
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://zenodo.org/", - Network accessline 60
"official_urls": { "home": "https://zenodo.org/", "submit": "https://zenodo.org/uploads/new", - Network accessline 61
"home": "https://zenodo.org/", - Network accessline 62
"submit": "https://zenodo.org/uploads/new", - Network accessline 63
"requirements": "https://help.zenodo.org/docs/get-started/quickstart/", - Network accessline 64
"api": "https://developers.zenodo.org/" - Network accessline 87
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://arxiv.org/", - Network accessline 88
"official_urls": { "home": "https://arxiv.org/", "submit": "https://arxiv.org/submit", - Network accessline 89
"home": "https://arxiv.org/", - Network accessline 90
"submit": "https://arxiv.org/submit", - Network accessline 91
"requirements": "https://info.arxiv.org/help/submit/index.html", - Network accessline 92
"endorsement": "https://info.arxiv.org/help/endorsement.html" - Network accessline 116
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://figshare.com/", - Network accessline 117
"official_urls": { "home": "https://figshare.com/", "submit": "https://figshare.com/account/home", - Network accessline 118
"home": "https://figshare.com/", - Network accessline 119
"submit": "https://figshare.com/account/home", - Network accessline 120
"requirements": "https://help.figshare.com/article/how-to-upload-and-publish-your-research", - Network accessline 121
"api": "https://info.figshare.com/user-guide/how-to-use-the-figshare-api/" - Network accessline 145
"sensitive_data_policy": "private_workspace_supported_but_public_release_requires_clearance", "official_urls": { "home": "https://osf.io/", - Network accessline 146
"official_urls": { "home": "https://osf.io/", "submit": "https://osf.io/", - Network accessline 147
"home": "https://osf.io/", - Network accessline 148
"submit": "https://osf.io/", - Network accessline 149
"requirements": "https://help.osf.io/article/387-files", - Network accessline 150
"api": "https://developer.osf.io/" - Network accessline 173
"sensitive_data_policy": "public_only_strict_human_deidentification", "official_urls": { "home": "https://datadryad.org/", - Network accessline 174
"official_urls": { "home": "https://datadryad.org/", "submit": "https://datadryad.org/stash/submissions/new", - Network accessline 175
"home": "https://datadryad.org/", - Network accessline 176
"submit": "https://datadryad.org/stash/submissions/new", - Network accessline 177
"requirements": "https://datadryad.org/help/submission_steps/description", - Network accessline 178
"human_data": "https://datadryad.org/docs/HumanSubjectsData.pdf" - Network accessline 202
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://huggingface.co/", - Network accessline 203
"official_urls": { "home": "https://huggingface.co/", "submit": "https://huggingface.co/new", - Network accessline 204
"home": "https://huggingface.co/", - Network accessline 205
"submit": "https://huggingface.co/new", - Network accessline 206
"requirements": "https://huggingface.co/docs/hub/repositories-getting-started" - Network accessline 230
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://www.protocols.io/", - Network accessline 231
"official_urls": { "home": "https://www.protocols.io/", "submit": "https://www.protocols.io/", - Network accessline 232
"home": "https://www.protocols.io/", - Network accessline 233
"submit": "https://www.protocols.io/", - Network accessline 234
"requirements": "https://apidoc.protocols.io/" - Network accessline 257
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://www.medrxiv.org/", - Network accessline 258
"official_urls": { "home": "https://www.medrxiv.org/", "submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 259
"home": "https://www.medrxiv.org/", - Network accessline 260
"submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 261
"requirements": "https://www.medrxiv.org/submit-a-manuscript" - Network accessline 284
"sensitive_data_policy": "registry_summary_only_no_participant_level_data", "official_urls": { "home": "https://clinicaltrials.gov/", - Network accessline 285
"official_urls": { "home": "https://clinicaltrials.gov/", "submit": "https://register.clinicaltrials.gov/", - Network accessline 286
"home": "https://clinicaltrials.gov/", - Network accessline 287
"submit": "https://register.clinicaltrials.gov/", - Network accessline 288
"requirements": "https://clinicaltrials.gov/submit-studies/prs-help/user-guide", - Network accessline 289
"accounts": "https://clinicaltrials.gov/submit-studies/prs-accounts" - Network accessline 312
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 313
"official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", "submit": "https://www.nihms.nih.gov/", - Network accessline 314
"home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 315
"submit": "https://www.nihms.nih.gov/", - Network accessline 316
"requirements": "https://pmc.ncbi.nlm.nih.gov/about/submission-methods/" - Network accessline 339
"sensitive_data_policy": "public_functional_genomics_no_controlled_human_data", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 340
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", "submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 341
"home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 342
"submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 343
"requirements": "https://www.ncbi.nlm.nih.gov/geo/info/seq.html" - Network accessline 366
"sensitive_data_policy": "public_only_with_explicit_consent_otherwise_route_dbgap", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 367
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", "submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 368
"home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 369
"submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 370
"requirements": "https://www.ncbi.nlm.nih.gov/sra/docs/submit/" - Network accessline 393
"sensitive_data_policy": "controlled_access_supported", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 394
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", "submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 395
"home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 396
"submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 397
"requirements": "https://www.ncbi.nlm.nih.gov/gap/docs/submissionguide/", - Network accessline 398
"sequence": "https://www.ncbi.nlm.nih.gov/sra/docs/submitdbgap/" - Network accessline 421
"sensitive_data_policy": "open_restricted_or_credentialed_after_phi_removal", "official_urls": { "home": "https://physionet.org/", - Network accessline 422
"official_urls": { "home": "https://physionet.org/", "submit": "https://physionet.org/projects/", - Network accessline 423
"home": "https://physionet.org/", - Network accessline 424
"submit": "https://physionet.org/projects/", - Network accessline 425
"requirements": "https://physionet.org/about/publish/" - Network accessline 449
"sensitive_data_policy": "public_only_no_identifiable_health_information", "official_urls": { "home": "https://openneuro.org/", - Network accessline 450
"official_urls": { "home": "https://openneuro.org/", "submit": "https://openneuro.org/", - Network accessline 451
"home": "https://openneuro.org/", - Network accessline 452
"submit": "https://openneuro.org/", - Network accessline 453
"requirements": "https://docs.openneuro.org/user_guide.html" - Network accessline 476
"sensitive_data_policy": "public_release_requires_clearance", "official_urls": { "home": "https://www.ebi.ac.uk/pride/", - Network accessline 477
"official_urls": { "home": "https://www.ebi.ac.uk/pride/", "submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 478
"home": "https://www.ebi.ac.uk/pride/", - Network accessline 479
"submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 480
"requirements": "https://www.ebi.ac.uk/training/online/courses/pride-quick-tour/submitting-data-to-pride/" - Network accessline 503
"sensitive_data_policy": "not_for_patient_level_data", "official_urls": { "home": "https://www.wwpdb.org/", - Network accessline 504
"official_urls": { "home": "https://www.wwpdb.org/", "submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 505
"home": "https://www.wwpdb.org/", - Network accessline 506
"submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 507
"requirements": "https://www.wwpdb.org/documentation/policy" - Network accessline 531
"sensitive_data_policy": "instance_policy_dependent", "official_urls": { "home": "https://dataverse.org/", - Network accessline 532
"official_urls": { "home": "https://dataverse.org/", "submit": "https://dataverse.harvard.edu/", - Network accessline 533
"home": "https://dataverse.org/", - Network accessline 534
"submit": "https://dataverse.harvard.edu/", - Network accessline 535
"requirements": "https://guides.dataverse.org/en/latest/user/dataset-management.html" - Network accessline 558
"sensitive_data_policy": "public_release_requires_location_clearance", "official_urls": { "home": "https://www.pangaea.de/", - Network accessline 559
"official_urls": { "home": "https://www.pangaea.de/", "submit": "https://www.pangaea.de/submit/", - Network accessline 560
"home": "https://www.pangaea.de/", - Network accessline 561
"submit": "https://www.pangaea.de/submit/", - Network accessline 562
"requirements": "https://www.pangaea.de/submit/" - Network accessline 583
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://fairsharing.org/", - Network accessline 584
"official_urls": { "home": "https://fairsharing.org/", "requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 585
"home": "https://fairsharing.org/", - Network accessline 586
"requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 607
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://www.re3data.org/", - Network accessline 608
"official_urls": { "home": "https://www.re3data.org/", "requirements": "https://www.re3data.org/faq" - Network accessline 609
"home": "https://www.re3data.org/", - Network accessline 610
"requirements": "https://www.re3data.org/faq"
paperspine5/core/01_PaperSpine4/src/skill/references/publication-cycle-contracts.md
- Network accessline 25
"id": "official-guide", "authority": "official", "url": "https://journal.example/guide-for-authors", - Network accessline 26
"authority": "official", "url": "https://journal.example/guide-for-authors", "checked_at": "2026-08-23" - Network accessline 27
"url": "https://journal.example/guide-for-authors", - Network accessline 31
"id": "recent-corpus", "authority": "published_corpus", "url": "https://journal.example/recent-articles", - Network accessline 32
"authority": "published_corpus", "url": "https://journal.example/recent-articles", "checked_at": "2026-08-23" - Network accessline 33
"url": "https://journal.example/recent-articles",
paperspine5/core/01_PaperSpine4/src/skill/references/update.md
- Network accessline 22
https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json
paperspine5/core/01_PaperSpine4/src/skill/references/upstream-review-protocols.md
paperspine5/core/02_PaperFigure/02_paperFig_skill/assets/comparison_atlas_builder.py
- Executable scriptline 1
#!/usr/bin/env python3
paperspine5/core/02_PaperFigure/02_paperFig_skill/scripts/inspect_figure_project.py
- Executable scriptline 1
#!/usr/bin/env python3
paperspine5/core/02_PaperFigure/02_paperFig_skill/scripts/validate_research_figures.py
- Executable scriptline 1
#!/usr/bin/env python3
src/skill/references/contracts/adaptive-shadow-request.schema.json
src/skill/references/contracts/adaptive-shadow-result.schema.json
src/skill/references/contracts/asset-selection-request.schema.json
src/skill/references/contracts/author-voice-profile.schema.json
src/skill/references/contracts/author-voice-receipt.schema.json
src/skill/references/contracts/author-voice-restoration.schema.json
src/skill/references/contracts/evidence-review.schema.json
src/skill/references/contracts/open-release-agent-ticket.schema.json
src/skill/references/contracts/open-release-confirmation.schema.json
src/skill/references/contracts/open-release-invocation.schema.json
src/skill/references/contracts/open-release-manifest.schema.json
src/skill/references/contracts/open-release-plan.schema.json
src/skill/references/contracts/open-release-platform-receipts.schema.json
src/skill/references/contracts/open-release-result.schema.json
src/skill/references/contracts/publication-cycle-invocation.schema.json
src/skill/references/contracts/publication-cycle-result.schema.json
src/skill/references/contracts/publication-target-profile.schema.json
src/skill/references/contracts/review-calibration.schema.json
src/skill/references/contracts/skill-discovery-migration-preview.schema.json
src/skill/references/contracts/skill-discovery-migration.schema.json
src/skill/references/contracts/submission-package-plan.schema.json
src/skill/references/contracts/supplement-evidence-index.schema.json
src/skill/references/open-release-platforms.json
- Network accessline 30
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://github.com/", - Network accessline 31
"official_urls": { "home": "https://github.com/", "submit": "https://github.com/new", - Network accessline 32
"home": "https://github.com/", - Network accessline 33
"submit": "https://github.com/new", - Network accessline 34
"requirements": "https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-new-repository", - Network accessline 35
"authentication": "https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/about-authentication-to-github" - Network accessline 59
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://zenodo.org/", - Network accessline 60
"official_urls": { "home": "https://zenodo.org/", "submit": "https://zenodo.org/uploads/new", - Network accessline 61
"home": "https://zenodo.org/", - Network accessline 62
"submit": "https://zenodo.org/uploads/new", - Network accessline 63
"requirements": "https://help.zenodo.org/docs/get-started/quickstart/", - Network accessline 64
"api": "https://developers.zenodo.org/" - Network accessline 87
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://arxiv.org/", - Network accessline 88
"official_urls": { "home": "https://arxiv.org/", "submit": "https://arxiv.org/submit", - Network accessline 89
"home": "https://arxiv.org/", - Network accessline 90
"submit": "https://arxiv.org/submit", - Network accessline 91
"requirements": "https://info.arxiv.org/help/submit/index.html", - Network accessline 92
"endorsement": "https://info.arxiv.org/help/endorsement.html" - Network accessline 116
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://figshare.com/", - Network accessline 117
"official_urls": { "home": "https://figshare.com/", "submit": "https://figshare.com/account/home", - Network accessline 118
"home": "https://figshare.com/", - Network accessline 119
"submit": "https://figshare.com/account/home", - Network accessline 120
"requirements": "https://help.figshare.com/article/how-to-upload-and-publish-your-research", - Network accessline 121
"api": "https://info.figshare.com/user-guide/how-to-use-the-figshare-api/" - Network accessline 145
"sensitive_data_policy": "private_workspace_supported_but_public_release_requires_clearance", "official_urls": { "home": "https://osf.io/", - Network accessline 146
"official_urls": { "home": "https://osf.io/", "submit": "https://osf.io/", - Network accessline 147
"home": "https://osf.io/", - Network accessline 148
"submit": "https://osf.io/", - Network accessline 149
"requirements": "https://help.osf.io/article/387-files", - Network accessline 150
"api": "https://developer.osf.io/" - Network accessline 173
"sensitive_data_policy": "public_only_strict_human_deidentification", "official_urls": { "home": "https://datadryad.org/", - Network accessline 174
"official_urls": { "home": "https://datadryad.org/", "submit": "https://datadryad.org/stash/submissions/new", - Network accessline 175
"home": "https://datadryad.org/", - Network accessline 176
"submit": "https://datadryad.org/stash/submissions/new", - Network accessline 177
"requirements": "https://datadryad.org/help/submission_steps/description", - Network accessline 178
"human_data": "https://datadryad.org/docs/HumanSubjectsData.pdf" - Network accessline 202
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://huggingface.co/", - Network accessline 203
"official_urls": { "home": "https://huggingface.co/", "submit": "https://huggingface.co/new", - Network accessline 204
"home": "https://huggingface.co/", - Network accessline 205
"submit": "https://huggingface.co/new", - Network accessline 206
"requirements": "https://huggingface.co/docs/hub/repositories-getting-started" - Network accessline 230
"sensitive_data_policy": "public_only_no_sensitive", "official_urls": { "home": "https://www.protocols.io/", - Network accessline 231
"official_urls": { "home": "https://www.protocols.io/", "submit": "https://www.protocols.io/", - Network accessline 232
"home": "https://www.protocols.io/", - Network accessline 233
"submit": "https://www.protocols.io/", - Network accessline 234
"requirements": "https://apidoc.protocols.io/" - Network accessline 257
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://www.medrxiv.org/", - Network accessline 258
"official_urls": { "home": "https://www.medrxiv.org/", "submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 259
"home": "https://www.medrxiv.org/", - Network accessline 260
"submit": "https://www.medrxiv.org/submit-a-manuscript", - Network accessline 261
"requirements": "https://www.medrxiv.org/submit-a-manuscript" - Network accessline 284
"sensitive_data_policy": "registry_summary_only_no_participant_level_data", "official_urls": { "home": "https://clinicaltrials.gov/", - Network accessline 285
"official_urls": { "home": "https://clinicaltrials.gov/", "submit": "https://register.clinicaltrials.gov/", - Network accessline 286
"home": "https://clinicaltrials.gov/", - Network accessline 287
"submit": "https://register.clinicaltrials.gov/", - Network accessline 288
"requirements": "https://clinicaltrials.gov/submit-studies/prs-help/user-guide", - Network accessline 289
"accounts": "https://clinicaltrials.gov/submit-studies/prs-accounts" - Network accessline 312
"sensitive_data_policy": "public_manuscript_no_sensitive_attachments", "official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 313
"official_urls": { "home": "https://pmc.ncbi.nlm.nih.gov/", "submit": "https://www.nihms.nih.gov/", - Network accessline 314
"home": "https://pmc.ncbi.nlm.nih.gov/", - Network accessline 315
"submit": "https://www.nihms.nih.gov/", - Network accessline 316
"requirements": "https://pmc.ncbi.nlm.nih.gov/about/submission-methods/" - Network accessline 339
"sensitive_data_policy": "public_functional_genomics_no_controlled_human_data", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 340
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/geo/", "submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 341
"home": "https://www.ncbi.nlm.nih.gov/geo/", - Network accessline 342
"submit": "https://www.ncbi.nlm.nih.gov/geo/info/submission.html", - Network accessline 343
"requirements": "https://www.ncbi.nlm.nih.gov/geo/info/seq.html" - Network accessline 366
"sensitive_data_policy": "public_only_with_explicit_consent_otherwise_route_dbgap", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 367
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/sra/", "submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 368
"home": "https://www.ncbi.nlm.nih.gov/sra/", - Network accessline 369
"submit": "https://submit.ncbi.nlm.nih.gov/subs/sra/", - Network accessline 370
"requirements": "https://www.ncbi.nlm.nih.gov/sra/docs/submit/" - Network accessline 393
"sensitive_data_policy": "controlled_access_supported", "official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 394
"official_urls": { "home": "https://www.ncbi.nlm.nih.gov/gap/", "submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 395
"home": "https://www.ncbi.nlm.nih.gov/gap/", - Network accessline 396
"submit": "https://submit.ncbi.nlm.nih.gov/dbgap/", - Network accessline 397
"requirements": "https://www.ncbi.nlm.nih.gov/gap/docs/submissionguide/", - Network accessline 398
"sequence": "https://www.ncbi.nlm.nih.gov/sra/docs/submitdbgap/" - Network accessline 421
"sensitive_data_policy": "open_restricted_or_credentialed_after_phi_removal", "official_urls": { "home": "https://physionet.org/", - Network accessline 422
"official_urls": { "home": "https://physionet.org/", "submit": "https://physionet.org/projects/", - Network accessline 423
"home": "https://physionet.org/", - Network accessline 424
"submit": "https://physionet.org/projects/", - Network accessline 425
"requirements": "https://physionet.org/about/publish/" - Network accessline 449
"sensitive_data_policy": "public_only_no_identifiable_health_information", "official_urls": { "home": "https://openneuro.org/", - Network accessline 450
"official_urls": { "home": "https://openneuro.org/", "submit": "https://openneuro.org/", - Network accessline 451
"home": "https://openneuro.org/", - Network accessline 452
"submit": "https://openneuro.org/", - Network accessline 453
"requirements": "https://docs.openneuro.org/user_guide.html" - Network accessline 476
"sensitive_data_policy": "public_release_requires_clearance", "official_urls": { "home": "https://www.ebi.ac.uk/pride/", - Network accessline 477
"official_urls": { "home": "https://www.ebi.ac.uk/pride/", "submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 478
"home": "https://www.ebi.ac.uk/pride/", - Network accessline 479
"submit": "https://www.ebi.ac.uk/pride/login", - Network accessline 480
"requirements": "https://www.ebi.ac.uk/training/online/courses/pride-quick-tour/submitting-data-to-pride/" - Network accessline 503
"sensitive_data_policy": "not_for_patient_level_data", "official_urls": { "home": "https://www.wwpdb.org/", - Network accessline 504
"official_urls": { "home": "https://www.wwpdb.org/", "submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 505
"home": "https://www.wwpdb.org/", - Network accessline 506
"submit": "https://deposit.wwpdb.org/deposition/", - Network accessline 507
"requirements": "https://www.wwpdb.org/documentation/policy" - Network accessline 531
"sensitive_data_policy": "instance_policy_dependent", "official_urls": { "home": "https://dataverse.org/", - Network accessline 532
"official_urls": { "home": "https://dataverse.org/", "submit": "https://dataverse.harvard.edu/", - Network accessline 533
"home": "https://dataverse.org/", - Network accessline 534
"submit": "https://dataverse.harvard.edu/", - Network accessline 535
"requirements": "https://guides.dataverse.org/en/latest/user/dataset-management.html" - Network accessline 558
"sensitive_data_policy": "public_release_requires_location_clearance", "official_urls": { "home": "https://www.pangaea.de/", - Network accessline 559
"official_urls": { "home": "https://www.pangaea.de/", "submit": "https://www.pangaea.de/submit/", - Network accessline 560
"home": "https://www.pangaea.de/", - Network accessline 561
"submit": "https://www.pangaea.de/submit/", - Network accessline 562
"requirements": "https://www.pangaea.de/submit/" - Network accessline 583
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://fairsharing.org/", - Network accessline 584
"official_urls": { "home": "https://fairsharing.org/", "requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 585
"home": "https://fairsharing.org/", - Network accessline 586
"requirements": "https://fairsharing.gitbook.io/fairsharing/how-to/searching-and-browsing/database-discovery" - Network accessline 607
"sensitive_data_policy": "not_applicable", "official_urls": { "home": "https://www.re3data.org/", - Network accessline 608
"official_urls": { "home": "https://www.re3data.org/", "requirements": "https://www.re3data.org/faq" - Network accessline 609
"home": "https://www.re3data.org/", - Network accessline 610
"requirements": "https://www.re3data.org/faq"
src/skill/references/publication-cycle-contracts.md
- Network accessline 25
"id": "official-guide", "authority": "official", "url": "https://journal.example/guide-for-authors", - Network accessline 26
"authority": "official", "url": "https://journal.example/guide-for-authors", "checked_at": "2026-08-23" - Network accessline 27
"url": "https://journal.example/guide-for-authors", - Network accessline 31
"id": "recent-corpus", "authority": "published_corpus", "url": "https://journal.example/recent-articles", - Network accessline 32
"authority": "published_corpus", "url": "https://journal.example/recent-articles", "checked_at": "2026-08-23" - Network accessline 33
"url": "https://journal.example/recent-articles",
src/skill/references/update.md
- Network accessline 22
https://raw.githubusercontent.com/WUBING2023/PaperSpine/main/website/downloads/update-channel.json
src/skill/references/upstream-review-protocols.md
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Declared and executed: 26 facts
- Contacts api.crossref.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_quality_audit.py:40High confidence
- Contacts api.semanticscholar.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_quality_audit.py:41High confidence
- Contacts api.crossref.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_verification_en.py:29High confidence
- Contacts api.crossref.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_verification_zh.py:99High confidence
- Contacts raw.githubusercontent.com, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/paperspine_update.py:27High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/publication_surface_check.py:270High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/submission_check.py:67High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/translate_guard.py:516High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/word_guard.py:172High confidence
- Contacts api.crossref.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_quality_audit.py:40High confidence
- Contacts api.semanticscholar.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_quality_audit.py:41High confidence
- Contacts api.crossref.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_verification_en.py:29High confidence
- Contacts api.crossref.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_verification_zh.py:99High confidence
- Contacts raw.githubusercontent.com, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/paperspine_update.py:27High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/publication_surface_check.py:270High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/submission_check.py:67High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/translate_guard.py:516High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/word_guard.py:172High confidence
- Contacts api.crossref.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_quality_audit.py:40High confidence
- Contacts api.semanticscholar.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_quality_audit.py:41High confidence
- Contacts api.crossref.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_verification_en.py:29High confidence
- Contacts api.crossref.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/citation_verification_zh.py:99High confidence
- Contacts raw.githubusercontent.com, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/paperspine_update.py:27High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/publication_surface_check.py:270High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/submission_check.py:67High confidence
- Contacts schemas.openxmlformats.org, which SKILL.md, the README and the plugin manifest do not mentionpaper-spine/scripts/translate_guard.py:516High confidence
Signal confidence: 474 facts
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:1High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:2High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:5High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:6High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:7High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:14High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:15High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:16High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:1High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:2High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:6High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:7High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:8High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:9High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:10High confidence
- Network access in code of documentationpaper-spine/references/publication-cycle-contracts.md:25Low confidence
- Network access in code of documentationpaper-spine/references/publication-cycle-contracts.md:26Low confidence
- Network access in code of documentationpaper-spine/references/publication-cycle-contracts.md:27Low confidence
- Network access in code of documentationpaper-spine/references/publication-cycle-contracts.md:31Low confidence
- Network access in code of documentationpaper-spine/references/publication-cycle-contracts.md:32Low confidence
- Network access in code of documentationpaper-spine/references/publication-cycle-contracts.md:33Low confidence
- Network access in code of documentationpaper-spine/references/update.md:22Low confidence
- Network access in prose of documentationpaper-spine/references/upstream-review-protocols.md:17Low confidence
- Network access in prose of documentationpaper-spine/references/upstream-review-protocols.md:18Low confidence
- Network access in prose of documentationpaper-spine/references/upstream-review-protocols.md:19Low confidence
- Network access in prose of documentationpaper-spine/references/upstream-review-protocols.md:20Low confidence
- Executable script in code of a file that runspaper-spine/scripts/_paper_spine_utils.py:1High confidence
- Executable script in code of a file that runspaper-spine/scripts/adaptive_shadow.py:1High confidence
- Executable script in code of a file that runspaper-spine/scripts/artifact_check.py:1High confidence
- Executable script in code of a file that runspaper-spine/scripts/asset_selection.py:1High confidence
- Executable script in code of a file that runspaper-spine/scripts/author_voice_check.py:1High confidence
- Executable script in code of a file that runspaper-spine/scripts/citation_bank_check.py:1High confidence
- Executable script in code of a file that runspaper-spine/scripts/citation_quality_audit.py:1High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_quality_audit.py:38High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_quality_audit.py:39High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_quality_audit.py:40High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_quality_audit.py:41High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_quality_audit.py:42High confidence
- Executable script in code of a file that runspaper-spine/scripts/citation_verification_en.py:1High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_verification_en.py:29High confidence
- Network access in prose of a file that runspaper-spine/scripts/citation_verification_en.py:185Low confidence
- Network access in prose of a file that runspaper-spine/scripts/citation_verification_en.py:186Low confidence
- Network access in code of a file that runspaper-spine/scripts/citation_verification_en.py:189High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_verification_en.py:190High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_verification_en.py:191High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_verification_en.py:460High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_verification_en.py:461High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_verification_en.py:514High confidence
- Network access in code of a file that runspaper-spine/scripts/citation_verification_en.py:516High confidence
- Executable script in code of a file that runspaper-spine/scripts/citation_verification_zh.py:1High confidence
and 424 more
Only the first 500 facts are listed.
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md dist/claude/skills/paper-spine/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md dist/claude/skills/paper-spine/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md dist/claude/skills/paper-spine/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md dist/claude/skills/paper-spine/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md dist/claude/skills/paper-spine/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Explore alternatives and comparisons
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/wubing2023-paperspine/)