Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Build evidence-bound journal or conference shortlists for Light stage 12. Use after typesetting delivers venue-handoff.json/PDF/compliance facts; when an author asks where to submit, journal selection, conference fit, scope or article-type matching, publication strategy, reach/match/safety tiers, transfer order, APC/OA/indexing/deadline constraints, or predatory/hijacked-journal risk. Produces a current-source candidate registry, fit/risk/unknown reports, and an unchosen decision packet; never r
.claude/skills/light0305-light-venue-matching/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 98% | 0% |
| case-01 | ✗→✓ | ▲ Improved | 146% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 52% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 120% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 183% | 0% |
Turn a delivered paper into an auditable venue decision. Read venue-resource-map.md before a real run and references/workflow_contract.md before producing or consuming JSON. Use references.md to choose current sources. Start from templates/venue_input.json; never start from model memory or a bundled venue list.
venue-handoff.json. Verify its PDF path/hash,DELIVERED, pages, page size, profile/source, compliance PASS, and zero critical findings. Preserve paper/figure/citation/typesetting provenance. Do not compile, reformat, inspect page boxes again, or treat stage-11 UNAVAILABLE as compliance.
manuscript_profile.claims_delivery with a safe relative path, schema, and SHA-256. Do not change claims, methods, results, article type, data scale, or evidence strength to make a venue fit. Citation owns reference authenticity; figure owns visual honesty.
deadline as high-velocity fields. Require a source checked on the run date. Otherwise emit UNKNOWN, UNAVAILABLE, or STALE; never use memory. AVAILABLE sources must carry an auditable locator (url, query, locator, or path), checked_at, access_tier, and authority. Official rules/fees/deadlines require official/publisher/venue authority; indexing and quartile require index/registry authority.
outage as UNAVAILABLE. They do not mean “not indexed,” “not in DOAJ,” “free,” or “risky.”
multi-source human review. DOAJ absence, high APC, fast review, unsolicited email, unusual volume, or one archived list is not a final verdict.
probability. Use official current acceptance figures only with source/date; otherwise acceptance_likelihood.status=UNKNOWN.
decision_point=true and chosen=null through candidate discovery,evidence collection, ranking, and delivery. Stop and ask the user to choose. Only an explicit light.venue_user_selection.v1 may create a selected handoff. Record a direct choice as actor=user; if the user explicitly delegates the choice, preserve the authorization verbatim and use actor=agent_with_user_authorization, decision_authority=user. Never submit. Every selection artifact must include timezone-aware selected_at and the user's stated trade-off in because. Bind the choice to the exact reviewed packet with decision_sha256; a changed packet or any changed registry/evidence/fit artifact requires a new review and selection.
STAGE_GATES[12], ROUTES[12], a confirmation checkpoint,critical findings, or a back-edge. Stage 12 is a user decision point with no configured gate or route edge.
Require light.typesetting_venue_handoff.v1. Run prepare only when:
status=DELIVERED;compliance_status=PASS and critical_count=0;If any condition fails, return an input error and route the author to stage 11 without creating a stage-12 critical finding.
Record, without filling gaps yourself:
Mark each constraint as hard or soft. A hard author constraint can exclude; a soft preference changes order and explanation. Bind the claim/evidence profile to the current paper-writing artifact via claims_delivery.path + sha256 + schema; a hand-typed manuscript profile is not enough for stage 12.
Keep the unpublished manuscript local. Before any public or externally authenticated search, translate it into author-approved broad field/method-family terms and preflight the outgoing queries:
powershellpython scripts/query_privacy_gate.py ` --input templates/query-privacy.example.json
Do not send the unpublished title, abstract, exact hypotheses, unique method or dataset names, result sentences, tables, or figures to a public search engine. The preflight report intentionally retains only query hashes and match categories. Its PASS detects supplied phrase overlap; it cannot prove anonymity or rule out re-identification.
Use the author's candidate list, current official CFPs, publisher finders, and venue_discovery.py:
powershellpython scripts/venue_discovery.py ` --query "author-approved broad field and method family" --rows 50 --out discovery.json
Crossref container frequency only discovers candidates. It does not establish scope, rank, indexing, safety, or quality. Record every discovery query, endpoint, access tier, status, and check time. Deduplicate by ISSN plus official name; keep title conflicts for manual review.
For every candidate, collect separate envelopes for:
Prefer official venue/publisher instructions for rules, authoritative indexes for index membership, and registration metadata for identity. Keep JCR, Scopus, Cabells, institutional lists, and paywalled fields unavailable unless the author provides lawful access. Never scrape around access controls.
powershellpython scripts/venue_evidence_gate.py ` --spec venue-evidence.json --report venue-evidence-findings.json ` --json-out venue-evidence-report.json python scripts/venue_workflow.py prepare ` --input venue-input.json --out-dir venue-run --as-of YYYY-MM-DD
Run venue_evidence_gate.py first when candidate evidence has been collected. It consumes light.venue_evidence.v2 (templates/venue-evidence.example.json, intentionally fail-closed) and checks each candidate on independent axes: scope, article type, audience, format, cost, timeline, trust, and strategy. Do not use a single aggregate score. Dynamic fields must carry locator, retrieved_at, valid-at/source age, timezone when relevant, and UNKNOWN/UNAVAILABLE/STALE when not verified. Hard blockers include article type not accepted, official scope mismatch, fee over a hard APC ceiling, unknown fee under a hard ceiling, deadline missing timezone or already passed, missing timezone-aware as_of, future retrieved_at, identity conflict/hijack, and strategy without evidence-backed because. DOAJ/TCS/source failures remain unresolved evidence, not adverse evidence.
Compare real PDF pages/page size/profile facts with each candidate's current rules. Explain scope, article type, method/data, paper strength, format, APC/OA, timing, indexing, risk, and author constraints separately. An official article-type/page mismatch or hard author constraint may exclude. A soft risk signal may not.
Emit reach/match/safety tiers and a transfer order. Every option needs because plus evidence source IDs. Unknown fields lower confidence; they do not silently lower the venue or become adverse evidence.
Show the decision packet and ask one concrete question: which candidate should be selected? Present material trade-offs and unresolved fields. Do not write a selection file without a direct user choice or explicit delegation. Never select an excluded candidate.
Correct:
> Candidate A is reach because scope/method fit is high but the official bar is > above the paper profile; APC is unavailable. Candidate B is match with an > article-type fit and current zero-APC evidence. Which do you choose?
Incorrect:
> I selected Candidate A and updated the project.
After the user names a candidate or explicitly delegates the choice, copy templates/user_selection.json, record their stated reason or verbatim authorization, copy delivery.json.decision_sha256 into decision_sha256, and run:
powershellpython scripts/venue_workflow.py choose ` --decision venue-run/decision-packet.json ` --selection user-selection.json --out-dir selected
Hand selected-venue-handoff.json and review-rebuttal-context.json to review-rebuttal. Hand author-submission-plan.json to the author. Both consumers receive venue rules, evidence IDs, unknowns, manuscript profile, and stage-11 provenance. selected_at must be timezone-aware and not earlier than the decision packet's generated_at. choose verifies the decision digest plus the SHA-256/schema binding of candidate registry, source evidence, fit report, and unknowns; any drift fails closed. Recheck volatile fields on submission day and stop before portal submission.
venue_discovery.py: current, recall-oriented Crossref discovery with honestnetwork status.
query_privacy_gate.py: local outgoing-query preflight; catches suppliedprivate phrase/result-value overlap without echoing manuscript or query text.
venue_workflow.py: canonical handoff verification, field-statenormalization, fit/risk explanation, decision packet, and user-selection handoff.
venue_signal.py: optional OpenAlex/DOAJ signal adapter; free OpenAlex keymay be required and each failed signal stays unavailable.
venue_evidence_gate.py: Round 3 multi-axis venue_evidence.v2 gate; separates scope/type/cost/timeline/trust/strategy, forbids aggregate-score decisions, preserves UNKNOWN/UNAVAILABLE/STALE, and blocks hard constraint mismatches before the user decision packet.venue_fit_rank.py: legacy v1 candidate-card adapter; do not use it insteadof the canonical registry.
venue_risk_gate.py: optional legacy warn-only findings adapter; never astage-12 critical gate.
and SHA-256?
speed/strategy/unacceptable constraints recorded?
status?
venue_evidence_gate.py ran on venue_evidence.v2, with no aggregate score, no premature chosen, and every candidate axis separately evidenced?UNKNOWN/UNAVAILABLE/STALE rather than adverse evidence?
because and evidence?decision_point=true, chosen=null, and no selected handoff before theuser's explicit choice?
decision-packet.json SHA-256, and allfour decision artifacts still match their bound hash/schema?
STAGE_GATES[12], ROUTES[12], critical finding, auto-choice, orsubmission invented?
Tiering, scope fit, APC/deadline filtering, risk warnings, author-fit, and explainable recommendations are established peer mechanisms, not unique Light features. Light's narrower implementation gain is canonical consumption of the real stage-11 artifact, per-field provenance/access/status, honest failure semantics, and an enforceable unchosen→user-selected artifact transition. Round 3 adds an executable multi-axis evidence gate so a high scope score cannot hide article-type, fee, deadline, or trust blockers. Keyword overlap and method/selectivity bands remain decision support, not an editorial prediction. Paid/institutional sources stay optional.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-04 | fail→pass | 11,228 | 6,522 | -42% | 1 | 1 | 0% | 2,197 | 4,350 | +98% | 0 | 0 | — |
case-01 | fail→pass | 19,940 | 30,933 | +55% | 1 | 1 | 0% | 3,256 | 8,020 | +146% | 0 | 0 | — |
case-02 | fail→pass | 38,228 | 35,300 | -8% | 1 | 1 | 0% | 6,105 | 9,269 | +52% | 0 | 0 | — |
case-03 | fail→pass | 17,613 | 25,558 | +45% | 1 | 1 | 0% | 3,249 | 7,154 | +120% | 0 | 0 | — |
case-05 | fail→pass | 9,141 | 6,113 | -33% | 1 | 1 | 0% | 1,549 | 4,389 | +183% | 0 | 0 | — |
case-06 | fail→pass | 11,152 | 4,877 | -56% | 1 | 1 | 0% | 1,857 | 4,053 | +118% | 0 | 0 | — |
case-07 | fail→pass | 8,220 | 7,532 | -8% | 1 | 1 | 0% | 1,271 | 4,518 | +255% | 0 | 0 | — |
case-08 | fail→pass | 11,929 | 6,503 | -45% | 1 | 1 | 0% | 2,236 | 4,483 | +100% | 0 | 0 | — |
case-09 | fail→fail | 12,391 | 4,746 | -62% | 1 | 1 | 0% | 2,131 | 3,896 | +83% | 0 | 0 | — |
case-10 | pass→pass | 13,513 | 6,644 | -51% | 1 | 1 | 0% | 2,062 | 4,231 | +105% | 0 | 0 | — |
case-11 | fail→pass | 12,182 | 6,150 | -50% | 1 | 1 | 0% | 2,220 | 4,263 | +92% | 0 | 0 | — |
case-12 | pass→pass | 8,200 | 3,978 | -51% | 1 | 1 | 0% | 1,338 | 3,942 | +195% | 0 | 0 | — |
case-13 | fail→pass | 9,971 | 4,861 | -51% | 1 | 1 | 0% | 1,684 | 4,040 | +140% | 0 | 0 | — |
case-14 | pass→pass | 13,238 | 6,311 | -52% | 1 | 1 | 0% | 2,154 | 4,257 | +98% | 0 | 0 | — |
case-15 | pass→pass | 6,810 | 5,814 | -15% | 1 | 1 | 0% | 1,188 | 4,129 | +248% | 0 | 0 | — |
case-16 | fail→pass | 7,037 | 4,449 | -37% | 1 | 1 | 0% | 1,158 | 3,975 | +243% | 0 | 0 | — |
case-17 | fail→pass | 14,313 | 4,475 | -69% | 1 | 1 | 0% | 902 | 3,775 | +319% | 0 | 0 | — |
case-18 | fail→pass | 10,027 | 2,813 | -72% | 1 | 1 | 0% | 1,709 | 3,612 | +111% | 0 | 0 | — |
case-19 | pass→pass | 15,195 | 7,451 | -51% | 1 | 1 | 0% | 2,585 | 4,248 | +64% | 0 | 0 | — |
case-20 | fail→pass | 10,899 | 3,882 | -64% | 1 | 1 | 0% | 1,681 | 3,811 | +127% | 0 | 0 | — |
case-21 | pass→pass | 8,216 | 7,867 | -4% | 1 | 1 | 0% | 1,056 | 4,232 | +301% | 0 | 0 | — |
case-22 | pass→pass | 4,642 | 8,342 | +80% | 1 | 1 | 0% | 622 | 4,440 | +614% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 21 counted toward the lift figure. The other 1 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +64 percentage points is the difference between those two pass rates over the 21 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.