{"_id":"todoist-ts-cli","_rev":"4-044098ec66ea771496310443fc15b814","name":"todoist-ts-cli","dist-tags":{"latest":"0.3.0"},"versions":{"0.1.0":{"name":"todoist-ts-cli","version":"0.1.0","keywords":["todoist","cli","tasks","todo","productivity","unofficial"],"author":{"name":"Matt Russell","email":"matthewjosephrussell@gmail.com"},"license":"MIT","_id":"todoist-ts-cli@0.1.0","maintainers":[{"name":"mjrussell","email":"matthewjosephrussell@gmail.com"}],"homepage":"https://github.com/mjrussell/todoist-ts-cli#readme","bugs":{"url":"https://github.com/mjrussell/todoist-ts-cli/issues"},"bin":{"todoist":"dist/cli.js"},"dist":{"shasum":"aefdba56c33ab5fa450725f7b937d381b7229e88","tarball":"https://registry.npmjs.org/todoist-ts-cli/-/todoist-ts-cli-0.1.0.tgz","fileCount":9,"integrity":"sha512-4dTW8psYxPQsxhL8bOE6p7xYsmcYX5pRXQamR8YlyptZwXSgP8atSRkfJu6Xm7saUrDTz+p19LANVhjuCaRSpg==","signatures":[{"sig":"MEUCIFT6cwl/w5L3uBvaMHBrcUWLr+Qq2d4s6P8uK++M1nZ/AiEAu8/aiED30jYqDdTVO65SdVKO1TrDHuURuTLOJ7u7GO4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81269},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"61bfa906f2d7dbe0dd711b2002d9dd356e4b9384","scripts":{"dev":"tsup --watch","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"mjrussell","email":"matthewjosephrussell@gmail.com"},"repository":{"url":"git+https://github.com/mjrussell/todoist-ts-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Unofficial CLI for Todoist using the official TypeScript SDK","directories":{},"_nodeVersion":"22.21.1","dependencies":{"commander":"^13.0.0","@doist/todoist-api-typescript":"^6.2.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/todoist-ts-cli_0.1.0_1767851656689_0.6783062648812925","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"todoist-ts-cli","version":"0.1.1","keywords":["todoist","cli","tasks","todo","productivity","unofficial"],"author":{"name":"Matt Russell","email":"matthewjosephrussell@gmail.com"},"license":"MIT","_id":"todoist-ts-cli@0.1.1","maintainers":[{"name":"mjrussell","email":"matthewjosephrussell@gmail.com"}],"homepage":"https://github.com/mjrussell/todoist-ts-cli#readme","bugs":{"url":"https://github.com/mjrussell/todoist-ts-cli/issues"},"bin":{"todoist":"dist/cli.js"},"dist":{"shasum":"15a9239f1eebcec11488a9ec5c9a0c4eefcd945d","tarball":"https://registry.npmjs.org/todoist-ts-cli/-/todoist-ts-cli-0.1.1.tgz","fileCount":15,"integrity":"sha512-+QzrVh4uTSEW9CPSbQs8JwwqgkN2d9l5FXkJ95jLETBjQY7368OhAuV2ZqS48wUvpXG2c3MPMG9UhY8JoPkhDw==","signatures":[{"sig":"MEUCIH0kVAbeh58ryFUlPXntq6deu3eFMe0LmrFjfUr0C48OAiEA8H1Mz107x1NbNMlmkBG9SoR0Cc8oreLpF6eW45MdbmE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105902},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"3ada4023758f3efe5caf443dc33f738f594d94fb","scripts":{"dev":"tsup --watch","test":"npm run build && node --test","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"mjrussell","email":"matthewjosephrussell@gmail.com"},"repository":{"url":"git+https://github.com/mjrussell/todoist-ts-cli.git","type":"git"},"_npmVersion":"11.6.2","description":"Unofficial CLI for Todoist using the official TypeScript SDK","directories":{},"_nodeVersion":"25.2.1","dependencies":{"commander":"^13.0.0","@doist/todoist-api-typescript":"^6.2.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/todoist-ts-cli_0.1.1_1769570107108_0.8070413170592885","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"todoist-ts-cli","version":"0.2.0","keywords":["todoist","cli","tasks","todo","productivity","unofficial"],"author":{"name":"Matt Russell","email":"matthewjosephrussell@gmail.com"},"license":"MIT","_id":"todoist-ts-cli@0.2.0","maintainers":[{"name":"mjrussell","email":"matthewjosephrussell@gmail.com"}],"homepage":"https://github.com/mjrussell/todoist-ts-cli#readme","bugs":{"url":"https://github.com/mjrussell/todoist-ts-cli/issues"},"bin":{"todoist":"dist/cli.js"},"dist":{"shasum":"f99c96011bea3c14b54f0183b2eed6c37075681f","tarball":"https://registry.npmjs.org/todoist-ts-cli/-/todoist-ts-cli-0.2.0.tgz","fileCount":18,"integrity":"sha512-IvoBy2N+ZcZRySELvUeiIBeuUSU2POEqpTV057oUTN5N6zf/d9tuGkbPJUDjiWW9gfV+q4bDpRERxDual/qdlw==","signatures":[{"sig":"MEUCICpEL2s7lqRtFSOULCAGmW8evk3T39e3fJHiBMDPQNXdAiEAmVgO2hXU2tTZCgJvpWz7ZNMNcZvapqYRUHp2x2cTQHI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":113682},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"831c834d93452dc7909c99b194ac256d2e39e884","scripts":{"dev":"tsup --watch","test":"npm run build && node --test","build":"tsup","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"mjrussell","email":"matthewjosephrussell@gmail.com"},"repository":{"url":"git+https://github.com/mjrussell/todoist-ts-cli.git","type":"git"},"_npmVersion":"11.6.2","description":"Unofficial CLI for Todoist using the official TypeScript SDK","directories":{},"_nodeVersion":"25.2.1","dependencies":{"commander":"^13.0.0","@doist/todoist-api-typescript":"^6.2.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/todoist-ts-cli_0.2.0_1769576629211_0.37569882502943774","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"todoist-ts-cli","version":"0.3.0","description":"Unofficial CLI for Todoist using the official TypeScript SDK","author":{"name":"Matt Russell","email":"matthewjosephrussell@gmail.com"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/mjrussell/todoist-ts-cli.git"},"bugs":{"url":"https://github.com/mjrussell/todoist-ts-cli/issues"},"homepage":"https://github.com/mjrussell/todoist-ts-cli#readme","keywords":["todoist","cli","tasks","todo","productivity","unofficial"],"type":"module","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"main":"./dist/index.js","types":"./dist/index.d.ts","bin":{"todoist":"dist/cli.js"},"engines":{"node":">=18"},"scripts":{"build":"tsup","dev":"tsup --watch","test":"npm run build && node --test","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"dependencies":{"@doist/todoist-api-typescript":"^6.2.1","commander":"^13.0.0"},"devDependencies":{"@types/node":"^22.10.0","tsup":"^8.3.5","typescript":"^5.7.0"},"gitHead":"49e744266b5a175f7f0355b7c487f0b0f071a3ad","_id":"todoist-ts-cli@0.3.0","_nodeVersion":"25.2.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-q2aMd1y3igQkbYhzGHdADumb7CqeOw+lACeAK9zaHxHPds4J6arhJsJuvNvm+3sWWLbUDzj2Ny7tYEDAVXeGGw==","shasum":"3ff2587b7e760b416f0a4012a31602d488e75e27","tarball":"https://registry.npmjs.org/todoist-ts-cli/-/todoist-ts-cli-0.3.0.tgz","fileCount":30,"unpackedSize":146221,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD5A24J2yLg6PE5Nhi3mODEABfJKRylO+4W0IPYBqWGDgIgLsf6krKx9E0xsu5apoRInESsFdC1ViEFlZVI0FZHNq4="}]},"_npmUser":{"name":"mjrussell","email":"matthewjosephrussell@gmail.com"},"directories":{},"maintainers":[{"name":"mjrussell","email":"matthewjosephrussell@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/todoist-ts-cli_0.3.0_1771266394145_0.09518952503174205"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-08T05:54:16.588Z","modified":"2026-02-16T18:26:34.425Z","0.1.0":"2026-01-08T05:54:16.818Z","0.1.1":"2026-01-28T03:15:07.278Z","0.2.0":"2026-01-28T05:03:49.364Z","0.3.0":"2026-02-16T18:26:34.297Z"},"bugs":{"url":"https://github.com/mjrussell/todoist-ts-cli/issues"},"author":{"name":"Matt Russell","email":"matthewjosephrussell@gmail.com"},"license":"MIT","homepage":"https://github.com/mjrussell/todoist-ts-cli#readme","keywords":["todoist","cli","tasks","todo","productivity","unofficial"],"repository":{"type":"git","url":"git+https://github.com/mjrussell/todoist-ts-cli.git"},"description":"Unofficial CLI for Todoist using the official TypeScript SDK","maintainers":[{"name":"mjrussell","email":"matthewjosephrussell@gmail.com"}],"readme":"# todoist-ts-cli\n\n> **⚠️ Unofficial CLI for Todoist**  \n> Not affiliated with or endorsed by Doist.\n\nA command-line interface for [Todoist](https://todoist.com) built on the official [@doist/todoist-api-typescript](https://www.npmjs.com/package/@doist/todoist-api-typescript) SDK.\n\n## Installation\n\n```bash\nnpm install -g todoist-ts-cli\n```\n\nOr run directly with npx:\n\n```bash\nnpx todoist-ts-cli --help\n```\n\n## Quick Start\n\n```bash\n# Authenticate with your API token\ntodoist auth <your-api-token>\n\n# View today's tasks (default command)\ntodoist\n\n# Add a task\ntodoist add \"Buy groceries\" --due tomorrow --priority 1\n\n# Complete a task\ntodoist done <task-id>\n```\n\nGet your API token at: https://todoist.com/app/settings/integrations/developer\n\n## Commands\n\n### Authentication\n\n```bash\ntodoist auth <token>     # Save API token\ntodoist auth             # Check auth status\ntodoist logout           # Clear stored token\n```\n\n### Tasks\n\n```bash\ntodoist                  # Show today's tasks (default)\ntodoist today            # Same as above\ntodoist tasks            # List tasks (today + overdue)\ntodoist tasks --all      # All tasks\ntodoist tasks -p \"Work\"  # Tasks in project\ntodoist tasks -f \"p1\"    # Filter query (priority 1)\n\ntodoist add \"Task\" -d \"tomorrow\" -P 1 -p \"Work\" -l \"urgent\"\ntodoist add \"Task\" -p \"Work\" --deadline \"2026-03-05\"\ntodoist add \"Task at top\" -p \"Work\" --top\ntodoist add \"Task at position 3\" -p \"Work\" --order 3\ntodoist add \"Assigned task\" -a \"user-id\"  # Assign to user\ntodoist view <id>        # View task details\ntodoist update <id> --due \"next week\"\ntodoist update <id> --deadline \"2026-03-05\"\ntodoist update <id> --deadline none          # Clear deadline\ntodoist update <id> --labels \"next,waiting\" # Replace labels\ntodoist update <id> --add-label next --remove-label waiting\ntodoist update <id> -a \"user-id\"        # Assign task\ntodoist update <id> -a \"null\"           # Unassign task\ntodoist done <id>        # Complete task\ntodoist reopen <id>      # Reopen completed task\ntodoist move <id> -p \"Personal\"                 # Move to project\ntodoist move <id> -p \"Work\" -s \"Section A\"      # Move to section\ntodoist delete <id>      # Delete task\ntodoist search \"keyword\" # Search tasks\n```\n\n### Projects\n\n```bash\ntodoist projects         # List all projects\ntodoist project-add \"New Project\" --color blue\n```\n\n### Sections\n\n```bash\ntodoist sections                    # List all sections\ntodoist sections -p \"Work\"          # Sections in project\ntodoist section-add \"Q1\" -p \"Work\"  # Create section\n```\n\n### Labels\n\n```bash\ntodoist labels           # List all labels\ntodoist label-add \"urgent\" --color red\n```\n\n### Comments\n\n```bash\ntodoist comments <taskId>              # List comments\ntodoist comment <taskId> \"Note text\"   # Add comment\n```\n\n### Collaborators\n\n```bash\ntodoist collaborators <project-id>     # List collaborators (for assignment)\n```\n\n## Options\n\nGlobal flags available on all commands:\n\n| Flag | Description |\n|------|-------------|\n| `-h, --help` | Show help |\n| `-V, --version` | Show version number |\n| `--no-color` | Disable colored output |\n| `--json` | Output as JSON (where applicable; not supported by every command) |\n\n## Environment Variables\n\n| Variable | Description |\n|----------|-------------|\n| `TODOIST_API_TOKEN` | API token for authentication |\n| `NO_COLOR` | Disable colored output (any value) |\n\n## Exit Codes\n\n| Code | Meaning |\n|------|---------|\n| `0` | Success |\n| `1` | Generic failure |\n| `2` | Invalid usage (bad arguments) |\n| `3` | Authentication failure |\n\n## Examples\n\n### Add task with all options\n\n```bash\ntodoist add \"Review PR\" \\\n  --due \"tomorrow 10am\" \\\n  --deadline \"2026-03-05\" \\\n  --priority 2 \\\n  --project \"Work\" \\\n  --label \"dev\" \\\n  --assign \"user-id\" \\\n  --description \"Check the new feature branch\"\n\n# Add task to a specific position in a project/section\ntodoist add \"Triage inbox\" --order top\ntodoist add \"Triage inbox\" --order 2\n\n# Assign task in a shared project\ntodoist add \"Review PR\" -a \"123456789\"  # Use collaborator ID\n```\n\n### Update labels\n\n```bash\n# Replace all labels\ntodoist update <id> --labels \"next,waiting\"\n\n# Or apply incremental changes\ntodoist update <id> --add-label next --remove-label waiting\n```\n\n### Deadlines\n\n```bash\ntodoist update <id> --deadline \"2026-03-05\"\ntodoist update <id> --deadline none  # clear\n```\n\n### Move to a section\n\n```bash\ntodoist move <id> -p \"Work\" -s \"Section A\"\n```\n\n### Filter tasks by priority\n\n```bash\ntodoist tasks -f \"p1 | p2\"  # Priority 1 or 2\ntodoist tasks -f \"overdue\"  # Overdue tasks\ntodoist tasks -f \"@urgent\"  # Tasks with label\n```\n\n### Export tasks to JSON\n\n```bash\ntodoist tasks --all --json > tasks.json\n```\n\n### Scripting\n\n```bash\n# Add task and get ID\nTASK_ID=$(todoist add \"Test\" --json | jq -r '.id')\necho \"Created task: $TASK_ID\"\n\n# Complete it\ntodoist done $TASK_ID\n```\n\n## Development\n\n```bash\ngit clone https://github.com/mjrussell/todoist-ts-cli\ncd todoist-ts-cli\nnpm install\nnpm run build\nnode dist/cli.js --help\n```\n\n## License\n\nMIT © [Matt Russell](https://github.com/mjrussell)\n\n## Disclaimer\n\nThis is an unofficial tool created by the community. Todoist is a trademark of Doist Inc. This project is not affiliated with, endorsed by, or connected to Doist in any way.\n\nThis CLI uses the official Todoist TypeScript SDK but is not an official Doist product.\n","readmeFilename":"README.md"}