Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Happy Squid

Happy Squid31 downloads

Start and stop Happy Squid tasks from checkboxes in your notes, and keep permanent records of your task goals and daily summaries.

Add to Obsidian
Happy Squid screenshot
Happy Squid screenshot
Happy Squid screenshot
Happy Squid screenshot
Happy Squid screenshot
Happy Squid screenshot
Happy Squid screenshot
Happy Squid screenshot
  • Overview
  • Scorecard
  • Updates3

Start tasks from your notes and bring Happy Squid's task goals, daily summaries and focus figures into your journal.

Start a task from a checkbox

Write {task} after a checkbox or plain list item to create a start task button:

- [ ] Write the quarterly report {task}
- Read the board's comments {task}

Press it to start the task in Happy Squid; the button then becomes stop task. Keep a Happy Squid app or browser extension running to handle the request. Starting a task replaces the current one unless it is locked.

Ticking the checkbox in Obsidian finishes the running task. Completing it in Happy Squid ticks the checkbox in your note too. For plain list items, strikethrough works the same way:

- ~~Read the board's comments~~ {task}

Completed items hide their buttons. Press Enter at the end of a marked item to give the next item a button too; Enter on an empty item ends the list. To remove a button, put the caret inside it and delete {task}.

Up to twenty unfinished subtasks come with the task, including nested checkboxes and plain bullets. Happy Squid uses them and the surrounding note context to understand the work.

While a request is pending, the button shows starting… or stopping…. It can also show task deemed unproductive (hover for the reason and edit the task to try again), current task locked, or out of tasks this week.

For keyboard access, assign a hotkey to Happy Squid: Start or stop task at caret. Obsidian's Toggle checkbox status and Toggle strikethrough commands also complete a running task.

Put the day in your notes

Task Goal

{taskgoal:today}

Shows your Task Goal's progress. Open the card to see the tasks that contributed to it, and hover over or tap the flame to see your streak. A day without a goal reads Task goals are disabled.

Daily Summary

{daysummary:today}

Shows the day's task time, Free Time spent and times blocked. Once the day has ended, Happy Squid writes a summary the next morning; open the card to read it.

Under Settings → Happy Squid → Daily Summary, you can hide or show each figure and the written summary. These switches change the card's appearance; your data and the individual markers below stay available.

Individual figures

These markers produce plain text and take whatever formatting you wrap them in:

Marker What it shows Example
{tasktime:today} Time spent on tasks that day 1h 13m
{freetime:today} Free Time spent that day 25m
{timesblocked:today} How often Happy Squid decided to block you 8
{morningbutton:today} When you pressed the morning lock's Unlock button 6:42 AM

Task time is added when a task ends; Free Time is added when you stop using it. Blocks count Happy Squid's decisions to block a page, including announced blocks with a grace period. Visiting or reloading the blocked page does not add a block. If you did not press Unlock that morning, {morningbutton} reads no button unlock.

Build your own sentences, tables and callouts:

**Focus today: {tasktime:today}**

| Day | Task time             | Free Time             | Blocks                    |
| --- | --------------------- | --------------------- | ------------------------- |
| Mon | {tasktime:2026-09-07} | {freetime:2026-09-07} | {timesblocked:2026-09-07} |
| Tue | {tasktime:2026-09-08} | {freetime:2026-09-08} | {timesblocked:2026-09-08} |

> [!note] Morning
> Unlocked at {morningbutton:today}.

The figures and Daily Summary work without a Task Goal. If a day's data is unavailable, its markers stay as text. The plugin archives the days it receives for about a year, so older notes can keep their figures and summaries.

Writing about another day and setting up templates

All six day markers accept the same four forms:

Form Day shown
{taskgoal} Today when written; the plugin inserts the date so the note keeps that day.
{taskgoal:today} Always today, whenever you read the note.
{taskgoal:2026-09-01} A specific day.
{taskgoal:template} Today in the template; the new note's creation day in notes made from it.

Replace taskgoal with daysummary, tasktime, freetime, timesblocked or morningbutton to use any of these forms.

Dates can be written as 2026-09-01, 01.09.2026, 1/9/26 or Sep 1, 2026. Numeric dates put the month in the middle: 05/06/2026 means 5 June.

Use :template when setting up a daily-note template:

{taskgoal:template}
{daysummary:template}

Task time: {tasktime:template}
Free Time: {freetime:template}
Times blocked: {timesblocked:template}
Morning unlock: {morningbutton:template}

In a note created on 1 September 2026, {daysummary:template} becomes {daysummary:2026-09-01}. The template itself keeps showing today.

Inserting a template into an existing note leaves :template unchanged. Use a bare marker or an explicit date there. You can also let your template plugin supply the date:

  • Core Templates: {taskgoal:{{date:YYYY-MM-DD}}}
  • Templater: {taskgoal:<% tp.date.now("YYYY-MM-DD") %>}

Account, network and payment

Requires an account; sign in under Settings → Happy Squid. One task/week is free; unlimited tasks need Pro. Our Supabase backend syncs account data and receives task text, note context and subtasks. No analytics. Privacy.

For feature documentation, visit happy-squid.com/documentation.

License

MIT — see LICENSE. Copyright (c) 2026 Happy Squid.

HealthExcellent
ReviewPassed
About
Mark tasks with {task} after a checkbox to start and stop them with Happy Squid, sending a request on press and blocking duplicates while a task runs. Show seven faces for starting, stopping, refused, locked and weekly-allowance states; hide the marker on completed tasks and press Enter to extend the run. Ticking a running task's checkbox finishes it, and finishing it in Happy Squid ticks the box back in the note. Track the day with six more markers: {taskgoal} draws your Task Goal card with its streak and the tasks the day was made of, {daysummary} shows the day's figures with the summary Happy Squid wrote, and {tasktime}, {freetime}, {timesblocked} and {morningbutton} print single figures as plain text you can wrap in your own tables and callouts. Each takes a day, today, the day you wrote it, or any date, so a daily note keeps reading correctly a year later.
IntegrationsTasks
Details
Payments
Optional
Current version
1.0.2
Last updated
2 weeks ago
Created
2 weeks ago
Updates
3 releases
Downloads
31
Compatible with
Obsidian 1.4.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Payments
Starting a task from a note needs a Happy Squid account. The free plan allows one task per week; unlimited tasks need the paid Pro subscription, bought at happy-squid.com. The Task Goal card, daily summary and day figures are read-only and work on the free plan.
Author
Happy Squidhappy-squid
  1. Community
  2. Plugins
  3. Integrations
  4. Happy Squid

Related plugins

TickTickSync

Sync TickTick tasks.

Todoist Sync

Materialize Todoist tasks within your notes.

Things3 Sync

Sync between Obsidian and Things3. Supports multi-language, tags and dates.

TaskNotes

Note-based task management with calendar, pomodoro and time-tracking integration.

BRAT

Easily install a beta version of a plugin for testing.

LanguageTool Integration

Advanced grammar and spell checking, powered by LanguageTool.

Self-hosted LiveSync

Sync vaults securely to self-hosted servers or WEBRTC.

Fast Note Sync

Real-time sync of your vaults across server, mobile, and web; shareable with anyone; supports REST and MCP integrations to build your personal AI knowledge base.

Custom Frames

Turn web apps into panes using iframes with custom styling. Also comes with presets for Google Keep, Todoist and more.

Local REST API with MCP

Unlock your automation needs by interacting with your notes over a secure REST API.