{
  "id": "asimov",
  "name": "Asimov",
  "homepage": "https://github.com/AsimovMac/asimov",
  "description": "Automatically exclude development dependencies from Apple Time Machine backups.",
  "executables": [
    "asimov"
  ],
  "dotfiles": {
    "paths": [
      "~/.config/asimov/config"
    ],
    "exclude": [
      "~/.cache/asimov/"
    ],
    "secret": []
  },
  "commands": {
    "format": 1,
    "label": "Exclude dependency folders from Time Machine",
    "description": "Scan a directory (default: home) for dependency folders and exclude them from backups. The prune and doctor subcommands are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": false,
      "short_attached": false,
      "short_bundles": false
    },
    "source": [
      {
        "id": "readme",
        "kind": "help",
        "url": "https://github.com/AsimovMac/asimov/blob/master/README.md",
        "revision": "master 2026-10-27",
        "evidence": "asimov [--dry-run] [--verbose] [--quiet] [--stats] [--no-read-cache] [--no-write-cache] [--help] [--version] [directory]\n| `--dry-run`         | Print what would be excluded without changing Time Machine       |\n| `--verbose`         | Show all directories including already-excluded ones             |\n| `--quiet`           | Suppress all output except errors                                |\n| `--stats`           | Show per-directory sizes and a total-space summary               |\n| `--no-read-cache`   | Ignore cached state; re-discover and re-verify everything, then rebuild the cache |\n| `--no-write-cache`  | Run normally but don't persist any cache updates                 |\n"
      }
    ],
    "field": [
      {
        "id": "directory",
        "label": "Directory to scan",
        "type": "path",
        "path": {
          "kind": "directory",
          "role": "input"
        },
        "position": 0,
        "sources": [
          "readme"
        ]
      },
      {
        "id": "dry_run",
        "label": "Preview only",
        "type": "boolean",
        "option": [
          "--dry-run"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "stats",
        "label": "Show sizes",
        "type": "boolean",
        "option": [
          "--stats"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "verbose",
        "label": "Show already-excluded too",
        "type": "boolean",
        "option": [
          "--verbose"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "quiet",
        "label": "Quiet",
        "type": "boolean",
        "option": [
          "--quiet"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "no_read_cache",
        "label": "Ignore cache (rescan)",
        "type": "boolean",
        "option": [
          "--no-read-cache"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "no_write_cache",
        "label": "Do not update cache",
        "type": "boolean",
        "option": [
          "--no-write-cache"
        ],
        "sources": [
          "readme"
        ]
      }
    ],
    "task": [
      {
        "id": "preview",
        "label": "Preview with sizes",
        "set": {
          "dry_run": [
            true
          ],
          "stats": [
            true
          ]
        },
        "lock": [
          "dry_run"
        ],
        "fields": [
          "directory",
          "dry_run",
          "stats",
          "verbose"
        ]
      },
      {
        "id": "apply",
        "label": "Apply exclusions",
        "fields": [
          "directory",
          "stats",
          "quiet"
        ]
      }
    ],
    "group": [
      {
        "id": "basic",
        "label": "Basic",
        "fields": [
          "directory",
          "dry_run",
          "stats"
        ]
      },
      {
        "id": "advanced",
        "label": "Advanced",
        "fields": [
          "verbose",
          "quiet",
          "no_read_cache",
          "no_write_cache"
        ]
      }
    ]
  }
}
