Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add ShaishavMaisuria/research-paper-lifecycle-skills --skill parse-cfpgit clone --depth 1 https://github.com/ShaishavMaisuria/research-paper-lifecycle-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/shaishavmaisuria/research-paper-lifecycle-skills/parse-cfp)<a href="https://agentmods.dev/skills/shaishavmaisuria/research-paper-lifecycle-skills/parse-cfp"><img src="https://agentmods.dev/badge/skills/shaishavmaisuria/research-paper-lifecycle-skills/parse-cfp/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/shaishavmaisuria/research-paper-lifecycle-skills/parse-cfp"><img src="https://agentmods.dev/badge/skills/shaishavmaisuria/research-paper-lifecycle-skills/parse-cfp.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00155 | $0.02129 |
| Opus 5 | $0.00077 | $0.01064 |
| Sonnet 5 | $0.00031 | $0.00426 |
| Haiku 4.5 | $0.00015 | $0.00213 |
Grade A, and why
parse-cfp scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 171 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Parse CFP
Turn a live Call for Papers into the machine-readable venue profile that the
rest of this repo runs on. Output is a venues/conferences/<venue>-<year>.yml
file conforming to venues/schema.yml, plus a human-readable requirements card.
Downstream consumers: preflight-check, tailor-to-venue, write-rebuttal,
prepare-camera-ready, select-venue.
When to use
- The user pastes a CFP, author-guidelines, or submission-instructions URL.
- "What are the requirements / deadlines / page limits for VENUE YEAR?"
- A profile in
venues/conferences/is missing or a year out of date.
Inputs
- A CFP URL. If the user only names a venue, check
venues/conferences/<venue>-<year>.ymlfor acfp_urlfirst; an older year's profile usually links the venue website where the new CFP lives. venues/schema.yml— read it before writing the profile; it defines every field and the mandatoryverified:provenance block.- The matching
venues/families/<family>.ymlfor family-level defaults. CONTACT_EMAILenv var (used in the polite fetch User-Agent; the script prompts if unset).
Process
-
Scope one venue + one year. Read
venues/schema.yml. If a profile for this venue-year already exists, treat it as hints to re-verify, never as ground truth. -
Fetch the CFP page. Run:
python3 scripts/fetch_cfp.py "<cfp-url>"The script fetches ONE page per invocation, rate-limits to 1 request/second per host, backs off exponentially on HTTP 429, caches under
.cache/(gitignored) for 24h, and prints readable text with link targets as[url]. It exits nonzero with a clear message on failure. Then fetch the handful of follow-up pages you actually need — per-track submission pages, the deadlines page, the camera-ready/author-kit page — one invocation each, never a site crawl.- Exit code 3 = non-HTML content (a PDF CFP, a JSON API response); the
body is saved under
.cache/— read that file directly. - "very little text extracted" warning = JavaScript-rendered page; ask the
user to paste the page text and mark the profile
needs-verification. Never fill gaps from memory.
- Exit code 3 = non-HTML content (a PDF CFP, a JSON API response); the
body is saved under
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 11d ago First seen · 171 lines · 155 tokens per session scan A 53c90b20a949
parse-cfp is a skill published in the GitHub repository ShaishavMaisuria/research-paper-lifecycle-skills (42 stars, last pushed 2mo ago), licensed Apache-2.0. It adds 155 tokens to every session and 2,129 once invoked, about $0.0008 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
aaai-reproducibility
Use when strengthening an AAAI paper's reproducibility checklist (placed after references), experimental traceability, seed and hyperparameter reporting, compute and cost disclosure, dataset access and licensing, code/data ZIP readiness, and the claim-to-evidence map that Phase-1 reviewers use to judge rigor across…
aaai-submission
Use when auditing an AAAI main technical track submission for OpenReview readiness, double-blind anonymity, page limits, reproducibility checklist, supplementary material, author limits, multiple-submission policy, and AAAI AI-use policy compliance.
acl-author-response
Use when drafting an ACL author response inside an ACL Rolling Review cycle on OpenReview, covering the response window before meta-review, reviewer discussion dynamics, score-change strategy, flagging review issues to the area chair, anonymity rules, and deciding between responding now versus revising for a later ARR…
acl-camera-ready
Use when preparing an accepted ACL main-conference or Findings paper for camera-ready, covering the extra content page, de-anonymization and acknowledgements, AI-assistance disclosure, keeping the Limitations section, ACL Anthology metadata and CC BY 4.0 publication, meta-review-driven edits, and presentation-mode…
acl-related-work
Use when positioning an ACL submission against the NLP literature, covering ACL Anthology citation practice, arXiv-versus-published version citation, concurrent LLM-era preprints, prior-cycle ARR resubmission overlap, anonymity-preserving self-citation, and the fast-moving baseline problem in computational linguistics.
acl-reproducibility
Use when strengthening reproducibility evidence for an ACL paper reviewed through ACL Rolling Review, covering the Responsible NLP checklist end to end, hyperparameter and compute reporting, prompt and decoding disclosure for LLM experiments, data contamination auditing, variance across runs, and checklist-to-paper…