AWS Builder Center

When Spec-Driven Development Moves to the Browser: Governing Kiro Web and AWS Transform Agents

Kiro Web and AWS Transform agents move software delivery from local IDEs to browser-based, agent-driven workflows. This article outlines a practical governance model for identity, sandboxing, PR controls, steering, audit evidence, and modernization jobs.

Visiting Professor|Senior Manager
From coding assistance inside an IDE to autonomous agents working from a browser, enterprises now need to govern not just prompts, but the full software change pipeline.

PRs arrive faster. Accountability does not.

A team finds a production defect on Monday morning. In the old workflow, a developer would pull a branch, inspect the code, make a fix, run tests, and open a pull request. Now the same developer can open Kiro Web in a browser, select the relevant GitHub repositories, describe the target outcome, and let an agent plan the work, edit the code, and open a PR.
Another team is in the middle of modernization work: upgrading Java, moving .NET workloads, planning VMware migration, or updating SDK usage across many services. What used to be a sequence of assessment, scripting, code changes, validation, regression testing, and migration waves is now becoming agent-driven. AWS Transform agents can enter the developer workflow through Kiro Power, agent plugins, and MCP server integrations across Kiro, Claude Code, Cursor, and Codex.
At first glance this looks like a better developer experience: fewer local setup steps, a browser entry point, and more automation. The deeper change is not the interface. It is the control boundary.
Once an agent can read repositories from a browser session, coordinate changes across multiple repositories, open PRs, call MCP tools, and run modernization tasks, the enterprise question is no longer just “is the generated code good enough?” The questions become:
  • Who is allowed to assign which repository to an agent?
  • Where does the agent run, and what is isolated by the sandbox?
  • Which domains, package sources, secrets, and MCP servers can it reach?
  • Are steering files treated as reviewed engineering standards, or as ungoverned soft instructions?
  • Can PRs, worklogs, CloudTrail records, and CI results be tied into one audit trail?
  • When a modernization agent changes dozens or hundreds of repositories, who owns approval, rollback, and cost?
This is not a tool selection problem. It is an agent control-plane problem.

Not a Web IDE, but a New Control Plane for Software Delivery

Kiro is still rooted in spec-driven development: turning high-level intent into specs, designs, tasks, code, documentation, and tests. AWS documentation describes Kiro as an agentic coding service that uses specs to formalize the development of complex features.
Kiro Web moves that workflow into the browser. The Kiro Web documentation describes a preview experience for Pro, Pro+, and Power users, with chat-based coding, pull request creation, a default collaborative mode, and an autonomous mode. In autonomous mode, the agent clarifies requirements, plans the work, executes, and opens a PR when the task is complete. Kiro Web also introduces sandboxing, GitHub integration, and steering.
AWS Transform brings a similar agentic model to modernization work. The service is positioned as an agentic AI experience for accelerating and simplifying infrastructure, application, and code transformation. It covers scenarios such as mainframe modernization, VMware migration, .NET modernization, and migration readiness, assigning discovery, planning, and execution tasks to specialized AI agents.
When these two streams meet, software delivery starts to look different:
Traditional Control PointWhat Changes with Browser AgentsGovernance Implication
Developer’s local IDEAgents run from a browser and execute in remote sandboxesThe execution environment needs governance, not just the workstation
Single-repository changeOne task can coordinate changes across multiple repositoriesRepository scope, dependency impact, and rollout batches need controls
Human writes code and opens PRAgent can plan, code, validate, and open PRsPR review is one gate, not the whole governance model
Standards scattered across docsSpecs, steering, and PR feedback become agent contextSoft instructions need review, versioning, and ownership
Manual modernization projectsAWS Transform turns objectives into jobs, tasks, and worklogsModernization agents must be governed like long-running project systems
The problem is not whether an agent can generate a PR. The problem is whether it can keep generating explainable, auditable, reversible changes inside a boundary the enterprise actually understands.

A Six-Layer Governance Model

