Skip to content

Releases: dotpm/obsidian-pm

2.1.0

Choose a tag to compare

@github-actions github-actions released this 27 Aug 00:26
b066f60

Highlights

  • Auto-archive: Completed tasks move into the project's archive on their own after a number of days you choose, set once for every project or overridden by a project in its own settings, and the archive completed tasks command does the same sweep right away.
  • Inherited custom fields: Custom fields can be defined once for the whole vault or on a parent project, and every project underneath starts with them. Each project can still rename, retype, or hide a field it inherits, and a field it already had of its own can be merged into the inherited one, values and all.

Added

  • Completed tasks move to the project's archive after the number of days set in the new auto-archive setting (#204)
  • A project can override the auto-archive window in the project settings
  • The archive completed tasks command moves finished tasks into the archive right away
  • A sub-project has the custom fields its parent project defines (#255)
  • Custom fields can be defined for the whole vault, so every project starts with them
  • A project can rename, retype, or hide a custom field it inherits, in the project settings
  • A custom field that duplicates an inherited one can be merged into it, values and all

Fixed

  • Renaming a project from its settings page left its note and folder named after the old title
  • A view failed to load when a note's properties held an invalid value for team members, assignees, tags, or dependencies (#252)
  • A sub-project or subtask nested two levels deep drew a leftover connector line beside it when its parent was the last of its siblings

2.0.0

Choose a tag to compare

@github-actions github-actions released this 25 Aug 20:36
ae47619

Highlights

  • Breaking change: the plugin now requires Obsidian 1.13 or later, so update Obsidian before installing this release.
  • Project overviews: Opening a project now shows its own page, with progress, description, a milestone timeline, sub-projects, and properties. Plus a new setting that can switch this back to opening straight into the task list. It's up to you.
  • Sub-projects and multi-project views: Projects can nest under a parent, and the table, board, and timeline can show a project's subtree, its folder, or the whole vault at once, with their own saved views and filters.
  • A folder per project: Each project now keeps everything together in one folder, and old existing projects migrate to the new structure automatically.
  • Cross-project dependencies: A task can depend on or block work in another project, with its schedule following the dates of the project it depends on.
  • Custom priorities and per-project config: Priorities can be added, renamed, recolored, and reordered, and a project can define its own statuses, priorities, default view, and scheduling behavior in its settings
  • Progress and completion timing: A task's progress can be set directly from 0 to 100, and a completed task shows whether it finished on time or how many days late it was
  • People notes: Assignees and project members can be linked to the person notes in your vault, with avatars, a note created automatically for a new name, and commands that list everything one person is working on
  • Better wikilinks: Names, custom fields, and project links written as wikilinks resolve to the note they point to wherever they show up. We all love those nice obsidian graphs!
  • Improved custom fields style: A custom field now uses the same controls as a task's built-in properties, so a custom date opens the date picker and a custom select shares status's popover, and in the table a link or person field shows as a link or an avatar instead of raw text, and a checkbox renders as a proper checkbox
  • A searchable icon picker: Status, priority, and project icons are chosen from a grid of every icon Obsidian knows, or set to any emoji
  • Settings rework: Settings are grouped by area, with statuses, priorities, team members, and TaskNotes each on their own page, and can be found through Obsidian's own settings search.
  • Tasks in tabs: Tasks can open in a tab instead of a modal, with the task editor hosted as a page of its own
  • TaskNotes import: Tasks, statuses, and priorities can be imported from TaskNotes, including dates, dependencies, subtasks, tags, and archive state
  • A lighter index behind the scenes: The project list, pickers, and due-date reminders read from a lightweight index instead of re-parsing every project file, so they stay quick even in very large vaults
  • Updated sync engine: A task or project open in several tabs or views stays in sync: an edit in one place shows up in all the others right away
Screenshot 2026-08-25 224328 Screenshot 2026-08-25 224356 Screenshot 2026-08-25 224608 Screenshot 2026-08-25 224811 Screenshot 2026-08-25 225353 Screenshot 2026-08-25 224502

Added

  • Assignees and project members can be picked from the person notes already in your vault, so the task links to them and they appear in the graph (#131)
  • A person with no note yet gets one created from the assignee picker, in the new people folder setting
  • Clicking an assignee's avatar opens that person's note
  • The show tasks assigned to a person command lists everything one person is working on, across every project
  • A person note opened in the editor shows that person's tasks with the show tasks assigned to this note command
  • The link assignees to their person notes command turns typed names into links to the notes of the same name
  • Opening a project from the project list shows its overview: progress, description, milestones, sub-projects, and properties
  • Clicking a project opens its tasks instead of its overview when the open projects in setting is set to tasks
  • A row, card, or timeline label naming its project opens that project when clicked
  • Projects are listed wherever their files live in the vault
  • A project can sit under another one, chosen in the project settings
  • The project list nests sub-projects under their parent, whose card counts the tasks of the whole group
  • Folders can be left out of the project list with the new excluded folders setting
  • The rebuild project index command looks through the vault for projects again
  • The table, board, and timeline can show several projects at once, chosen from the switcher next to the project name
  • The open all projects command puts every project in the vault in one view
  • Rows, cards, and timeline labels name their project when a view covers more than one
  • Saved views and filters belong to the set of projects on screen, so a project and its sub-projects keep separate ones
  • A task can depend on a task in another project, and its dates follow that one
  • The task editor lists the tasks a task blocks, wherever they live
  • The task menu moves a task and its subtasks to another project
  • A timeline row says when a task depends on something outside the view
  • Priorities can be added, renamed, recolored, and reordered in settings
  • Priority icons can be switched between chevrons, signal bars, arrows, alerts, or none, globally or per project
  • Status and priority icons are picked from a searchable grid of every icon Obsidian knows, or set to an emoji by pasting one into its search field
  • A project's icon is picked from that same grid, so it can be any icon Obsidian knows and not only an emoji
  • TaskNotes tasks can be imported with their dates, dependencies, subtasks, tags, and archive state (#16)
  • Statuses and priorities can be imported from TaskNotes in settings (#16)
  • Projects can define their own statuses and priorities in the project settings, replacing the global ones (#57)
  • Projects can override the default view, auto-scheduling, and the board display options in the project settings
  • The completed date shows whether a task finished on time or how many days late it was
  • Task progress can be set from 0 to 100 in the task editor and by clicking the progress bar in the table
  • Dependent tasks move earlier when a task is completed before its due date, using the new pull-forward setting (#154)
  • Tasks open in a tab instead of a modal when the new task opening setting is set to tab
  • A task note opens in the task editor when tasks are set to open in a tab
  • The task menu moves the task being edited into a tab
  • Subtasks in the table are joined to their parent by tree lines, which can be turned off with the new show subtree connections setting
  • The table draws lines between rows, between columns, or both, using the new line borders setting

Changed

  • A project keeps its note and its task notes together in a folder of its own
  • An existing project moves into its own folder when the vault is opened, keeping its filters, saved views, and open tabs
  • A new sub-project is created inside its parent's folder
  • Renaming a project note renames the folder it owns, so the two keep matching
  • Deleting a project deletes its folder, unless a sub-project sits inside it
  • The tags offered in the task editor are listed alphabetically
  • Custom fields in the task editor use the same controls as the task's own properties, so a custom date opens the date picker and a custom select the same popover as status
  • Project members, the global team members, and task assignees are picked from the same control, which searches the people in your vault and offers to create the note for a new name
  • The people a picker offers include the global team members, the project's own members, and everyone already assigned in that project
  • A person already picked as a plain name shows as picked when the same person is found as a note
  • The project name above the table, timeline, and board opens that project's overview when clicked. Previously it was an editable field for renaming the project
  • Assignee lists sort by the name shown rather than by the link behind it
  • The project list is a table of rows with progress, task counts, members, and the last due date, replacing the cards
  • The project list counts how many projects have tasks past due
  • Sub-projects in the project list are joined to their parent by tree lines, which can be turned off with the show subtree connections setting
  • The project list draws lines between rows, between columns, or both, following the line borders setting
  • Project settings open in a page of their own, keeping each change as it is made
  • Creating a project asks for its name, icon, color, parent, members, and description in one dialog
  • The new project dialog is laid out like the task editor, with a large ...
Read more

1.8.0

Choose a tag to compare

@github-actions github-actions released this 03 Jul 02:49
0cfc934

Added

  • The gantt timeline header stays pinned to the top when scrolling through tasks
  • Selected text in a note can be turned into a task from the right-click menu or the "Create task from selection" command

1.7.0

Choose a tag to compare

@mrhyde mrhyde released this 01 Jul 23:53
7a5b896

New Task View UI

task-editor-showcase

Added

  • New setting "Show tag colors" (default on) controls the presence of a colored dot on tags
  • Copy the task ID or file path to the clipboard by clicking the corresponding header or footer text in the task editor

Changed

  • Design overhaul of the task modal, with improved UX and unified components
  • Status, priority, type, and dates on a task are now changed via a value picker
  • Tags, assignees, and dependencies are edited through a new searchable picker
  • Repeat and dependencies are hidden by default and added to a task on demand from an "Add property" menu
  • Archive, delete, and opening a task as a note are grouped under a single menu in the task editor
  • Subtask progress is calculated only from completed subtasks
  • Assignee avatars stack when more than one person is assigned
  • Checkbox style now matches the one on the task table
  • Task priority is shown with a colored chevron instead of a dot
  • A value picker in the task editor sizes to its options instead of a fixed width
  • Tags in the task table and on kanban cards show a colored dot, matching the task editor
  • Logged time is shown the same way in the task table and on kanban cards

Fixed

  • The task editor's priority strip is now displayed along the top edge of the window
  • The task editor title showed an input background when hovered or focused
  • Time tracking shows the over-estimate state once logged time passes the estimate

1.6.3

Choose a tag to compare

@github-actions github-actions released this 17 Jun 21:09
9d80a4e

Fixed

  • The project view was empty when Pane Relief or Hover Editor was enabled (#80)

1.6.2

Choose a tag to compare

@github-actions github-actions released this 17 Jun 18:26
e7c58df

Changed

  • Task note filenames keep more of the task title before shortening

Fixed

  • Subtasks added in the task editor were lost on reload (#90)
  • The app froze when duplicating a task with a long title
  • The project list showed stale task counts until the view was reopened (#121)

What's Changed

  • refresh the project list when tasks change by @mrhyde in #123
  • rewrite changelog entries to read as user-facing behavior by @mrhyde in #126
  • bump vite to 8.0.16 to resolve dev-server advisories by @mrhyde in #127
  • save subtasks added in the task editor and prevent the long-title duplicate hang by @mrhyde in #124
  • clear css lint warnings in style partials by @mrhyde in #128

Full Changelog: 1.6.1...1.6.2

1.6.1

Choose a tag to compare

@github-actions github-actions released this 14 Jun 22:55

Changed

  • Task and project modals use Obsidian's native border, shadow, and corner styling instead of custom values
  • Status, priority, and tag labels follow Obsidian's native styling more closely
  • The accent color matches the Obsidian theme accent instead of a fixed purple
  • The Gantt today marker, milestone and subtask buttons, and row selection and hover highlights take their colors from the theme instead of fixed values
  • Kanban cards align the assignee and due date to the bottom of the card

Fixed

  • Subtasks created from a task's subtasks list or the add-subtask buttons are set to the subtask type automatically (#82)
  • Assignees written as note links ([[People/Jane Doe]]) show the person's name on their avatar instead of the link path (#64)

What's Changed

  • unify label chips onto one primitive and refresh badge styling by @mrhyde in #110
  • use obsidian theme variables for remaining hardcoded colors by @mrhyde in #111
  • use native obsidian modal styling and drop redundant important rules by @mrhyde in #112
  • split styles.css into partials bundled with lightningcss by @mrhyde in #113
  • replace color constants with obsidian theme variables by @mrhyde in #114
  • clear oxlint warnings across src and tests by @mrhyde in #115
  • clear obsidian plugin review warnings by @mrhyde in #116
  • default new subtasks to the subtask type by @mrhyde in #117
  • resolve assignee note links to names on avatars by @mrhyde in #118
  • update changelog for 1.6.1 by @mrhyde in #119
  • bump version to 1.6.1 by @mrhyde in #120

Full Changelog: 1.6.0...1.6.1

1.6.0

Choose a tag to compare

@github-actions github-actions released this 12 Jun 13:55

Added

  • Completing a task records a completion date, editable in the task modal and stored in frontmatter (#93)
  • Setting "Show description preview on board" (default off) shows the first few lines of each task description on kanban cards, with markdown stripped and clamped to three lines (#59)

Changed

  • Saving a task rewrites only the files affected by the change instead of every task file in the project
  • Projects open faster: task data loads from Obsidian's metadata cache and note bodies are read on demand. Previously loaded projects reopen instantly; edits made outside the plugin are still detected and reloaded
  • The table renders only the rows in view, so it stays responsive in large projects
  • Views update in place after an edit, preserving scroll position and selection
  • Select all in the table selects every task matching the current filter, not just the rows in view
  • Collapse state is stored in plugin settings instead of task frontmatter. Collapsing or expanding a subtree no longer modifies task files, and the collapsed frontmatter key is no longer written
  • Expand/collapse subtasks toggle is styled consistently across the table and Gantt views
  • Gantt task bars use stronger contrast between completed and remaining work (#87)
  • Gantt task bars no longer overlay a stripe on tasks that have subtasks

Fixed

  • Images pasted or dropped onto a task are saved in the task's own folder instead of the vault root. The folder follows the task when it's renamed or archived, and is removed when the task is deleted
  • Duplicating a task with its subtasks failed with a "note already exists" error and dropped the subtasks. Copies of a subtree now get distinct file names (#90)
  • Progress bar labels showing 0% instead of the actual value in some views
  • Subtasks toggle not working in the Gantt view

Full Changelog: 1.5.0...1.6.0

1.5.0

Choose a tag to compare

@github-actions github-actions released this 25 May 02:23

Added

  • Setting "Save tasks on close" (default on). Turn off to make closing the task modal via X or click-outside discard edits, so only the Save button persists changes (#62)
  • "Open as note" button in the task modal header opens the task's underlying note in a new tab. Handy when the modal is too small to read the full description
  • Paste a screenshot or drag any file onto the task modal description to save it under the vault's attachments folder and embed it as ![[...]] at the cursor
  • Search box, filters (status, priority, assignee, tag, due date, archived), and saved views now appear above every view, not just the table
  • Filter state persists per project across plugin reloads
  • Saved views remember the view mode they were created in; selecting one switches the project to that mode
  • Gantt lifts a matching task to the top level when its parent is filtered out, so search and filters reveal deeply nested matches
  • Release artifacts carry GitHub build provenance attestations; run gh attestation verify <file> --owner StepanKropachev to confirm a download was built from this repo

Changed

  • UI follows the Obsidian theme: accent color, near/overdue colors, badge palette, and avatars all read from Obsidian CSS variables instead of the previous hardcoded purple
  • Toolbar, gantt, filter, and bulk-action buttons render at native size (previously compact)
  • Saved-view tabs share the soft accent treatment with filter pills (previously filled accent)
  • + save view and inline chip-list add buttons are native buttons (no longer dashed pills)
  • Status and priority badges in the task modal are spans, no longer keyboard-focusable
  • Confirm "Delete" uses Obsidian's native warning style
  • Light-theme primary buttons use solid accent (mod-cta) instead of the bordered variant
  • Project view header gear, bulk-action clear, chip remove, and table row icon buttons use lucide icons
  • Chip remove buttons turn red on hover across tags, assignees, and dependencies
  • Project-card and kanban-card progress bars are 3px tall
  • The filter row collapses when no filters are active; click the Filter pill to expand
  • Toggling a filter pill no longer steals focus from the search input
  • Gantt milestone labels and dependency arrows now respect the active filter
  • View switcher buttons are icon-only (previously icon + label)
  • Assignee avatar initials combine the first letter of the first two words (e.g., "Michael Jordan" becomes "MJ" instead of "MI"), so people who share a first name don't collide as often (#60)
  • New task files save as <slug>.md instead of <slug>-<id>.md. Existing files keep their current name until the title changes or you rename them yourself

Removed

  • The gantt "Hide completed" button. Use the Status filter to exclude Done and Cancelled instead; existing ganttHideDone: true settings are migrated automatically into each project's status filter
  • The inline quick-add task input above the table. Use the toolbar + add task button (which opens the task modal) instead

Fixed

  • Phantom 6px right margin on solo avatars (visible in the project edit modal)
  • Kanban cards silently dropping the 4th+ assignee (now shown as +N)
  • Duplicate task entries when creating a task (#29)
  • Saved-view pill staying highlighted after the user diverged from its filter
  • Garbled avatar initials when an assignee was stored as [[Wiki Link]]; initials, tooltip, and color now derive from the parsed display name (#64)
  • Renaming a task to a title that's already used by another file in the project now shows an inline error next to the title input

1.4.0

Choose a tag to compare

@github-actions github-actions released this 29 Apr 13:17

Breaking Changes

  • Clicking a project file no longer auto-opens the PM view. Bind the new "Open current file as project" command to a hotkey for the old behavior.

Added

  • Duplicate task action in the table and Kanban context menus
  • "Open current file as project" command

Fixed

  • "Today" rolling over in the evening west of UTC
  • Tab hijack when clicking a project from a task tab
  • Duplicate tabs when opening a project
  • Duplicate project list pane from the ribbon button
  • Table scroll position not preserved across task modal open/close
  • Project folder errors on case-insensitive vaults

Other

  • Build toolchain migrated to tsdown / oxlint / oxfmt / vitest (#14)
  • Task dates migrated to Temporal (#19)
  • View and tab management rewritten (#22)
  • Vitest suite for store critical paths (#24)
  • README updated with import and collaboration details (#30)
  • CHANGELOG.md added (#31)

Full Changelog: 1.3.2...1.4.0