Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>CronTallyNew to Visual Studio Code? Get it now.
CronTally

CronTally

Jinryx

|
1 install
| (0) | Free
Local-first time auditor, background file logger, and interactive invoice engine.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

CronTally

A local-first time tracking, session logging, and billing extension for VS Code and Cursor.

CronTally runs inside your editor. Start a timer from the status bar, log work against clients, and review sessions in a unified ledger. CronTally Pro unlocks native invoicing, PDF/HTML export, and unlimited clients.

Product site: jinryx.com/crontally

Features

Free tier

  • Status-bar timer: Track time with client and project tags from your workspace.
  • Activity capture: Logs file activity while the timer runs.
  • Session ledger: View, edit, and delete logged time entries.
  • Client management: Up to 2 clients on the free plan.

CronTally Pro

  • Unlimited clients
  • Native invoicing: Build export-ready invoices from logged sessions.
  • Document export: Print or save invoices (PDF/HTML) from the IDE.
  • Brand customization: Logo, colors, and currency on invoices.
  • Ledger tracking: Invoice numbering and paid vs. pending status.

Getting started

  1. Install CronTally from the VS Code or Cursor Marketplace (publisher: jinryx), then reload if prompted.
  2. Add a client via the status bar quick-pick, sidebar Create first client, or Clients in the ledger.
  3. Click Start CronTally in the status bar (or use the sidebar timer with client + project tag).
  4. Work as usual. CronTally records a plain-English summary when you stop.
  5. Run CronTally: Open Ledger for sessions, invoicing, and settings.

Shortcut: Ctrl+Shift+9 (Cmd+Shift+9 on macOS) toggles start/stop while the editor is focused.

Surface Best for
Status bar Fastest start/stop while coding
Activity bar sidebar Client, project tag, and timer at a glance
Ledger panel Sessions, clients, invoices, settings

Activate CronTally Pro

  1. Purchase at jinryx.com/crontally.
  2. Open the ledger, go to Settings (or the invoice upgrade panel), paste your license key, and click Activate.

Or set tally.license.key in your user settings.

Privacy (CronTally)

CronTally stores session history, clients, and invoices locally in your editor global storage (SQLite tally.db). Core tracking does not require a jinryx account.

  • Updates replace extension code only. Your database and logo assets stay in global storage.
  • Pro licenses may validate against Lemon Squeezy when activating or re-checking a key. Results can be cached locally for offline use.
  • Before uninstall: back up tally.db if you want to keep your history. Uninstalling may remove the extension global storage folder.

Default database path (Linux, Cursor):

~/.config/Cursor/User/globalStorage/jinryx.crontally/tally.db

CronTally migrates data from older dev install IDs (local.crontally, local.tally) on first run when the database is empty. It does not overwrite an existing database.

Full policy: Privacy Policy | Terms | Refunds

Work logs and invoices

When you stop a timer, CronTally adds a plain-English work summary to the session ledger. Technical audit detail stays in the database.

On invoices, Include work log on invoice in the style toolbar:

  • Off (default): Line items use a brief service label from the project tag.
  • On: Line items include the plain-English summary for each session.

Development

Build and test locally:

npm install
npm run compile
npm test
npm run install:cursor   # installs a VSIX into Cursor (recommended)

Reload Cursor after installing. Use F5 → Run CronTally Extension for extension development.

CronTally disappeared after install?

If the extension folder exists under ~/.cursor/extensions/jinryx.crontally-* but CronTally no longer loads, Cursor has likely marked it obsolete in ~/.cursor/extensions/.obsolete (common after uninstalling from the Extensions UI).

Fix:

npm run install:cursor

Then Developer: Reload Window. Confirm with:

cursor --list-extensions --show-versions | grep -i crontally

You should see jinryx.crontally@<version>.

Ledger / Open Ledger errors after install: older VSIX builds shipped without @vscode/sqlite3 (the local database). Version 1.0.2+ fixes packaging. Reinstall with npm run install:cursor or install the latest VSIX from the Marketplace, then reload.

Releases

VS Code Marketplace: jinryx.crontally

To ship an update:

  1. Confirm jinryx.com/crontally and the legal pages match the build you are shipping.
  2. Bump version in package.json.
  3. Publish: npm run publish:marketplace (requires a VS Marketplace Personal Access Token).
  4. Install locally to verify: npm run install:cursor

Cursor uses the Open VSX / VS Marketplace catalog; if a version is only installed by hand (not published), it will not appear in Marketplace search for other users.

License & Pro

Proprietary. Copyright (c) 2026 jinryx. All rights reserved.

This repository is public for transparency. Viewing source does not grant permission to copy, redistribute, or sell the software. See LICENSE.

CronTally Pro is sold separately via jinryx.com/crontally. Free-tier features are available without a license key.

Support: support@jinryx.com

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft