An open API service indexing awesome lists of open source software.

https://github.com/qwerty239qwe/submission-nav

A practical AI skill for academic submission workflows—turn manuscripts into structured journal shortlists, compare author guidelines, and plan revisions with strategy-aware recommendations.
https://github.com/qwerty239qwe/submission-nav

academic-publishing ai-agent-tools claude-code-skill codex-skill journal-selection manuscript-preparation submission-workflow

Last synced: 3 days ago
JSON representation

A practical AI skill for academic submission workflows—turn manuscripts into structured journal shortlists, compare author guidelines, and plan revisions with strategy-aware recommendations.

Awesome Lists containing this project

README

          

# submission-nav

Turn "where should I submit this?" into a ranked shortlist with visible tradeoffs.

`submission-nav` parses your manuscript, pulls candidate venues from public sources (OpenAlex, DOAJ, Crossref, Elsevier, DBLP), and produces a strategy-aware ranking with fit, impact, OA, APC, and risk signals — plus a shareable HTML report.

![sample report](docs/sample_report.png)

## Install

```bash
# Claude Code
npx skills add https://github.com/qwerty239qwe/submission-nav --skill submission-nav -a claude-code

# Codex
npx skills add https://github.com/qwerty239qwe/submission-nav --skill submission-nav -a codex
```

Or check out the repo and run `bin/install.ps1` (Windows) / `bin/install.sh` (macOS/Linux).

Optional: set `OPENALEX_EMAIL`, `ELSEVIER_API_KEY`, `DOAJ_KEY`, `CROSSREF_EMAIL` in `.env`. See [`.env.example`](.env.example).

## Quick start

Ask your agent in natural language:

> "Use submission-nav. Where should I submit `~/papers/draft.pdf`?"

Or run `sn` directly:

```bash
sn strategist manuscript.docx --strategy balanced # rank venues
sn report manuscript.docx # render HTML report (above)
sn rules "PLOS ONE" "" # cache author rules
sn check manuscript.pdf --journal plos-one # format check
sn triage reviews.txt --manuscript manuscript.pdf # triage reviewer comments
```

Run `sn --help` for the full surface. Outputs cache per manuscript so later commands compose.

## Strategies

| Strategy | Favors | Use when |
|---|---|---|
| `balanced` (default) | Suitability + fit, modest impact | First-pass shortlist |
| `ambitious` | High-impact stretch venues | Top-tier shot, can absorb desk reject |
| `safe` | Article-type fit, suitability | Need a likely acceptance |
| `fast` | OA + cost fit, low prestige weight | Time-sensitive submission |
| `low-cost` | APC vs budget | Tight or zero APC budget |
| `oa-only` | Open-access fit | Funder mandates OA |
| `broad` | Wider net, scope/impact | Exploratory survey |

Combine with `--apc-budget ` and `--oa-preference any|oa-only|avoid-oa`.

## What you get

- **Bucketed shortlist**: stretch / target / safe / fallback / avoid — never a single guess.
- **Sortable HTML report** with field-normalized impact percentile, h-index, i10, citations, OA, APC (approximate, with a "confirm →" link), and per-venue rationale.
- **Author-rule caching** for format checks against the cached rules.
- **Reviewer-comment triage** and response-letter drafting.
- **Strategy reweighting** without re-fetching — `sn rank ... --strategy safe` reuses cached venues.

## Caveats

- Venue rankings are prioritization aids, not acceptance predictions.
- APC, OA flag, and ranking signals come from public APIs; always verify fees on the publisher page.
- Some publisher pages block automated fetching — pass `--from-file` with the text you copy.
- Conference support is currently strongest for CS venues via OpenAlex + DBLP.
- OpenAlex rate limits apply; set `OPENALEX_EMAIL` for higher quotas. Treat `HTTP 429` as a data outage, not a ranking signal.

## Development

```bash
uv run --project scripts python -m pytest
```

Generated artifacts belong under `temp_sn/` (gitignored).