{
  "slug": "task-format-converter",
  "name": "gizza-ai/task-format-converter",
  "version": "0.1.0",
  "title": "Task Format Converter — gizza.ai",
  "description": "Convert task lists between todo.txt, Markdown checklists, JSON, and CSV while preserving priorities, tags, and dates.",
  "tags": [
    "tasks",
    "todo",
    "markdown",
    "csv",
    "json"
  ],
  "category": "data",
  "urls": {
    "page": "https://gizza.ai/tools/task-format-converter/",
    "markdown": "https://gizza.ai/tools/task-format-converter/index.md",
    "descriptor": "https://gizza.ai/tools/task-format-converter/tool.json",
    "deep_link_example": "https://gizza.ai/tools/task-format-converter/?input=%28A%29%202026-08-01%20Draft%20release%20notes%20%2Bwork%20%40desk%20due%3A2026-08-05%0Ax%202026-08-02%202026-08-01%20Send%20invoice%20%2Bfinance&from=auto&to=markdown&pretty=true"
  },
  "cli": "gizza tool task-format-converter \"(A) 2026-08-01 Draft release notes +work @desk due:2026-08-05\nx 2026-08-02 2026-08-01 Send invoice +finance\"",
  "tool": {
    "description": "Convert a task list between four formats in any direction: the todo.txt plain-text spec, a GitHub-flavored Markdown checklist ('- [ ] task'), a JSON array of task objects, and CSV with a fixed header. Every format parses into a common task model — description, completion state, priority, +projects, @contexts, creation/due/completion dates, and leftover key:value tags — so those attributes survive the round trip. Set 'from' to auto to sniff the source format from the input, and 'pretty' to indent JSON output.",
    "parameters": {
      "additionalProperties": false,
      "properties": {
        "from": {
          "default": "auto",
          "description": "Source format. 'auto' sniffs it from the input (JSON braces, Markdown '- [ ]' items, a CSV header row, else todo.txt).",
          "enum": [
            "auto",
            "todotxt",
            "markdown",
            "json",
            "csv"
          ],
          "type": "string"
        },
        "input": {
          "description": "The task list to convert, in todo.txt, Markdown checklist, JSON, or CSV form.",
          "type": "string"
        },
        "pretty": {
          "default": true,
          "description": "Indent JSON output (ignored for non-JSON targets).",
          "type": "boolean"
        },
        "to": {
          "default": "markdown",
          "description": "Target format to convert the tasks into.",
          "enum": [
            "todotxt",
            "markdown",
            "json",
            "csv"
          ],
          "type": "string"
        }
      },
      "required": [
        "input"
      ],
      "type": "object"
    }
  }
}