DEV Community

Davide Troiani
Davide Troiani

Posted on

We need a deterministic Governance Layer for AI coding Agents

The Problem: The Chaos of Giant AI Code Diffs

Autonomous coding tools can spin up full implementations, run scripts and commit hundreds of lines of code in seconds. But if you have managed a team of developers using them, or tried to build a complex feature solo, you have likely run into giant code diffs.

A single vague prompt transforms into a massive, multi-file PR that takes a human tech lead hours to confidently review.
Features get built but the step-by-step product rationale and architectural decisions are often lost inside ephemeral chat histories.
The solution is enforcing strict workflow guardrails.

I tried all major spec-driven development (SDD) workflows and what I found is they focus 90% on product shape and much less on the actual implementation. This is also the case of get-shit-done which I love for its pragmatism, low ceremony-driven yet solid at context and flexibility.

But I needed something more specialized.

Introducing Get Tasks Done

I built Get Tasks Done from get-shit-done to provide a lightweight, deterministic state machine layer for AI-assisted development. It bridges the gap between high-level human intent and execution AI agents by turning specifications into granular execution tasks using leveraging a GitHub-native integration.
Instead of a fluid, unpredictable implementation step, GTD structures development into explicit, auditable stages:
Product Intent ➔ Markdown Specs ➔ Granular GitHub Issues ➔ Atomic PRs

The Architecture: Guardrails for the Agentic Layer

The system coordinates across five distinct layers:

Planning Artifacts

Local markdown planning templates enforce small, highly contained prompt boundaries. By keeping information tightly localized, context drift drops significantly. I extended it with a thorough task decomposition gate that ensures planning tasks are enough atomic to avoid drift (and even executed by cheaper models).

Runtime Commands & State

Deterministic tools manage how the agent reads the state machine, standardizing success/failure signals.

GitHub Task Issues

Every planning task mapped during the local planning phase is exported directly into GitHub issues, with its dependency tree.

Isolated PR Tracking

The agent executes work strictly bounded to the branch tied to that individual issue, ensuring code isolation.
Autonomous task orchestration can implement multiple tasks in a single step, using multiple agents, but eventually a PR keeps the human-in-the-loop.

Real-World ROI: How This Transformed my SDLC

As a tech lead that applies best practices even in personal projects, I started reviewing atomic, single-intent PRs that take two minutes to approve. I re-gained control over the codebase I'm working on.
As a solo developer I stopped paying for massive token burns caused by agents looping on broken implementations and refactors. I kept them anchored to tasks and within clear boundaries.

Open Source & Next Steps

GTD is completely open-source, local-first and designed to interface seamlessly with your existing terminals and CI setups thanks to its SDK, as inherited by the original repo.
Check out the code, read the full spec or contribute to my execution layer over at GitHub ai-is-gonna/get-tasks-done. I’d love to hear your thoughts on how your engineering teams are taming agentic workflows!


Let's Connect!

  • Star the Repo: If you want to support open-source AI guardrails, drop a star on GitHub
  • Follow the Journey: I share daily insights about engineering in the AI Agent Era on X (formerly Twitter): @iltroiani
  • Feedback: How are you taming agentic workflows in your team? Let's discuss in the comments below!

Top comments (0)