Import your tasks into Taskhold
By Jake Marsh, who builds Taskhold. Updated 2026-11-09. 3 min read.
Short answer: Open Import in Taskhold and drop an export, paste a list, connect an account with a token, or run a read-only Mac script. Taskhold works out the format, shows every task and where each field lands, and imports in one go. Undo takes one click, and a second run skips duplicates.
Taskhold is the task list you share with your coding agents, with a live board that shows their progress. Moving in shouldn't mean retyping a backlog, so the Import page reads the apps, files and formats people keep tasks in today.
Every source has its own guide below with exact steps and a mapping table. To set up an agent once your tasks are in, start with the quickstart, and one task list across repos shows how projects map to repos.
How importing works
- Format detection reads the content, not the file name: a TODO.md pasted as text, a CSV saved as .txt and a JSON export all land in the right reader.
- The preview lists projects, tasks, steps, notes and labels, the status mix, and where every field goes, including fields Taskhold has no column for. Those are kept word for word under Imported details in the description.
- Projects keep their names. A project with the same name as one you have is filled, not doubled, or you can put everything into one project.
- Large imports run in chunks with a progress bar. Undo this import removes everything the import made and restores anything it updated.
- Each task remembers its source id, so importing again skips what came over before, or updates it if you choose Update.
Apps and services
| Source | How it comes in |
|---|---|
| Todoist | API token, File (csv) |
| TickTick | API token, File (csv) |
| Linear | API token, File (csv) |
| GitHub Issues | API token, File (json) |
| GitLab | API token, File (csv) |
| Jira | API token, File (csv) |
| Asana | API token, File (csv, json) |
| ClickUp | API token, File (csv) |
| Notion | API token, File (csv) |
| Trello | File (json) |
| Google Tasks | File (json) |
| monday.com | File (xlsx, csv) |
| Microsoft Planner | File (xlsx, csv) |
Mac apps
| Source | How it comes in |
|---|---|
| Things 3 | Mac script |
| OmniFocus | File (taskpaper, txt, csv) |
| Apple Reminders | Mac script |
| Apple Notes checklists | Paste |
Coding agents
| Source | How it comes in |
|---|---|
| Claude Code tasks | Mac script, File (json) |
| Cursor, Kiro and plan files | File (md, markdown), Paste |
| Taskmaster AI | File (json) |
| Beads | File (jsonl, json) |
| Backlog.md | Mac script, File (md) |
Files and formats
| Source | How it comes in |
|---|---|
| Taskwarrior | File (json), Paste |
| TODO.md and Markdown | File (md, markdown, txt), Paste |
| todo.txt | File (txt), Paste |
| TaskPaper | File (taskpaper, txt), Paste |
| Org-mode | File (org, txt), Paste |
| CSV, Excel and Google Sheets | File (csv, tsv, xlsx), Paste |
| JSON | File (json, jsonl, ndjson), Paste |
| iCalendar (VTODO) | File (ics) |
| OPML outlines | File (opml, xml) |
| TODO comments in code | Mac script, Paste |
Importing from an agent or a script
Agents and scripts can import with one REST call. POST /api/import takes the text of a TODO.md, todo.txt, CSV, JSON or other supported file, and a project name. dry_run: true returns the preview without writing anything.
curl -s https://taskhold.com/api/import \
-H "Authorization: Bearer $TASKHOLD_API_KEY" \
-H "Content-Type: application/json" \
-d "$(jq -Rs '{text: ., project: "my-repo"}' TODO.md)"Answer your coding agents from anywhere.
$12/month or $120/year after the trial. Card up front. Cancel before day 7 and you pay nothing. Every agent you run is included.
Or connect your agent first, no sign-up: add https://taskhold.com/api/mcp as an MCP server. The first time it uses Taskhold, it gives you the trial link.
Questions
- Is importing a sync?
- No. Each import is a one-time copy into Taskhold. The original app or file isn't changed, and later changes there don't flow in until you import again.
- Is anything lost?
- Fields Taskhold has no column for, like due dates, assignees or custom fields, are kept word for word in the task's description under Imported details, and comments become notes. Each guide lists what the source itself can't export.
- Do I need a Taskhold plan to import?
- Yes. Import is part of the Taskhold plan, which starts with a 7-day trial. Start the trial, then open Import from the sidebar or Settings.
Related
Updated 2026-11-09. Something wrong or out of date? Email hello@greatwork.company.