Use Taskhold with the Copilot coding agent
By Jake Marsh, who builds Taskhold. Updated 2026-10-26. Facts about other tools checked 2026-10-26. 3 min read.
Copilot's coding agent works in GitHub's cloud, so you can't watch a terminal. Taskhold gives it a list to report into: assign an issue, and the agent plans its steps and reports progress to the live board while it runs.
For Copilot in your editor, see VS Code; for the terminal, Copilot CLI.
What you get with Copilot coding agent and Taskhold
- Each run reports a plan of steps, progress and its current step to the live board.
- Questions it can't settle go under Needs you; the run reads your answer with taskhold_updates if it is still going.
- A summary on the task when the pull request is ready.
Connect Copilot coding agent to Taskhold
- Start the 7-day trial, open Settings > API keys and create a key for this machine. It starts with atd_sk_. One key per tool and machine lets you revoke each one on its own.
- In the repository, open Settings > Secrets and variables > Agents and add a secret named COPILOT_MCP_TASKHOLD_API_KEY with the key. Copilot only passes secrets whose names start with COPILOT_MCP_.
- Open Settings > Copilot > MCP servers, paste the configuration below and save.
{
"mcpServers": {
"taskhold": {
"type": "http",
"url": "https://taskhold.com/api/mcp",
"tools": ["*"],
"headers": {
"Authorization": "Bearer $COPILOT_MCP_TASKHOLD_API_KEY",
"X-Taskhold-Agent": "Copilot coding agent"
}
}
}
}Tell Copilot coding agent how to use the list
The cloud agent reads .github/copilot-instructions.md, AGENTS.md and a root CLAUDE.md. Add the workflow to AGENTS.md:
## Tasks (Taskhold)
The person and I share a task list through the taskhold MCP tools. They watch a live board while I work.
- Session start: taskhold_get_current, then taskhold_updates for replies. Nothing in progress? taskhold_list status:todo and take the highest priority.
- taskhold_start before working on a task (agent: "Copilot coding agent in <repo>").
- More than a couple of steps: taskhold_plan, then taskhold_start and taskhold_complete each step.
- taskhold_progress at milestones (N of M, or a percent) with a short message. Every few minutes at most.
- Need a decision: taskhold_block with one specific question, then check taskhold_updates.
- Done: taskhold_complete with what changed and how I checked it.
- A TODO or bug I'm not fixing now: taskhold_create (or taskhold_create_from_todo with file and line).To hand it work from Taskhold instead of an issue, see handing tasks to your coding agent.
One limit to know
The key is one repository secret, so every cloud run in that repo writes to the Taskhold account the key belongs to. Fine for your own repos; on a shared repo, use a key from an account the team agrees on. The agent's firewall doesn't apply to MCP servers, but it does block curl calls to the Taskhold REST API from its shell.
What leaves your machine, and how to disconnect
Taskhold receives task titles, steps, progress messages, questions and summaries, whatever the agent or script sends. Taskhold never sends code or commands to your machine, and it doesn't read your repository.
To cut a tool off, open Settings > API keys and revoke its key. The next call fails with 401. Then remove the Taskhold entry from the tool's config so it stops trying.
See how far along your coding agents are.
$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.
Sources
- GitHub docs: extend the coding agent with MCP, checked 2026-10-26
- GitHub docs: repository custom instructions, checked 2026-10-26
Related
Updated 2026-10-26. Something wrong or out of date? Email hello@greatwork.company.