← Back to all posts

Notes about spec-kit and agents cloud | Antoine's tech notes

Logo of the spec-kit tool: a small, growing sprout.

Overview

With spec-kit we have access to the task-to-issue command, which allows us to create issues based on tasks. We also have the possibility to use specify agents (so specify.implements) when we assign Copilot to an issue.

This allows us to create issues for tasks, then assign Copilot with the implement commands on them.

When assigning Copilot to an issue, you can have a Slack integration to be notified and discuss.

Problems with the Default Workflow

  • You need to have the MCP server for GitHub.
  • The cloud agent won’t update the tasks status in the MD — you’ll need to ask it to do it.
  • Do not create one issue per task. Try to regroup them.
  • Ask for the agent to create Milestones (based on feature + user story) to regroup issues for better visibility.
    • You’ll need the gh CLI.
  • Each issue will push to the master branch by default.
  • Some tasks would make tests fail before making them green in the next one.

Fixes

When using TaskToIssues:

  • Tell it to group tasks in issues to reduce the clutter.
    • Take into account that some tasks will make the tests fail (implementing tests only).
  • Ask it to create milestones per feature, and to assign issues to them.
  • Tell it to add in each issue a note indicating that it needs to update the tasks status in the list.

Other Considerations

  • The agent won’t take into account the CI, so it may be worth implementing the shell/CI first, then migrating to issues.
  • When you assign to Copilot, it will automatically start from master — you need to manually indicate the source branch.

Current Prompt for Task-to-Issues

Based on the current tasks status, create issues in GitHub:

Regroup multiple tasks in a single issue, based on the task order/timeline and what they achieve. We don't want to have more than 2-3 issues per user stories.
Our merge workflow will be gated by a CI ensuring tests are green, make sure no issue ends up with red tests.
Create a milestone for the feature, and assign the issues to it.
Add in each issue an instruction to update the tasks status in the TASK.md file.