This skill should be used when the user asks to "audit for JOSS", "check JOSS readiness", "JOSS reviewer checklist", "prepare for JOSS submission", "is my package JOSS ready", "JOSS requirements", or mentions JOSS submission compliance. It evaluates an R package and its paper.md against the complete JOSS reviewer checklist, producing a structured gap report.
From pub-pipelinenpx claudepluginhub queelius/claude-anvil --plugin pub-pipelineThis skill uses the workspace's default tool permissions.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Details PluginEval's skill quality evaluation: 3 layers (static, LLM judge), 10 dimensions, rubrics, formulas, anti-patterns, badges. Use to interpret scores, improve triggering, calibrate thresholds.
Evaluate an R package against the complete JOSS reviewer checklist and produce a structured gap report. This covers software quality, documentation, development history, and paper.md format compliance.
Identify the R package root (look for DESCRIPTION). Then search for paper.md — check root, paper/, joss/, and inst/paper/. If no paper.md exists, note this as a critical gap.
Read .claude/pub-pipeline.local.md if it exists (Read tool). Extract author metadata (ORCID, affiliation) and package context from YAML frontmatter. If the file is missing, inform the user and offer to create one from the template at ${CLAUDE_PLUGIN_ROOT}/docs/user-config-template.md.
License (Read tool):
LICENSE or LICENSE.md file existsRepository quality (Bash tool):
# Development history: 6+ months of commits
git log --oneline --since="6 months ago" | wc -l
# Multiple contributors
git shortlog -sn --all | head -10
# Issues/PRs activity
gh issue list --state all --limit 5
gh pr list --state all --limit 5
# Tags/releases
git tag -l | tail -5
Documentation (Glob/Read tools):
README.md exists with installation instructionsman/ directory with .Rd files)CONTRIBUTING.md or in README)Testing (Bash/Glob tools):
tests/testthat/ or tests/)Rscript -e 'devtools::test()'Rscript -e 'covr::package_coverage()'Installation (Bash tool):
Rscript -e 'devtools::install()'If paper.md exists, validate against JOSS format requirements.
YAML frontmatter (Read tool — check first 50 lines):
| Field | Required | Check |
|---|---|---|
title | Yes | Present, descriptive, includes package name |
tags | Yes | Array of relevant keywords, includes "R" |
authors | Yes | Each has name, orcid, affiliation |
affiliations | Yes | Each has index and name |
date | Yes | Format: %e %B %Y (e.g., "9 October 2024") |
bibliography | Yes | Points to existing .bib file |
Required sections (Grep tool):
# Summary — high-level for non-specialists# Statement of Need or # Statement of need — research purpose, target audience# State of the Field or # State of the field — comparison to existing packages# Software Design or # Software design — architecture, trade-offs# Research Impact or similar — evidence of impact# AI Usage Disclosure or similar — generative AI transparency# ReferencesBibliography (Read/Grep tools):
paper.bib exists at expected path@citation_key references in paper.md have matching BibTeX entriesCitation cross-reference (Bash tool):
# Extract citation keys from paper.md and cross-reference against paper.bib
grep -oP '@[\w]+' paper.md | sort -u > /tmp/paper_keys.txt
grep -oP '^\s*@\w+\{(\w+)' paper.bib | grep -oP '\w+$' | sort -u > /tmp/bib_keys.txt
comm -23 /tmp/paper_keys.txt /tmp/bib_keys.txt
All citation keys in paper.md must have matching BibTeX entries. Report any missing.
Word count (Bash tool):
# Count words between end of YAML frontmatter and References section
awk '/^---$/{n++; next} n>=2 && !/^# References/{print}' paper.md | wc -w
Target: 750-1750 words.
Figures and math:
$...$ (inline) and $$...$$ (display) syntaxIf the package or paper used generative AI tools, verify the disclosure includes:
Format the report following this structure:
# JOSS Audit Report: {package name}
## Summary
- **Status**: READY / NEEDS WORK / NOT READY
- **Paper exists**: Yes/No
- **Reviewer checklist**: X/Y items pass
## Critical Gaps (Blockers)
1. [Missing item] — [what to do]
## Warnings
1. [Issue] — [recommendation]
## Reviewer Checklist Results
### General Checks
- [ ] or [x] Source code at repository URL
- [ ] or [x] OSI-approved LICENSE file
- [ ] or [x] Submitting author is major contributor
- [ ] or [x] Demonstrates research impact
### Development History
- [ ] or [x] 6+ months public development
- [ ] or [x] Multiple contributors
- [ ] or [x] Issues/PRs activity
- [ ] or [x] Tagged releases
### Functionality
- [ ] or [x] Installation works as documented
- [ ] or [x] Functional claims confirmed
### Documentation
- [ ] or [x] Statement of need in README or paper
- [ ] or [x] Installation instructions
- [ ] or [x] Usage examples
- [ ] or [x] API documentation
- [ ] or [x] Automated tests
- [ ] or [x] Contribution guidelines
### Paper Quality
- [ ] or [x] Summary section
- [ ] or [x] Statement of Need
- [ ] or [x] State of the Field
- [ ] or [x] Software Design
- [ ] or [x] Research Impact Statement
- [ ] or [x] AI Usage Disclosure
- [ ] or [x] References complete
- [ ] or [x] Word count 750-1750
## Recommended Next Steps
1. [Ordered actions]
After presenting the report, offer to address gaps:
paper.md and paper.bib via the pub-pipeline:joss-writer agent (or /joss-draft skill)CONTRIBUTING.mdCODE_OF_CONDUCT.mdFor a deeper multi-agent audit, launch the pub-pipeline:joss-reviewer agent which spawns software-auditor, community-auditor, and field-scout specialists in parallel.
For the complete JOSS requirements and reviewer checklist, consult:
${CLAUDE_PLUGIN_ROOT}/docs/joss-reference.md — Full JOSS submission requirements, reviewer checklist, paper format spec, and post-acceptance workflow${CLAUDE_PLUGIN_ROOT}/docs/joss-exemplars.md — Real JOSS R package paper examples with structural analysis and patterns