I found the reason why it works on the edge version but not on the stable version.
It’s because of the newly added attribute in the query result: range, which I used in the AST integration of the Kanban Board.
Here are the object attributes of a simple task query:
Of course, I could calculate the range in Lua to make it backwards compatible. But the question is: is it worth it? Maybe the edge release will be integrated into the stable release within the next few days, and then we would end up with unwanted clutter in the code just to maintain backwards compatibility with the current stable release.
@zef do you have any information on when the edge version will be integrated into the stable release, especially regarding the new range attribute for task queries? Do you have a planned timeframe (next week, next month, or not within the next couple of months?) so I can decide whether it’s worth integrating backwards compatibility into the Kanban code or if I should simply wait for the stable release integration?
It may still be a few weeks. Again, my bad. My intention was to stay backwards compatible, which is why I decided to keep pos as is and addrange. But I somehow missed that I had already removed toPos, so actually let me add that back on edge. It'd be deprecated, but that way stuff keeps working.
local version = system.getVersion()
local date = string.match(version, "(%d%d%d%d%-%d%d%-%d%d)")
This also clutters the code but can be useful in certain circumstances (eg: when the class of the attribute name has been modified [sb-atom->sb-attribute-name] since 2026-02-04).
After testing it on stable. I can confirm that on Stable it doesn't work, you need to run the edge version for this to work. Will add it to the known issues later.
[Update]
Just pushed the fix to support backwards compatibility with pos & toPos from the stable-release. @malys you can test it out also on SB stable-release (2.4.1-0-g3e1f03b) now, it should work.
FIXED - if the task completed in the modal window or in the markdown [x] it wont update the status attribute if you manually update the task in the markdown make sure to reload the widget for the changes to take effect
FIXED - if the status is edited to “done” it won’t complete the task, it only moves the task to the done column
I've been working on a Kanban Board widget for SilverBullet over the past week, and after ironing out the last few known bugs I'm happy to move it from Beta Preview into a proper stable release. Here's what it can do and what to keep in mind.
Customisable columns — define your own workflow stages with labels, emoji, and optional accent colours per column
Drag & drop — move cards between columns; status attribute and checkbox state update automatically in the source markdown
Bidirectional markdown sync — tick [x] directly in the markdown and the card moves to the done column on the next widget load; uncheck it and it moves back
Quick Edit modal — edit task name, any attribute, and completion state without leaving the board
Custom card fields — choose which task attributes are shown on each card
HideKeys — display an attribute value without showing its label (handy for IDs or long text)
Filter & sort controls — live filter across all columns, sort by any attribute ascending or descending
WikiLink & hashtag support — both are parsed correctly in card titles and are preserved when you edit through the modal
Mobile-friendly — columns hold their minimum width and the board scrolls horizontally on narrow screens instead of squishing
Known Limitations
Emoji-style date attributes (e.g. 📅 2026-04-02) are not supported and are not planned
After System: Reload, if a Kanban Board widget is on the page, also reload the page itself (Client: Reload UI, Ctrl+R, or F5)
Manual markdown edits to a task require a widget refresh to appear on the board
Attribute values are always wrapped in double quotes - this is intentional, not a bug
Quick Setup
Install the Library or use my Repo in the Library Manager and then drop the widget code into any of your page :
In the Kanban board, it shows up as Priority: A instead of "Buy shampoo" because [priority: A] is up front., even though this is valid SB syntax. Would it help if I filed a bug report about this?
No, it wouldn't help much^, because i have my own ToDo(bug monitoring) lists in silverbullet.
i didn't consider that synthax (Why would you even use that synthax????).
But I noted it now in my ToDos. Although in silverbullet it seems a valid synthax but in because every synthax needs to be considered separately, i considered only synthaxes where Task Name follows the * [ ] like:
* [ ] Task Name [attributes1] [attributes2]
[more_attributes]
[even_more_attributes]
I will see what i can do to cover this too, but it would be pretty hard to cover all possibilities. It would be much easier if you change your tasks, and use it as is
i got it working somehow to correctly parse attributes even if they are in front of the task-description and extract the description correctly for the Modal and Card.
Need to do some more testing and if everything goes well, it'll be added in the next release later today or tomorrow.
If you have a way to have it render this way even if the priority is at the end of task, do let me know, and I'd be happy to consider switching to it.
I don't currently have a solution that'd let me switch to putting the priority attribute at the end, so this is very cool!
I can’t think of a clear use case for that, and I’m also not confident it would be supported by SB syntax now or in the future, so my answer would be no.
More broadly, though, in a system like SilverBuller where user code and libraries are such a central part of the experience, it’s easy for the ecosystem to drift into a state where individual libraries unintentionally account for only a subset of valid user syntax. Over time, this can create friction: users often need multiple libraries to accomplish what they want, only to discover edge cases, incompatibilities with base syntax, conflicts with other libraries, or assumptions about fixed attribute names, as a few examples. The result can be a fragmented, frustrating experience where limitations are learned only through trial and error.
I want to be clear that I’m not pointing to your libraries as an example of this. Quite the opposite. Your work demonstrates how far AI-assisted development can enable genuinely useful features and be amazingly helpful in short order! That said, the recent issue brought this broader ecosystem concern to mind, and I wanted to share the thought with the wider SB community.
I'm wanting them to render this way at the source line, and not just via a query. I use this CSS. This is why I'm putting priority: up front: so it renders there on the source line:
ok nvm then, forget what i said. I thought you wanted a query or some sort of thing.
so it's more like a visual preference and an aesthetic choice and nothing functional. i'll test the parsing and then i will push the update with the fix for supporting attributes in front of the description.