Skip to content

v1.7.3

Choose a tag to compare

@PirAhmedShah PirAhmedShah released this 05 Aug 08:11
· 12 commits to main since this release

DEPRECATED — this release is superseded. Use v1.8.2 instead (latest plugin.zip, includes all fixes below).


MCP server + plugin for Super Productivity.

What's in 1.7.3:

  • update_task accepts time_spent_on_day, a { 'YYYY-MM-DD': ms } map that merges into the task's per-day bucket (timeSpentOnDay, what the worklog sums). Dates you don't list stay untouched, so you can correct an over-accrued day without negative values. timeSpent is recomputed as the bucket sum unless you also pass time_spent
  • Before this there was no way to fix a bad day: update_task { time_spent } only zeroed the total, and add_time_today rejects negative ms. The merge runs plugin-side, mirroring the proven addTimeToday write path
  • add_time_today is now documented as what it is since 1.7.2: a fallback/correction tool (retroactive accrual, backgrounded-window under-accrual), not the primary tracking path

Install: Settings -> Plugins -> upload this zip. Version must match package.json/manifest/plugin.js (all 1.7.3).

What's in 1.7.2:

  • start_task now drives SP's real timer. It dispatches the whitelisted NgRx action [Task] SetCurrentTask with { id }, so the UI shows the ticking timer and SP accrues timeSpentOnDay natively. Before, the plugin only wrote a currentTimestamp marker that never started the UI ticker
  • stop_task dispatches [Task] SetCurrentTask with { id: null }. unsetCurrentTask is not on SP's allowed-action whitelist, and the null-id form reaches the same reducer branch
  • The marker write stays as a verification signal. If the action is rejected on an older SP build, the plugin falls back to marker-only behaviour
  • Fixed the timer spec (specs/003): [Task] Set Current Task (full-task payload) was stale, the real action is [Task] SetCurrentTask ({ id: string | null })

What's in 1.7.1:

  • batch_update_project now resolves same-batch temp_id references. Subtasks can reference a parent created in the same call, and reorders can include freshly created tasks. SP was silently dropping those tasks and ignoring the reorder before
  • Unresolvable references (cycles, unknown parents) now surface as errors instead of vanishing
  • Update and delete still need real task ids from the first call's createdTaskIds

What's in 1.7.0:

  • batch_update_project: create/update/delete/reorder in one atomic call
  • get_app_state: full snapshot of tasks, projects, tags, notes, repeat configs, counters; optional JSON backup via output_path
  • Work-context tools: get_active_work_context, get_current_context_tasks, get_selected_task, get_focused_task, select_task
  • Simple counters: get_counter, set_counter, increment_counter, decrement_counter, delete_counter, get_all_counters
  • get_notes, get_plugin_config, reinit_data
  • Fixed: SP 18.16's chrono parser was re-parsing date-like @tokens in plugin-written titles, mangling them and clobbering due dates. The plugin now strips residual date tokens while keeping non-date tokens (@dave, @tag) intact

What's in 1.6.0:

  • @date skips non-date @tokens; get_task_repeat_cfgs falls back gracefully when getAppState is unavailable

Full docs in the repository README.