Browser-based agents cannot be governed by a warning banner that says “use with care.” Prompts are soft constraints. Policy is the hard boundary. A practical governance model for Kiro Web and AWS Transform agents should cover six layers.
LayerCore QuestionKiro / AWS Transform TouchpointEvidence Produced
1. IntentWhat should the agent accomplish, and how is success defined?Spec, issue, Transform objective, acceptance criteriaSpec, task brief, PR description
2. IdentityWho authorizes the agent to access resources?AWS Identity Center, IAM role, GitHub user/app, Transform workspace roleIAM and GitHub audit records, CloudTrail
3. ContextWhich rules and standards guide the agent?.kiro/steering/, AGENTS.md, Transform references, team standardsSteering PRs, version history
4. ExecutionWhere does the agent run, and what can it reach?Kiro sandbox, network allowlist, secrets, MCP/Powers, connectorsSandbox settings, secret grant records
5. ChangeHow does code reach the main branch and production?GitHub branch protection, PR review, CI/CD, security scans, HITL approvalPRs, checks, approvals
6. ObservabilityWho did what, when, and with what impact?CloudTrail, CloudWatch, EventBridge, Transform worklog, usage dashboardAudit logs, worklogs, usage and cost reports
The important move is to treat the agent as an actor with the ability to take action, not as a smarter autocomplete feature. If it can read code, create branches, invoke tools, and start jobs, it belongs inside the enterprise identity, permission, audit, and change-management model.

The Kiro Web Governance Question: What Happened Before the PR?

Pull requests are the easiest part of Kiro Web to reason about because they fit existing software delivery habits. But an enterprise cannot stop its governance model at the PR.
Kiro Web’s GitHub integration documentation states that the Kiro Agent GitHub app is installed by an organization or account owner, and that access can be limited to selected repositories. Users can assign tasks only to repositories where they already have write permission. The agent clones authorized repositories into an isolated sandbox, creates branches and commits, and opens or updates PRs. It also respects branch protection rules and cannot push directly to protected branches.
That gives enterprises a useful starting point: GitHub is not outside the governance model. It is part of it.
A practical policy should cover at least four areas:
Governance ObjectSuggested Rule
Repository accessGrant the agent access only to repositories in the approved pilot scope; avoid organization-wide access at the start
Autonomous modeUse it for tasks with clear boundaries: test coverage, documentation updates, low-risk refactoring, and well-scoped bug fixes
Pull requestsRequire the same branch protection, CI, security scanning, and human review for agent-authored PRs
PR feedbackConvert repeated review comments into steering rules, instead of correcting the same issue in every PR
The easier part to miss is the sandbox. Kiro Web sandbox documentation describes each task as running in an isolated sandbox that clones authorized repositories and can access only explicitly allowed resources. Internet access can be configured as connections access only, common dependencies, open internet, or a custom allow-list. For enterprise use, open internet should not be the default. If a task can run with connections access only, keep it there. If dependency installation is required, prefer controlled package sources and allow-listed domains.
Secrets need the same discipline. Kiro documentation warns that secrets are exposed to the isolated sandbox as environment variables, and that an agent may leak them through code changes, logs, or external requests. Long-lived credentials, production credentials, and broad tokens should not be handed to an agent. Agent secrets should be short-lived, task-scoped, least-privilege, and revocable after the task completes.

Steering Is Not a Security Policy. Govern It Like Code Anyway.

Spec-driven development answers the question “what should the agent build?” Steering answers “how should the agent behave for this team?”
Kiro steering files can define coding conventions, architecture patterns, technical preferences, and testing standards. They can live in .kiro/steering/, at the team level, or globally. Kiro Web, Kiro IDE, and Kiro CLI all use the same general steering mechanism.
That makes steering valuable for capturing engineering standards. It also creates a common trap: treating steering as a security boundary.
A steering file can tell an agent that all APIs need input validation. It cannot replace SAST, dependency scanning, secret scanning, policy-as-code, or human approval in CI. It can ask the agent to use a company-standard error handling pattern. It cannot guarantee the agent will never work around it.
Steering should therefore be governed much like code:
  • Steering files should live in repositories and be changed through PRs.
  • Security, compliance, and architecture steering should have named owners.
  • Steering should never contain API keys, passwords, tokens, or production connection details.
  • Important steering rules should be paired with automated checks such as linting, tests, and policy checks.
  • Review comments that appear repeatedly should be turned into steering rules and backed by CI enforcement where possible.
