ConferenceWatch
Produce an accurate, well-sourced snapshot of the AI/ML conferences a user cares
about — with every submission deadline stage, dates, location, special
sessions / CFP, official links, and a 5-year acceptance-rate trend.
Two artifacts are always produced:
- A JSON dataset (one object per conference) — the structured source of truth.
- A human-readable Markdown report with a short summary.
Guiding principles
- Never invent dates. A deadline goes into the JSON only if you found it on
an official/authoritative source. If you infer from historical patterns, mark
it
approximate and say so explicitly in the report.
- Cite everything. Every edition and every acceptance-rate number carries a
source_links entry. Prefer official conference sites and CFP pages; use
aggregators (see references) as leads, then confirm on the official page.
- Timezones matter. Record the raw deadline text (e.g. "May 22, 2026 AoE").
Most AI venues use AoE (Anywhere on Earth, UTC-12). Keep the AoE flag.
- Today is the anchor. Use the current date to decide which edition is
"upcoming" vs "past". Do not assume the model's training-cutoff year.
Workflow
Step 0 — Establish the anchor date
Determine today's date (from the environment/context). All "future vs past"
decisions are relative to it. State the anchor date in the report metadata.
Step 1 — Analyze input & narrow the scope
Parse the user's request for any of these filters:
- Area / topic — e.g. NLP, CV, ML theory, RL, robotics, HCI, systems,
data mining, speech, multimodal, AI4Science.
- Reputation / tier — CORE rank (A*/A/B) or "top-tier only".
- Difficulty — proxied by acceptance rate (e.g. "only <25% venues").
- Named conferences — if the user already lists venues, skip to Step 2.
- Region / timing — e.g. "conferences with deadlines in the next 6 months",
or "held in Europe".
If the request is under-specified, ask 1–3 concise follow-up questions to
narrow it (offer sensible defaults so the user can decline easily). Example:
To focus the search, which of these should I use?
- Area — all AI, or a subfield (NLP / CV / RL / …)?
- Tier — top-tier (CORE A*) only, or include A/B venues?
- Horizon — only deadlines in the next N months, or the full year?
(If you'd rather not specify, I'll default to the top AI venues across areas.)
Default when the user declines or doesn't answer: the top general AI venues
plus the leading venue(s) for any area they mentioned. See
references/conference-catalog.md for the
curated tier list to draw from.
Step 2 — Build the initial conference list (initial JSON)
From the filters, assemble the candidate list and write the initial JSON
using the schema in references/json-schema.md and
the template assets/conference-data.template.json.
At this stage only metadata + conference names/areas/tier need to be filled;
edition/deadline/trend fields are placeholders to fill in Step 3–4.
Confirm the list with the user briefly ("I'll investigate these N conferences:
…") before the (potentially long) search phase, unless they asked you to just
go.
Step 3 — Research each conference: the UPCOMING edition first
For each conference, search for the next (future) edition relative to the
anchor date. Query patterns that work well:
"<CONF> <year> call for papers", "<CONF> <year> important dates",
"<CONF> <year> submission deadline", "<CONF> <year> paper deadline".
- Then open the official site / CFP page to confirm; aggregators can be
stale or wrong.
When exact info is found, record in the conference's upcoming_edition:
year, location (city, country; note if virtual/hybrid), venue if known.
dates: conference start/end.
deadlines: every stage — abstract registration, full paper, supplementary,
rebuttal, author response, notification, camera-ready, workshop/tutorial
proposals, etc. Keep the raw text + AoE flag + confirmed: true.
special_sessions: special tracks, new-this-year themes, datasets & benchmarks
track, position papers, findings, industry track, journal-to-conference, etc.
call_for_papers_url and website.
data_confidence: "confirmed" and source_links.
If no future edition is announced yet, leave upcoming_edition.data_confidence
as "approximate" and fill it via inference in Step 4.
Step 4 — Historical anchor: last 5 editions → trend + inference
For each conference, gather the last 5 editions (most recent past years):
- Populate
acceptance_rate_trend with {year, submissions, accepted, acceptance_rate, source} per year — as many of the 5 as are available.
- If the upcoming edition's deadlines were not found in Step 3, infer
the approximate deadline window from the historical pattern (e.g. "abstract
deadline has fallen in the third week of May for the last 4 years → est.
~mid-May "). Write these into
upcoming_edition.deadlines with
confirmed: false and set data_confidence: "approximate". Always flag
inferred dates clearly in both JSON and report.
Step 5 — Finalize JSON
Write the complete JSON to conferences.<anchor-date>.json (or a path the
user specifies). Validate it against the schema: every conference has a name,
tier, website; every deadline has a stage + confirmed flag; every trend/edition
row that carries data also carries a source link.
Step 6 — Produce outputs
- Answer directly in chat: a compact table or list of the most
time-sensitive items (nearest deadlines first), plus the short summary.
- Write the Markdown report using
assets/report.template.md:
- A 3–5 sentence summary synthesizing what you found (nearest deadlines,
notable new tracks, acceptance-rate direction).
- A per-conference breakdown (deadlines table, location, special sessions,
links, acceptance-rate trend).
- A clearly-labeled "Approximate / inferred" section for anything not
confirmed.
- A Sources list.
Output file naming
- Data:
conferences.<YYYY-MM-DD>.json
- Report:
conference-report.<YYYY-MM-DD>.md
(Use the anchor date so successive runs are comparable / diffable.)
Quality checklist before finishing
1---2name: conference-watch3description: Watch and report on upcoming AI/ML conferences: submission deadlines (every stage), dates, location, special sessions / calls for papers, official links, and a 5-year acceptance-rate trend. Use when the user asks about future AI conference deadlines, wants to plan submissions, compare venues, or track a set of conferences by area/reputation/difficulty. Works in any agent that has a web-search / web-fetch capability (Claude Code, Codex, etc.).4license: MIT5---67# ConferenceWatch89Produce an accurate, well-sourced snapshot of the AI/ML conferences a user cares10about — with **every submission deadline stage**, dates, location, special11sessions / CFP, official links, and a **5-year acceptance-rate trend**.1213Two artifacts are always produced:141. A JSON dataset (one object per conference) — the structured source of truth.152. A human-readable Markdown report with a short summary.1617---1819## Guiding principles2021- **Never invent dates.** A deadline goes into the JSON only if you found it on22 an official/authoritative source. If you infer from historical patterns, mark23 it `approximate` and say so explicitly in the report.24- **Cite everything.** Every edition and every acceptance-rate number carries a25 `source_links` entry. Prefer official conference sites and CFP pages; use26 aggregators (see references) as leads, then confirm on the official page.27- **Timezones matter.** Record the raw deadline text (e.g. "May 22, 2026 AoE").28 Most AI venues use **AoE (Anywhere on Earth, UTC-12)**. Keep the AoE flag.29- **Today is the anchor.** Use the current date to decide which edition is30 "upcoming" vs "past". Do not assume the model's training-cutoff year.3132---3334## Workflow3536### Step 0 — Establish the anchor date37Determine today's date (from the environment/context). All "future vs past"38decisions are relative to it. State the anchor date in the report metadata.3940### Step 1 — Analyze input & narrow the scope41Parse the user's request for any of these filters:42- **Area / topic** — e.g. NLP, CV, ML theory, RL, robotics, HCI, systems,43 data mining, speech, multimodal, AI4Science.44- **Reputation / tier** — CORE rank (A*/A/B) or "top-tier only".45- **Difficulty** — proxied by acceptance rate (e.g. "only <25% venues").46- **Named conferences** — if the user already lists venues, skip to Step 2.47- **Region / timing** — e.g. "conferences with deadlines in the next 6 months",48 or "held in Europe".4950If the request is under-specified, **ask 1–3 concise follow-up questions** to51narrow it (offer sensible defaults so the user can decline easily). Example:5253> To focus the search, which of these should I use?54> 1. **Area** — all AI, or a subfield (NLP / CV / RL / …)?55> 2. **Tier** — top-tier (CORE A*) only, or include A/B venues?56> 3. **Horizon** — only deadlines in the next N months, or the full year?57> (If you'd rather not specify, I'll default to the top AI venues across areas.)5859**Default when the user declines or doesn't answer:** the top general AI venues60plus the leading venue(s) for any area they mentioned. See61[references/conference-catalog.md](references/conference-catalog.md) for the62curated tier list to draw from.6364### Step 2 — Build the initial conference list (initial JSON)65From the filters, assemble the candidate list and **write the initial JSON**66using the schema in [references/json-schema.md](references/json-schema.md) and67the template [assets/conference-data.template.json](assets/conference-data.template.json).68At this stage only `metadata` + conference names/areas/tier need to be filled;69edition/deadline/trend fields are placeholders to fill in Step 3–4.7071Confirm the list with the user briefly ("I'll investigate these N conferences:72…") before the (potentially long) search phase, unless they asked you to just73go.7475### Step 3 — Research each conference: the UPCOMING edition first76For each conference, search for the **next (future) edition** relative to the77anchor date. Query patterns that work well:78- `"<CONF> <year> call for papers"`, `"<CONF> <year> important dates"`,79 `"<CONF> <year> submission deadline"`, `"<CONF> <year> paper deadline"`.80- Then **open the official site / CFP page** to confirm; aggregators can be81 stale or wrong.8283When exact info is found, record in the conference's `upcoming_edition`:84- `year`, `location` (city, country; note if virtual/hybrid), `venue` if known.85- `dates`: conference start/end.86- `deadlines`: **every stage** — abstract registration, full paper, supplementary,87 rebuttal, author response, notification, camera-ready, workshop/tutorial88 proposals, etc. Keep the raw text + AoE flag + `confirmed: true`.89- `special_sessions`: special tracks, new-this-year themes, datasets & benchmarks90 track, position papers, findings, industry track, journal-to-conference, etc.91- `call_for_papers_url` and `website`.92- `data_confidence: "confirmed"` and `source_links`.9394If no future edition is announced yet, leave `upcoming_edition.data_confidence`95as `"approximate"` and fill it via inference in Step 4.9697### Step 4 — Historical anchor: last 5 editions → trend + inference98For each conference, gather the **last 5 editions** (most recent past years):99- Populate `acceptance_rate_trend` with `{year, submissions, accepted,100 acceptance_rate, source}` per year — as many of the 5 as are available.101- If the upcoming edition's deadlines were **not** found in Step 3, **infer**102 the approximate deadline window from the historical pattern (e.g. "abstract103 deadline has fallen in the third week of May for the last 4 years → est.104 ~mid-May <next_year>"). Write these into `upcoming_edition.deadlines` with105 `confirmed: false` and set `data_confidence: "approximate"`. **Always flag106 inferred dates clearly** in both JSON and report.107108### Step 5 — Finalize JSON109Write the complete JSON to `conferences.<anchor-date>.json` (or a path the110user specifies). Validate it against the schema: every conference has a name,111tier, website; every deadline has a stage + confirmed flag; every trend/edition112row that carries data also carries a source link.113114### Step 6 — Produce outputs1151. **Answer directly** in chat: a compact table or list of the most116 time-sensitive items (nearest deadlines first), plus the short summary.1172. **Write the Markdown report** using118 [assets/report.template.md](assets/report.template.md):119 - A 3–5 sentence **summary** synthesizing what you found (nearest deadlines,120 notable new tracks, acceptance-rate direction).121 - A per-conference breakdown (deadlines table, location, special sessions,122 links, acceptance-rate trend).123 - A clearly-labeled **"Approximate / inferred"** section for anything not124 confirmed.125 - A **Sources** list.126127---128129## Output file naming130- Data: `conferences.<YYYY-MM-DD>.json`131- Report: `conference-report.<YYYY-MM-DD>.md`132(Use the anchor date so successive runs are comparable / diffable.)133134## Quality checklist before finishing135- [ ] Anchor date stated; upcoming vs past decided against it.136- [ ] Every confirmed deadline has a source link; timezone/AoE captured.137- [ ] Inferred/approximate items are flagged in **both** JSON and report.138- [ ] Acceptance-rate trend covers up to 5 recent years with sources.139- [ ] JSON validates against the schema; report summary written.140- [ ] Missing data is shown as `null` with a note — never fabricated.