{"id":35054583,"url":"https://github.com/stephendolan/omnifocus-cli","last_synced_at":"2026-01-16T13:13:13.385Z","repository":{"id":321627188,"uuid":"1086641797","full_name":"stephendolan/omnifocus-cli","owner":"stephendolan","description":"A command-line interface for OmniFocus on macOS","archived":false,"fork":false,"pushed_at":"2026-01-14T21:46:52.000Z","size":211,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-15T02:59:21.966Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stephendolan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-30T17:39:18.000Z","updated_at":"2026-01-14T21:46:56.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/stephendolan/omnifocus-cli","commit_stats":null,"previous_names":["stephendolan/omnifocus-cli"],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/stephendolan/omnifocus-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stephendolan%2Fomnifocus-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stephendolan%2Fomnifocus-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stephendolan%2Fomnifocus-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stephendolan%2Fomnifocus-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stephendolan","download_url":"https://codeload.github.com/stephendolan/omnifocus-cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stephendolan%2Fomnifocus-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478965,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-12-27T09:47:02.189Z","updated_at":"2026-01-16T13:13:13.380Z","avatar_url":"https://github.com/stephendolan.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OmniFocus CLI\n\n[![npm version](https://img.shields.io/npm/v/@stephendolan/omnifocus-cli.svg)](https://www.npmjs.com/package/@stephendolan/omnifocus-cli)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nA command-line interface for OmniFocus on macOS.\n\n## Installation\n\n```bash\nbun install -g @stephendolan/omnifocus-cli\n```\n\nRequires [Bun](https://bun.sh) and macOS with OmniFocus installed.\n\n## Quick Start\n\n```bash\nof inbox count                              # Check inbox\nof task list --flagged                      # Flagged tasks\nof task create \"Buy groceries\"              # Quick capture\nof task update \"Buy groceries\" --complete   # Mark done\n```\n\n## Commands\n\n### Tasks\n\n```bash\nof task list                        # List active tasks\nof task list --flagged              # Flagged tasks only\nof task list --project \"Work\"       # Filter by project\nof task list --tag \"urgent\"         # Filter by tag\nof task list --completed            # Include completed\n\nof task create \"Name\" [options]\n  --project \u003cname\u003e                  # Assign to project\n  --tag \u003ctags...\u003e                   # Add tags\n  --due \u003cYYYY-MM-DD\u003e                # Set due date\n  --defer \u003cYYYY-MM-DD\u003e              # Set defer date\n  --flagged                         # Flag the task\n  --estimate \u003cminutes\u003e              # Time estimate\n  --note \u003ctext\u003e                     # Add note\n\nof task update \u003cname|id\u003e [options]\n  --complete                        # Mark completed\n  --flag / --unflag                 # Toggle flag\n  --name \u003cnew-name\u003e                 # Rename\n  --project/--tag/--due/--defer     # Same as create\n\nof task view \u003cname|id\u003e              # View details\nof task delete \u003cname|id\u003e            # Delete task\n```\n\n### Projects\n\n```bash\nof project list                     # List active projects\nof project list --folder \"Work\"     # Filter by folder\nof project list --status \"on hold\"  # Filter by status\nof project list --dropped           # Include dropped\n\nof project create \"Name\" [options]\n  --folder \u003cname\u003e                   # Assign to folder\n  --tag \u003ctags...\u003e                   # Add tags\n  --sequential                      # Sequential project\n  --note \u003ctext\u003e                     # Add note\n\nof project view \u003cname|id\u003e           # View details\nof project delete \u003cname|id\u003e         # Delete project\n```\n\n### Tags\n\n```bash\nof tag list                         # All tags with counts\nof tag list --unused-days 30        # Stale tags\nof tag list --sort usage            # Most used first\nof tag list --sort activity         # Most recent first\nof tag list --active-only           # Only count incomplete tasks\n\nof tag stats                        # Usage statistics\n\nof tag create \"Name\"                # Create tag\nof tag create \"Child\" --parent \"Parent\"  # Nested tag\n\nof tag view \u003cname|path|id\u003e          # View details\nof tag update \u003cname\u003e --name \"New\"   # Rename\nof tag update \u003cname\u003e --inactive     # Deactivate\nof tag delete \u003cname\u003e                # Delete tag\n```\n\n### Inbox\n\n```bash\nof inbox list                       # List inbox items\nof inbox count                      # Inbox count\nof inbox add \"Task name\"            # Add task to inbox\n```\n\n### Perspectives\n\n```bash\nof perspective list                 # List all perspectives\nof perspective view \"Forecast\"      # View tasks in perspective\n```\n\n### Folders\n\n```bash\nof folder list                      # List all folders\nof folder list --dropped            # Include dropped\nof folder view \"Work\"               # View folder details\n```\n\n### Statistics\n\n```bash\nof task stats                       # Task statistics\nof project stats                    # Project statistics\nof tag stats                        # Tag statistics\n```\n\n### Other\n\n```bash\nof search \"query\"                   # Search tasks\n```\n\n### MCP Server\n\nRun as an MCP server for AI agent integration:\n\n```bash\nof mcp\n```\n\n## JSON Output\n\nAll commands output JSON. Use `--compact` for single-line output.\n\n```bash\nof task list | jq 'length'                    # Count tasks\nof task list | jq '.[] | .name'               # Task names\nof task list --flagged | jq '.[] | {name, due}'  # Specific fields\n```\n\n## Task Schema\n\n```json\n{\n  \"id\": \"kXu3B-LZfFH\",\n  \"name\": \"Task name\",\n  \"completed\": false,\n  \"flagged\": true,\n  \"project\": \"Project Name\",\n  \"tags\": [\"tag1\", \"tag2\"],\n  \"due\": \"2024-01-15T00:00:00.000Z\",\n  \"defer\": null,\n  \"estimatedMinutes\": 30,\n  \"note\": \"Notes here\",\n  \"added\": \"2024-01-01T10:00:00.000Z\",\n  \"modified\": \"2024-01-10T15:30:00.000Z\",\n  \"completionDate\": null\n}\n```\n\n## Troubleshooting\n\n**Permission denied**: Grant automation permission in System Settings \u003e Privacy \u0026 Security \u003e Automation.\n\n**Task not found**: Use exact name or ID. IDs appear in JSON output.\n\n**Date format**: Use ISO format `YYYY-MM-DD` or `YYYY-MM-DDTHH:MM:SS`.\n\n## Development\n\n```bash\ngit clone https://github.com/stephendolan/omnifocus-cli.git\ncd omnifocus-cli\nbun install\nbun run dev     # Watch mode\nbun link        # Link globally as `of`\n```\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstephendolan%2Fomnifocus-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstephendolan%2Fomnifocus-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstephendolan%2Fomnifocus-cli/lists"}