The mature pattern is not “make the agent remember all the rules.” It is “give the agent the rules, then make the pipeline verify the rules.”

AWS Transform Agents: Modernization Becomes a Long-Running Agent Job

Kiro Web mainly changes feature delivery and repository-level change. AWS Transform changes modernization delivery.
AWS Transform documentation treats a workspace as a permission boundary. It converts objectives into plans, jobs, and tasks, and uses worklogs to record actions taken by AWS Transform and by users. It also defines roles such as Administrator, Approver, Contributor, and Reader. Critical human-in-the-loop actions, including merge to main, graph decomposition, and deployment to production environments, require higher approval authority.
That means AWS Transform is not just a migration script generator. It is an agent workbench for enterprise modernization programs.
As AWS Transform agents become available in Kiro, Claude Code, Cursor, and Codex, modernization work starts to take three forms:
ModeTypical TaskGovernance Focus
Triggered inside an IDE or agent toolA developer starts a transformation from a familiar coding environmentIdentity, workspace, IAM role, repository scope
Managed in the web consoleA migration team tracks jobs in the AWS Transform web appWorklogs, HITL approvals, role separation, audit
Integrated through MCPAn enterprise connects Transform to an internal agent platformMCP server allow-listing, tool permissions, invocation logs
AWS Transform custom needs additional discipline because a transformation definition becomes an enterprise asset. It can define a transformation using natural language, documents, and code examples, then apply that transformation across multiple codebases. The boundary between draft and published transformations, the version, the test examples, rollback plan, and intended scope should all be managed by the platform team.
A Java 8 to Java 17 transformation should not be treated as “run it once and see what happens.” It should have an owner, an approved repository scope, known risks, a test baseline, failure handling, rollback guidance, and release approval. Otherwise, the agent may reduce technical debt faster while also spreading unvalidated assumptions faster.

AWS Reference Architecture for Enterprise Adoption

On AWS, governance for Kiro Web and AWS Transform agents can be organized into three linked chains: identity, execution, and evidence.
AreaRecommended Practice
Identity and accessUse AWS Identity Center for enterprise user access; use IAM Identity Center or IAM role-based authentication for AWS Transform; use GitHub organization ownership to control the Kiro Agent GitHub app repository scope
Permission boundariesSplit AWS Transform workspaces by product line, business domain, or modernization program; limit agent reach through IAM roles, connectors, and repository access
Execution environmentDefault Kiro Web sandboxes to minimum network access; configure dependencies, environment variables, secrets, Powers, and MCP explicitly per task
Change gatesApply GitHub branch protection, required checks, security scanning, license scanning, and IaC policy checks equally to agent-authored PRs
Audit and monitoringUse AWS CloudTrail integration for AWS Transform; use CloudWatch, CloudWatch Logs, and EventBridge for monitoring and response; combine PRs, CI results, and Transform worklogs as audit evidence
Data and regionsReview Kiro Web preview region behavior, data storage, and cross-region processing against enterprise data residency requirements; include AWS Transform workspace regions and cross-region inference in architecture review
Cost and usageTrack Kiro credits, Kiro usage dashboards, AWS Transform jobs, CI/CD consumption, and modernization program costs by team, repository, and program for showback

Three Enterprise Scenarios

Scenario 1: Everyday Engineering Tasks in the Browser

Start with low-risk work: adding tests, updating documentation, fixing clearly scoped bugs, and cleaning up configuration. Use collaborative mode by default so the developer stays involved. Enable autonomous mode only when the issue, acceptance criteria, and impact radius are clear.
The main controls are repository access, branch protection, required CI checks, and steering. Do not rush to expand the scope. First measure PR quality, review burden, failure modes, and the completeness of the evidence trail.

