
Security News
AI Agent Lands PRs in Major OSS Projects, Targets Maintainers via Cold Outreach
An AI agent is merging PRs into major OSS projects and cold-emailing maintainers to drum up more work.
Deliciously-minimal time tracker for the command-line. Built on Node.js.

Frictionless time logging.
> Start by typing t shopping in the grocery.
Everything in the terminal.
> It's a Node.js command-line app that runs anywhere Node can.
Even Windows!
Natural language parsing.
> All commands are composed in such a way as if you're talking to timetip.
Examples: t stop or t Meeting 3 minutes ago.
For humans who love text editors.
> Logs are stored in a simple human-editable format that you're
encouraged to edit yourself.
Portable data.
> Export to json painlessly. You can also use it as an
npm package to parse out your files.
Install it via npm:
npm install -g timetip
To make things easier, add this to your ~/.profile. (optional)
alias t="timetip --file ~/.timelogs"
Note: the examples below assume that you have the alias above. If you choose
not to to use it, assume that the t below is timetip.
Log a task by typing t <thing-to-do>. (By convention, the first word
is ideally the project name). For instance:
$ t Jsconf email speakers
# ...starts the task "Jsconf email speakers"
Stop it using t stop:
$ t stop
# ...stops the current task
You may also issue a reason to stop:
$ t stop coffee break
# ...stops the current task for the reason of "coffee break"
View the status with simply t:
$ t
september 18, 2013 total 1h 15m
1:30pm Jsconf email speakers 52m
2:22pm ⋅ coffee break 8m
2:30pm Jsconf check ticket sales 1h 5m
3:35pm ⋅ break 14m
3:49pm ✓ Errands grocery ⋅⋅ now
Oops. Did you start working and forget to run your timer? No problem, just use
add an offset in the format <duration> ago, or specify the time. Example:
$ t Misc coffee 3m ago
# ...starts "Misc coffee" as if you ran it 3 mins ago
$ t Misc coffee 3 minutes ago
# ...same
$ t Misc coffee 11:52am
# ...starts it at a specific time
$ t stop 12:30pm
# ...also works for `stop`
Everything is stored in a human-editable format into ~/.timelogs (use --file
to change the location). You're encouraged to add, edit, delete and
rearrange entries using your favorite text editor.
$ cat ~/.timelogs
[2013-09-16 mon]
1:14pm = Misc write emails
2:42pm = Misc balance checkbook
3:00pm = -
[2013-09-18 wed]
3:14pm = Jsconf email speakers
3:59pm = - coffee break -
4:09pm = Jsconf check ticket sales
4:25pm = Errands grocery
You can use t edit to open in in your default text editor ($EDITOR).
View entries from any date by using t <date>. It supports natural language
parsing:
$ t yesterday
$ t aug 2
$ t last friday
Query a date range by using t <date> - <date>:
$ t last monday - last friday
$ t aug 2 - aug 10
$ t last month - now
Or all:
$ t all
Export your data by using the alternative reporters (--reporter). The
json reporter exports your data as a Json object:
$ t all --reporter json
{
entries: [
{
type: "task",
date: "2013-09-18T05:32:47.333Z",
endDate: "2013-09-18T05:32:47.333Z",
duration: 60000,
project: "Jsconf",
task: "Email speakers"
}, ...
]
}
Usage: timetip [options]
Options:
-h, --help output usage information
-V, --version output the version number
-f, --file <path> the data file [~/.timelogs]
-R, --reporter <r> use reporter (default|json)
--no-color disable colors
Shortcuts:
timetip <task> start working (alias: start)
timetip - [<reason>] stop working (alias: stop)
timetip <date> show entries for the date (alias: show)
timetip show today (alias: show today)
Logging tasks:
timetip start <task> start working
timetip stop [<reason>] stop working
Other commands:
timetip show <date> show entries for the date
timetip show <date> - <end> show entries for date range
timetip edit open in text editor
Examples:
timetip myproject stuff start working on "myproject stuff"
timetip meeting 3m ago start working on "meeting" 3 minutes ago
timetip stop stop the current task
timetip stop lunch break stop the current task and log the reason
timetip sep 2 show entries from a day
timetip 4 days ago show entries from 4 days ago
timetip yesterday show entries from yesterday
Want to easily parse time logs? Use it as a Node.js module. See the source for more details.
var TimeLog = require('timetip').TimeLog;
var log = new TimeLog('~/.timelogs');
var day = log.get('2013-09-02');
var day = log.get(new Date(2013, 8, 2));
day.entries
day.last
day.summary
© 2013, Rico Sta. Cruz. Released under the MIT License.
FAQs
simple time tracker and time sheet manager
We found that timetip demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
An AI agent is merging PRs into major OSS projects and cold-emailing maintainers to drum up more work.

Research
/Security News
Chrome extension CL Suite by @CLMasters neutralizes 2FA for Facebook and Meta Business accounts while exfiltrating Business Manager contact and analytics data.

Security News
After Matplotlib rejected an AI-written PR, the agent fired back with a blog post, igniting debate over AI contributions and maintainer burden.