A Terminal, Calendar Embeds, In-app Updates and more!
Added
-
A terminal in a tab. A terminal button on the icon rail and in the status bar opens a terminal tab, running your login shell in the vault’s folder (PowerShell on Windows). It keeps its shell and scrollback when you switch tabs, and follows Pellet’s theme. Desktop only.
-
A calendar inside a note. A
pellet-calendarblock draws a month, week or agenda of your tasks, and optionally your events, right in the note. It takes the samefilter:andwhere:lines as a table embed. Type/calendarview, or use the Calendar view’s new Embed button; click a task to open it. -
In-app updates. Settings › General › About has Check for updates, and Restart to update once one is downloaded. Automatic updates is a separate switch, off by default; with it off, Pellet only checks when you ask. This version is the first with the updater, so it has to be downloaded once by hand. Desktop only, and on Linux for the AppImage.
-
Search in Settings. A search field heads the list of sections. Pick a result and Settings opens that section, scrolls to the setting and highlights it. ⌘F / Ctrl+F jumps to the field.
-
Open Markdown files from your computer. Choose Pellet in Open With for
.mdfiles, or make it the default app. A file inside one of your vaults opens in that vault at the note; any other file opens on its own, and Add to vault… moves or copies it in. File › Open File… and Open Recent are new too. Desktop only. -
Highlights in one file per book. A switch in Settings › Folders puts new PDF and EPUB highlights in one note per book, grouped by page or chapter, instead of one note per highlight. Merge existing highlights moves your older highlight notes into their book’s file, telling you first how many notes and links are involved.
-
More in the
/menu./callout,/footnote,/diagram(a starter Mermaid flowchart) and/embed. The menu also finds commands by the words people type for them, such as/todo,/hrand/mermaid. -
Notes in the Kanban backlog. The backlog has a Notes tab with every note in the vault, searchable and filterable. Drag a note onto a column and it becomes a task on that board, staying in its folder.
-
Cover images on board cards. Board settings › Card cover can show the task’s banner, the first image in the task, or both.
-
Checklist and subtasks on board cards. Board settings › Card sections can list a task’s checklist and subtasks at the bottom of its card, Off, Collapsed or Open. Tick items right on the card.
-
More file actions on a board card. A card’s menu has the same file actions as a canvas card: open in a new tab, export, rename, move, reveal, copy link and archive.
-
Switch an AI provider off. Each provider in Settings › AI & MCP › Providers has an on/off switch. A feature that was using a provider you switch off, such as Paper or audio transcription or semantic search, goes to None rather than to another provider.
-
Local API: Allowed origins in Settings. Settings › AI & MCP › Allowed origins lists the web origins the local API accepts, one per line. A line that can never match is shown in red.
-
Local API: create a note.
POST /api/notescreates a note from a title, content, folder, tags and a source URL, following the same rules as MCPcreate_note. -
Local API: save an image or file into the vault.
POST /api/attachmentssaves a file of up to 8 MB into your attachments folder under a name that isn’t taken, and returns the embed to paste. -
Local API: list task groups.
GET /api/groupsreturns the group names of the tasks the client is allowed to see. -
MCP: the 2026-07-28 protocol revision. Clients that speak the new stateless revision connect to the same
/mcpendpoint, and so does the stdio bridge. Clients on the earlier revisions are served exactly as before. -
MCP and REST: a rate limit on tool calls and writes. Tool calls and the REST writes share a budget per client: 300 in a burst, then 5 a second — far past anything a person drives, enough to stop a runaway agent loop.
-
MCP: task rows carry their own properties. A task’s extra frontmatter (
estimate,project, …) now appears undercustom, so what acustom:<key>condition filters on is visible in the result. -
MCP: structured results.
get_notedeclares an output schema, and it and the enveloped listings return structured content beside the text. -
MCP: paged listings. The listing tools accept
envelope: trueand then report how many matched and whether the list was cut, with a cursor for the next page. -
MCP:
response_formaton the listing tools.list_notesandquery_tasksacceptconcise, which drops the long fields and halves the size of each row.detailedstays the default. -
MCP: tool titles and annotations. Every tool now has a short title and the standard read-only, destructive and idempotent hints, so a client can label tools and ask before a delete.
-
MCP: server instructions. Connecting hands the client a short paragraph for its model: treat the vault as data, which tools to prefer, and how to cite a note.
Changed
-
“Overdue” means past due and not done, everywhere. The Table filter’s “is overdue” and MCP’s
overdueno longer match a completed, skipped or closed task — the rule the status bar, task panel and calendar already used. -
Touch screens: a folder’s expand arrow is on the right. On phones and the iPad the arrow now sits at the right edge of the row, a thumb wide, so aiming for it no longer opens the folder style picker. The desktop is unchanged.
-
Ollama: pick from the server’s models. Ollama’s row lists every model on the server with a checkbox, and each feature offers only the checked models that can do its job. When none can, the feature says what’s missing, such as “No vision model”.
-
Checklist tab: the scope switch reads In notes / Anywhere / In tasks. Same behaviour, clearer words beside the new Notes tab.
-
Menus that open from a button stay on screen. A menu that grows now moves above or below its button to fit, and scrolls when neither side has room.
-
MCP: seven tools consolidated.
list_tasks,complete_task,move_task_to_column,archive_note,unarchive_note,add_canvas_nodeandconnect_canvas_nodesare folded intoquery_tasks,update_task,set_archivedandedit_canvas. The old names still work in this release and will be removed in 0.24.0. -
MCP: tool schemas close their objects. Every tool’s input schema now rejects unknown fields, so strict clients can validate arguments. Accepted arguments are unchanged.
-
MCP: name a Kanban board by its name.
query_taskstakes a board’s name as well as its id, and an unknown board is an error that lists the boards you can use.
Fixed
-
Sync on iPhone and iPad: changes made just before leaving the app are sent. Pellet now finishes syncing as it goes to the background. On every platform, an edit made during a sync is sent straight after it.
-
Sync: no conflict copy when two devices check off the same habit day. Matching check-offs of the same day now resolve to one file.
-
A reopened recurring task shows on its own day. It now appears in the Tasks panel and the Calendar’s List mode, and counts as due today.
-
Converting a task to a note no longer moves the file. It stays in its folder under its own name.
-
Reading view: paragraphs are spaced again, and Line breaks applies at once. A blank line draws a gap between paragraphs again, and switching Line breaks redraws an open note straight away.
-
A task link on a list line no longer slides under its circle. The title now sits clear of the task’s status circle.
-
A link to a note that has only just arrived opens it. A
pellet://link to a file copied in a moment earlier no longer warns that the note isn’t in the vault. -
Checklist tab: the Folder filter no longer offers “(vault root)”. It filtered nothing; with no folder picked, root-level items already show.
-
A rejected API key reads as rejected. The pill now says “Key rejected” in red, or “Test failed” in amber, instead of a green “Key saved”.
-
Providers: Ollama’s status survives reopening Settings. It checks the server when the card opens instead of saying “Not tested”.
-
MCP:
create_notewith no folder respects the folder limit. It wrote to the vault root even with a folder limit set. -
MCP:
list_groupsandlist_tagsrespect the folder limit. Names from folders outside the limit no longer show through. -
MCP: a tool that fails answers with an error result. Errors come back as a result the model can read, as the MCP spec asks, instead of a protocol error many clients hide.
-
MCP: clients asking for protocol version 2025-11-25 get it. It is now the newest version the handshake offers.
-
MCP:
list_notesno longer counts drawings as notes. Canvases, whiteboards and paper pages are kinds of their own, matching the app. -
MCP:
query_tasksstatus conditions take the values task rows report. A condition onopennow matches the tasks that reportopen.