Scenario 2: Cross-Repository Platform Changes

Examples include standardizing a logging SDK, upgrading an internal UI library, or migrating an API client. Kiro Web can work across multiple repositories in one session, which is useful for platform teams and risky for exactly the same reason.
Treat the rollout as waves. Start with three repositories, validate the pattern, expand to 20, then move to broader rollout. Each wave needs a rollback plan. Cross-repository PRs should not disappear into separate owner queues with no shared visibility. They need a common dashboard or issue tracker.

Scenario 3: A Modernization Factory Driven by AWS Transform

Examples include Java, Python, and Node.js version upgrades, AWS SDK migration, .NET modernization, and VMware migration wave planning. The key object here is not one PR. It is the job lifecycle.
Enterprises should create a modernization backlog that binds each transformation objective to a business owner, a technical owner, a target architecture, validation criteria, and HITL approvals. AWS Transform worklogs, artifacts, CloudTrail records, PRs, and CI results should become one audit package for the program.

Common Mistakes

Mistake 1: Assuming that a PR equals governance.
A PR is a gate into the main branch. Before that PR exists, the agent may already have read code, executed commands, reached the network, and used secrets. Governance has to cover the pre-PR execution path.
Mistake 2: Treating steering as policy.
Steering guides behavior. It does not enforce controls. Enterprise standards should appear in steering, CI, policy-as-code, and review checklists.
Mistake 3: Opening the sandbox to the internet for convenience.
That expands the risk of prompt injection, secret exfiltration, malicious dependencies, and license exposure. Start with the smallest network surface and open allow-listed access only when the task needs it.
Mistake 4: Treating a modernization transformation as a one-off script.
The value of AWS Transform custom is repeatability and scale. The more repeatable it becomes, the more it needs versioning, ownership, tests, and a release process.
Mistake 5: Governing the tool but not the operating model.
Whether an agent can be used safely depends on who owns the requirement, who approves access, who reviews the PR, who handles failure, and who is accountable for production impact and cost.

Implementation Roadmap

StageGoalKey Actions
0. InventoryUnderstand the agent entry points and risk surfaceInventory Kiro, Transform, GitHub apps, MCP, IDE plugins, and CI permissions
1. PilotValidate quality and evidence in a narrow scopeSelect low-risk repositories; restrict sandbox networking; enable branch protection and required checks
2. StandardizeTurn lessons into team rulesCreate .kiro/steering/ templates, agent PR checklists, and secret handling rules
3. PlatformizeBuild a shared control planeIntegrate AWS Identity Center, IAM roles, CloudTrail, CloudWatch, EventBridge, and usage dashboards
4. ScaleRun cross-repository and modernization programsManage AWS Transform jobs in waves; create a registry, versioning model, and approval flow for transformation definitions
The better starting point is not “turn on autonomous mode everywhere.” It is “define what agents can do, what they cannot do, and what evidence they must leave behind.” Establish the boundary first. Scale the capability after that.

Closing Thoughts: If Agents Move into the Browser, Governance Has to Move into the Workflow

Spec-driven development is useful because it turns vague intent into a process that can be executed, checked, and maintained. Kiro Web brings that process into the browser, making it easier to start engineering work from an issue, a review thread, a Slack discussion, or a temporary machine. AWS Transform agents push modernization work away from manual project choreography and toward agent-driven execution.
The easier it becomes to start the work, the more important the boundary becomes.
Enterprises should not stop at: “Can this agent help us write code faster?”
They need to ask: “Under whose identity does it act? Where does it run? Which standards does it follow? Which gates does it pass through? What evidence does it leave? Who restores service when it fails?”
Running is only the first step. Production-grade agent delivery must be explainable, auditable, and reversible.

References

Any opinions in this article are those of the individual author and may not reflect the opinions of AWS.
Enjoyed reading this content? Let the author know!

Your likes, comments, shares, and saves help creators reach more builders.

Loading recommendations

Loading article