Skip to content
Skillpedia
Automations48k · #4382

time-ledger

Makes your agent track your time intelligently. It understands what you say you did and organizes it in a database. Helps keep precise track of your time effortlessly.

What it does

It records how much time you spent on different activities, saving it all to your Notion. If it's unsure about a detail, it asks instead of guessing.

When to use it

  • ✓When you want to note how much time you spent on something (e.g., 'read for 2 hours').
  • ✓When you say 'log my time' or 'tidy up my time ledger'.
  • ✓When you ask where your time went.

Example of what to ask your AI

“Log it: read papers 2h, gym 1h, did a leetcode.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/time-ledger/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/time-ledger/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

It looks for a database named 'time-ledger' in your Notion. Then, it turns what you say into activities, minutes, and dates, and adds them to the database. If something is unclear, it marks it for later confirmation.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add sickn33/agentic-awesome-skills --skill time-ledger

Or download just the file:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/time-ledger/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Time Ledger

Overview

Conversational time tracking. The user reports time in plain language — "read papers 2h, gym 1h, did a leetcode" — and the agent parses it into structured rows (activity, minutes, date, an optional compounding tag) and writes them to the user's own Notion database through the official Notion connector. The core design is an honesty contract: anything uncertain becomes a To-confirm row and gets batch-asked — never fabricated. A log that quietly invents durations is worse than no log.

When to Use This Skill

  • Use when the user reports time spent ("read papers for two hours", "hit the gym for an hour", "coded all morning")
  • Use when the user says "log it", "log my time", "time ledger", or "tidy up my time ledger"
  • Use when the user asks where their time went or for a time review

How It Works

Step 1: Find the database (zero-config)

On the first write of a session, use Notion search to find the database (type database, not a page) whose title contains "time-ledger". Read its data_source_id (the collection://... UUID) and use it as the parent for create-pages / query for the rest of the session. If more than one matches, ask the user which to use. Nothing is pasted or configured.

The companion Notion template (free, linked in the source repo) ships this field schema — select values are a controlled enum, copy them exactly:

  • Entry (title) — the user's words or a clear title
  • Activity (select): Reading / Coding / Practice / Fitness / Investing / Meeting / Writing / Life / Other
  • Minutes (number)
  • Date (date) — expand to "date:Date:start": "YYYY-MM-DD"; a bare Date value fails with HTTP 400
  • Status (select): To-sort / To-confirm / Done
  • Compounding (select): Compounding / Consuming / Neutral
  • Notes (text) — clue from the user's words / your question

Step 2: Direct report mode

Parse the report → create-pages (parent = the data source id above). Set Status=Done for what is certain; for anything uncertain set Status=To-confirm, write the specific question in Notes, and ask it once in your reply.

Parsing rules:

  • Activity: books/technical material → Reading; coding/building → Coding; leetcode → Practice; gym/running → Fitness; markets/research → Investing; meetings → Meeting; docs → Writing; meals/commute/chores → Life; otherwise → Other. Unsure → To-confirm.
  • Duration cues: "two hours"=120, "an hour"=60, "half an hour"=30, "a while"≈30 (mark To-confirm, note it is an estimate), "all morning"≈180. Use exact numbers when given.
  • Date: "today" = the user's local date; "yesterday" = prior day; unspecified = today. Unsure which day → ask.
  • One report, multiple blocks: "two hours on X, one hour on Y" → split into rows, but confirm whether the totals are additive (a frequent ambiguity) — default additive + one To-confirm row.
  • Compounding tag: only tag the obvious — Compounding = leaves a reusable asset (learning, building, writing); Consuming = forget-on-sight entertainment (only if the user volunteers it); leave ambiguous blank.

Step 3: Batch reconcile mode

When the user says "tidy up my time ledger": query rows where Status ∈ {To-sort, To-confirm} or empty → parse each → update-page the certain ones to Done; batch all remaining questions into one message; fill answers in when the user replies.

Examples

Example 1: Direct report

User:  log it: read ML system design 2h, gym 1h, did a leetcode
Agent: Logged 3 entries ✅
       · Reading · ML system design · 120min · Compounding
       · Fitness · gym · 60min
       · Practice · LeetCode · ~20min ❓ To-confirm: you didn't say how long — I guessed 20min, right?

Example 2: Batch reconcile

User:  tidy up my time ledger
Agent: 3 rows need confirmation — answering in one go works:
       1. Tue "LeetCode" — how many minutes?
       2. Wed "reading" — book or papers (Reading), or course exercises (Practice)?
       3. "all afternoon on the deck" — Wed or Thu?

Best Practices

  • ✅ Batch all questions into one message; never interrogate item by item
  • ✅ Give a short receipt after logging (rows written, which are To-confirm, what the questions are)
  • ✅ Copy select values from the enum exactly
  • ❌ Don't fabricate a duration, category, or date when unsure — To-confirm + ask
  • ❌ Don't write a bare Date property; use the date:Date:start expansion

…

FAQ

Do I need to set up anything in Notion?

Yes, you need to have a Notion database titled 'time-ledger' and use the official Notion connector.

What happens if I don't say how long something took?

The agent will mark that activity as 'To-confirm' and ask you later, instead of inventing a duration.

Can it automatically track my time?

No, it only works based on what you tell it you did. It does not automatically track apps or screens.

Details

Original description by the author

Natural-language time tracking: parse what the user says they did into Activity/Minutes/Date rows in their own Notion database — asking instead of guessing when unsure.

repo: sickn33/agentic-awesome-skills

Popularity

GitHub stars
48k
Ranking position
#4382
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills