Releases: QoderAI/Qoderian
Release list
Qoderian 1.0.15
Installation
Download main.js, manifest.json, and styles.css below, then place
them in your vault's plugin directory:
<your-vault>/.obsidian/plugins/qoderian/
├── main.js
├── manifest.json
└── styles.css
Then enable the Qoderian plugin in Obsidian settings.
The MIT license and attribution notice are embedded at the top of
main.js; see LICENSE
and NOTICE in the repository.
What's Changed
Added
-
An opt-in New session tabs toggle in Settings → Experimental changes how
the session tabs above the composer behave:- Tabs show the conversation title with a close button that appears on hover
instead of a number. - New sessions and conversations picked from the history list each open in
their own tab, so the session in the active tab is never replaced; once the
tab limit is reached the notice points at the setting that raises it. - With many sessions the row scrolls instead of squeezing every tab, follows
the active session, and keeps the new-session and history buttons pinned. - The new-conversation button that reset the active tab, and its
New session (in current tab)command, are hidden;/clearstill resets
the current session.
The toggle is off by default; off keeps the numbered tabs and the existing
interactions unchanged. - Tabs show the conversation title with a close button that appears on hover
-
When the selected model is at capacity, the waiting indicator now says so
with the queue position and estimated wait, e.g.
Model is queued (3 ahead · ~12s wait)..., and returns to the usual
wording as soon as the request leaves the queue. -
Images an agent embeds in a reply now offer Copy image in their
right-click menu, which puts the bitmap on the system clipboard ready to
paste into any application or another note.
See CHANGELOG.md for the full history.
Qoderian 1.0.14
Installation
Download main.js, manifest.json, and styles.css below, then place
them in your vault's plugin directory:
<your-vault>/.obsidian/plugins/qoderian/
├── main.js
├── manifest.json
└── styles.css
Then enable the Qoderian plugin in Obsidian settings.
The MIT license and attribution notice are embedded at the top of
main.js; see LICENSE
and NOTICE in the repository.
What's Changed
Changed
- The usage button — the gauge that opens your plan and add-on quota panel —
moved from the composer's icon row into the view header, beside the feedback
and settings buttons. Its panel now opens downward from the header; the new
tab, new conversation, and history buttons stay in the composer row.
See CHANGELOG.md for the full history.
Qoderian 1.0.13
Installation
Download main.js, manifest.json, and styles.css below, then place
them in your vault's plugin directory:
<your-vault>/.obsidian/plugins/qoderian/
├── main.js
├── manifest.json
└── styles.css
Then enable the Qoderian plugin in Obsidian settings.
The MIT license and attribution notice are embedded at the top of
main.js; see LICENSE
and NOTICE in the repository.
What's Changed
Added
- An opt-in Memory toggle in Settings → Experimental lets the Qoder CLI save
and reload reusable information across conversations. Memories live in the
Qoder CLI memory directory and are shared with the terminal CLI; toggling
it restarts the running session once.
See CHANGELOG.md for the full history.
Qoderian 1.0.12
Installation
Download main.js, manifest.json, and styles.css below, then place
them in your vault's plugin directory:
<your-vault>/.obsidian/plugins/qoderian/
├── main.js
├── manifest.json
└── styles.css
Then enable the Qoderian plugin in Obsidian settings.
The MIT license and attribution notice are embedded at the top of
main.js; see LICENSE
and NOTICE in the repository.
What's Changed
Added
- The agent now learns which external context directories are attached: the
message you send right after adding or removing one carries the current
list, so the agent can use those folders without you referencing every file. - An update icon appears in the view header when GitHub has a newer stable
release; click it to open Qoderian's plugin page, where Obsidian's update
button lives. - With the message input empty, ArrowUp walks back through the messages you
sent in this conversation and ArrowDown walks forward again, so you can
recall, edit, or resend an earlier prompt without scrolling the transcript.
Changed
- The resize grip above the message input stays hidden until the pointer is
inside the input area or the composer has focus, so the input's top edge
reads as a plain border while you are reading or scrolling.
Removed
- The hover tooltip on the message input's resize grip; the resize cursor and
the accent highlight while dragging already signal what the grip does.
See CHANGELOG.md for the full history.
Qoderian 1.0.11
Installation
Download main.js, manifest.json, and styles.css below, then place
them in your vault's plugin directory:
<your-vault>/.obsidian/plugins/qoderian/
├── main.js
├── manifest.json
└── styles.css
Then enable the Qoderian plugin in Obsidian settings.
The MIT license and attribution notice are embedded at the top of
main.js; see LICENSE
and NOTICE in the repository.
What's Changed
Added
- Models you configured as bring-your-own-key in qodercli — third-party
models and self-defined providers with a custom base URL — now show up in
the model selector and can be used from the composer.
See CHANGELOG.md for the full history.
Qoderian 1.0.10
Installation
Download main.js, manifest.json, and styles.css below, then place
them in your vault's plugin directory:
<your-vault>/.obsidian/plugins/qoderian/
├── main.js
├── manifest.json
└── styles.css
Then enable the Qoderian plugin in Obsidian settings.
The MIT license and attribution notice are embedded at the top of
main.js; see LICENSE
and NOTICE in the repository.
What's Changed
Added
- A settings button in the view header opens Qoderian's settings window in
place, instead of navigating into Obsidian's settings. - Show the added external context path after dropping a folder or file, surface
rejected additions, and show the context count even for a single path. - Drag files and folders from your operating system (e.g. macOS Finder) onto
the composer to add them as external context. Dropped folders join the
external context as before, dropped images still attach to the message, and
a dropped file's content is no longer pasted into the input as plain text.
Fixed
- Hover dropdowns no longer lose their leading characters when their icon
sits near the left edge of the input toolbar or the sidebar is narrow. The
external-context and MCP server panels now shift back inside the toolbar
(and shrink as a last resort) instead of overflowing the chat container's
clipped edge.
See CHANGELOG.md for the full history.
Qoderian 1.0.9
Installation
Download main.js, manifest.json, and styles.css below, then place
them in your vault's plugin directory:
<your-vault>/.obsidian/plugins/qoderian/
├── main.js
├── manifest.json
└── styles.css
Then enable the Qoderian plugin in Obsidian settings.
The MIT license and attribution notice are embedded at the top of
main.js; see LICENSE
and NOTICE in the repository.
What's Changed
Added
-
Draggable composer height: grab the thin grip above the message input to
grow or shrink it between 140 px and three quarters of the chat view. The
grip also answers ArrowUp/ArrowDown for keyboard users, and double-click
or Home returns to the automatic content-driven height. -
Feedback submission from inside Obsidian: a question-bubble button in the
view header (and a "Submit feedback" command) opens a dialog that sends
your note to the Qoder team throughqodercli feedback, optionally
attaching the current vault's runtime diagnostics and the active session
id. Submissions are always explicit — nothing is reported automatically —
and a successful one copies the server request id to your clipboard.
See CHANGELOG.md for the full history.
Qoderian 1.0.8
Installation
Download main.js, manifest.json, and styles.css below, then place
them in your vault's plugin directory:
<your-vault>/.obsidian/plugins/qoderian/
├── main.js
├── manifest.json
└── styles.css
Then enable the Qoderian plugin in Obsidian settings.
The MIT license and attribution notice are embedded at the top of
main.js; see LICENSE
and NOTICE in the repository.
What's Changed
Fixed
- Qoderian tabs no longer keep Obsidian's renderer busy while idle. The
context row above the composer re-checked its chip layout on every display
frame for as long as Obsidian was visible, once per open tab, and each frame
did more work when a note was attached. The row now re-measures only when
its chips or width change.
See CHANGELOG.md for the full history.
Qoderian 1.0.7
Installation
Download main.js, manifest.json, and styles.css below, then place
them in your vault's plugin directory:
<your-vault>/.obsidian/plugins/qoderian/
├── main.js
├── manifest.json
└── styles.css
Then enable the Qoderian plugin in Obsidian settings.
The MIT license and attribution notice are embedded at the top of
main.js; see LICENSE
and NOTICE in the repository.
What's Changed
Added
-
In-app sign-in when the Qoder CLI is not authenticated: the model selector
now shows a sign-in panel that runs the CLI device flow inside Obsidian —
the authorization page opens once per attempt, with open-link, copy-link and
cancel controls, localized status and error messages in all ten locales, and
an automatic model-catalog refresh once sign-in succeeds — so signing in no
longer requires a terminal. -
Message timestamps, matching New Qoder: each user bubble shows when it was
sent, and each assistant reply shows one time under the whole response next
to the completion line. Both reveal on hover so idle conversations stay
uncluttered, and replies that were interrupted or errored are timed too. -
Collapsed activity for finished turns: once a reply reaches its final
result, the thinking, commentary, and tool-call rows that led there fold
into a single expandable "Execution steps" line above the answer, so long
turns stay compact while the result stays in view. The stream stays flat
while a turn is running, turns that end on a tool call stay expanded, and
saved conversations reopen with the same collapsed state. -
Turn change summaries: after a reply finishes, the files it edited collapse
into a single card under the response — file count, +/- stats and the first
few paths — instead of scattering across the tool call log. Clicking the
card opens a read-only modal with the per-file diffs, and saved
conversations show the same card when reopened.
Changed
-
Startup with many saved sessions is now much faster: session metadata is
read in parallel and legacy edition history files are probed once per
startup instead of repeatedly blocking the interface, so vaults with
hundreds of sessions no longer stall while Qoderian loads. -
The composer permission picker now mirrors New Qoder's three tiers —
Ask approval, Auto approval, and Full access — and its labels and
descriptions are localized across all ten supported locales instead of
being hardcoded English. Plan mode is no longer offered in the picker,
but the button still reports it when the CLI switches into planning.
Removed
-
The
Allow editspermission tier. Existing settings that selected it are
migrated toAuto approval, which is also the new default for fresh
installations. -
Slash commands that cannot run inside Obsidian are no longer offered in the
command popover. Each interactive-only one used to burn a turn and come back
with a CLI-internal error:about,agents,btw,commands,continue,
crontab,diff,editor,effort,export,fast,help,hooks,mcp,
memory,model,plan,plugins,privacy,release-notes,remote-env,
security-settings,settings,skills,status,themeandusage.
Commands that act on the CLI process or session itself —login,logout,
quit,remote-control,setup-githubandupgrade— are hidden too, since
running one from the plugin would tear down the runtime the plugin depends on.
So are the terminal-UI-only ones —shortcuts,statusline,vimand
voice— which run fine in the CLI but only affect a terminal Obsidian does
not have, and the ones a Qoderian surface already provides —copy,
permissions,rewind,context-window,branch,toolsandrename
(per-message copy and rewind buttons, the permission picker, the model editor's
context tier, fork, the MCP server selector, and the history rename button;
renameonly retitles the CLI session, which Qoderian never displays) — plus
goal,docs,claim,kanban,workflows,feedback,review,profile,
subtaskandtasks, which the Qoderian chat workflow does not need (kanban
additionally requires an unconfigured external service, workflows is terminal
automation, feedback is a terminal flow), andadd-dir, which the
external-context selector already provides.
Fixed
-
The permission dropdown highlighted a stale tier after the mode changed
outside the dropdown (switching chat tabs, or the CLI reporting a
different mode), leaving the button and the highlighted entry
disagreeing. -
A slash command that the CLI refuses because it needs an interactive
terminal now reports that in plain, localized language instead of
surfacingExiting due to command result that is not supported in non-interactive mode.This also covers commands not yet filtered out of
the popover. -
Pasting a large block of text into the composer painted it outside the
input box, spilling over the toolbar and past the bottom of the sidebar.
The input box now grows with the pasted text up to its usual height cap,
scrolls internally beyond that, and shrinks back when the text is cleared.
See CHANGELOG.md for the full history.
Qoderian 1.0.6
Installation
Download main.js, manifest.json, and styles.css below, then place
them in your vault's plugin directory:
<your-vault>/.obsidian/plugins/qoderian/
├── main.js
├── manifest.json
└── styles.css
Then enable the Qoderian plugin in Obsidian settings.
The MIT license and attribution notice are embedded at the top of
main.js; see LICENSE
and NOTICE in the repository.
What's Changed
Added
- Multi-message send queue in the chat composer: while a response is
streaming, further sends stack into a collapsible panel above the
composer (aligned with the Qoder IDE send queue). Each entry shows a
drag handle for reordering plus edit (withdraw into the composer) and
delete actions, and entries drain one per turn end in FIFO order. - Steer an in-flight turn from the send queue (Codex-style): while a
response is streaming, each queued entry without images gains a Steer
action that interrupts the running turn and handles the message
immediately, rendering it as a user message instead of waiting for the
turn to end. - Drag notes or folders from the Obsidian file explorer into the chat
composer: they are inserted as@note/@folder/context mentions at
the caret, with duplicates skipped and a drop overlay while dragging. @file/@folder/references render as inline chips in the composer
and in sent message bubbles; clicking a chip opens the note (both
surfaces), and a composer chip can be removed via its × button or
atomically with Backspace/Delete.
Changed
- Stopping a streaming turn now pauses the send queue (Codex-style):
queued messages are preserved but no longer auto-sent, the panel header
switches to a "queue paused" notice with a Resume action, and resuming
(or clearing the queue) restores the normal one-per-turn drain. - Editing a queued message now replaces the composer content instead of
appending to it.
Fixed
- Mention chips in message bubbles now resolve paths containing spaces
(longest-match vault verification) instead of truncating at the first
space. - Dropping a vault note or folder into the composer no longer pastes the
rawobsidian://openURI next to the mention, and the inserted mention
chipifies like dropdown insertions. - The queue's Steer action now tracks the streaming state: it no longer
goes missing on remaining rows after queued messages auto-drain, and no
longer lingers after a turn ends through plan approval paths. - Vault images dragged into the composer are now inserted as
@path
mentions just like notes (chipified, no attachment preview); mixed
drags combine note, folder, and image mentions, and only truly
unsupported file types are reported as ignored. - The settings language row now updates its own label and description
immediately when the display language is changed, instead of keeping
the previous language's text until the settings tab is reopened. - Steering an in-flight turn now interrupts it immediately instead of
queuing the message as a follow-up turn that only arrives after the
running response finishes, and the interrupted turn no longer shows an
error receipt. - Send failure paths (agent service unavailable or initialization
failure) now fully clean up the streaming state and queue indicator,
so the composer no longer stays stuck as "streaming" after an early
send error. - Steering a queued message no longer drops or misplaces the opening of
the steered reply: chunks that arrive while the chat swaps streaming
bubbles are buffered and replayed into the fresh bubble in order. - The steered reply streams incrementally again: the interrupted turn's
receipt no longer triggers a context-usage request that stalled the
response consumer, which made the whole reply appear only at the end. - Stopping a streaming turn (Stop or Esc) completes it again: the chat
leaves the streaming state and the paused send queue can be resumed,
instead of staying stuck until the next message. Steered turns keep
their live hand-off and are unaffected.
See CHANGELOG.md for the full history.