Repository navigation
1.297.0
1.297.0 — A first PDF import anyone can finish
This release finishes the first-run PDF path. A new user who has never used
Obsidian and has never made an AI key now sees that the file import needs AI,
can paste questions offline instead, and can connect a provider through a short
wizard that chooses a model for them and tests it before the importer opens.
What a new user gets
- Honest labels at every entry point. The empty Practice screen says
Import files (needs AI) and explains that practice, cards and timed tests
work offline. Paste questions instead (works offline) sits directly beside
it and opens Quick add. The top-of-Practice shortcut reads Import questions
(needs AI) and a Paste questions (offline) button is next to it. - A beginner connection wizard. The setup screen and the import help window
preselect Anthropic (Claude) — recommended, show a visible Create a key
button that opens that provider's key page in the browser, and explain what
the page is for. There is no required model-name field on the happy path. - Fetch models chooses for you. Fetch models reads the provider's own
list and picks a stable saved model, the provider default, a preferred family
such as Sonnet or GPT-5, or the first chat model. The chosen model appears in
a dropdown and is saved. - Tested before continuing. Test connection sends one short request and
reports the reply. Continue to import stays disabled until a cold start
has a key, a model and a successful test. A saved working setup can continue
without retesting. - Failure is a next step, not a dead end. A rejected key names the problem
and points back to Create a key; an empty or non-chat model list says so;
an offline device says it could not reach the provider and points at the
offline paste route. Every one of those states keeps Paste questions
instead (works offline) on screen. - One implementation.
src/ai-connection.jsowns provider defaults, key
pages, model choice, model fetching and the connection test. The practice
wizard, the import help window and Settings call the same fetch and test
code instead of duplicating it. - Start here says the offline route. The guide's "If you do not have AI"
line and the AP import step now name Quick add questions from pasted
text and say it works offline, instead of telling the reader to write a
question note by hand.
Verification
Focused tests drive a real cold start through the wizard with mocked provider
responses: the recommended provider is preselected, the key is stored, a model
is chosen from the fetched list, the connection is tested, and the importer
opens with AI enabled. Separate tests cover a rejected key, an empty model
list, an offline request, the absence of a free-text model field and the
offline Quick add path writing a note that passes the import checker.
node --test passes 2,557 tests. npm run check is clean across
352 source files; main.js is current at 7,051,745 bytes from
355 modules. No dependency, note schema, provider list or network path
was added; the wizard only uses the existing ApiClient requests.