Skip to content
Learn Kiro.

Reference · Chapter 15 of 21

Troubleshooting & FAQ

When Kiro won't install, sign in, connect, or behave: symptom-by-symptom fixes and the questions every new user asks.

All levels last reviewed 2026-08-08

◎ Learning objective

Diagnose the most common Kiro problems (install, sign-in, MCP, context limits, credits) and know where official help lives.

Most Kiro problems are not mysterious. They cluster into five areas (install, sign-in, MCP, context, credits), and each area has a short list of usual causes. This chapter is arranged symptom → likely cause → fix, so scan for what you’re seeing rather than reading it end to end.

Start by updating

Before debugging anything, check which version you’re running and update it. A striking number of known symptoms have a fix date attached to a specific release: the compaction loop that produced context-limit errors was fixed in IDE v1.0.138 (July 2026); corporate-proxy reliability improved in IDE v1.0.182; interrupted responses retry automatically in CLI v2.14 and recover automatically in IDE v1.0.182. If you’re on something older, the bug you’re chasing may already be closed.

Install problems

SymptomLikely causeFix
CLI won’t install on Windows 10The CLI requires Windows 11 — narrower than the IDE, which supports Windows 10 and 11Use the IDE on that machine, or move to Windows 11
The install command isn’t recognized on Windowsirm 'https://cli.kiro.dev/install.ps1' | iex is PowerShell syntaxRun it in PowerShell or Windows Terminal, not Command Prompt
Nothing installs on a Windows ARM laptopWindows support is 64-bit x86 only; ARM is not supportedNo workaround — use an x86-64 machine
Linux IDE won’t launchThe IDE needs glibc The GNU C Library, the low-level system library most Linux desktop software links against. Its version is set by your distribution, not by the app. 2.39 or newerUbuntu 24+, Debian 13+, Fedora 40+, Arch, or Mint 22+
CLI runs fine on a box where the IDE won’tExpected: the CLI needs only glibc 2.34+, with a musl fallbackOn older distros, the CLI is the surface that works
You’d rather not pipe an install script to bashLinux also ships AppImage, .deb, and zip packages

The asymmetry between surfaces is the single most common install surprise. People assume “Kiro supports my machine” is one fact; it’s two. The IDE is the more permissive of the two on Windows (10 and 11); the CLI is the more permissive on Linux (glibc 2.34 versus 2.39). On an older server or an LTS box that’s a few releases behind, reach for the CLI first.

Sign-in problems

SymptomLikely causeFix
Install finishes, browser never opensThe CLI install ends with a browser-based sign-in step, which can’t complete on an SSH session or headless serverUse the documented headless path: authenticate with the KIRO_API_KEY environment variable
Sign-in stalls or responses cut out on a work laptopCorporate proxy or TLS inspectionUpdate first — IDE v1.0.182 (July 2026) specifically improved corporate-proxy reliability
Signed in, but all your settings and history are goneYou used a different sign-in method than last timeSign out and back in with the original provider

The headless case. The install script’s last step opens a browser. On a remote box, a container, or a CI runner there is no browser to open, so that flow has nowhere to finish. The supported route in those environments is the KIRO_API_KEY environment variable, sourced from your CI secret store rather than committed anywhere. That’s the same mechanism the CLI guide uses for headless runs.

The proxy case. Updating is the first move, because the July 2026 IDE release named proxy environments explicitly. If updating doesn’t clear it, this becomes an IT conversation rather than a Kiro one: in practice, it’s worth asking whether the proxy allows kiro.dev domains, and whether TLS inspection is rewriting certificates on that traffic.

The identity case. Kiro’s sign-in options are Google, GitHub, AWS Builder ID, and organization identity or SSO. A common gotcha: those are four different identities, not four doors into one account. If you signed up with GitHub in June and clicked “Google” in August, Kiro isn’t broken — you are logged into a different account, with its own settings, history, and credit balance. Worth checking before anything else when everything looks mysteriously empty.

MCP server problems

The first stop is always the same, and it’s not the config file. In the IDE, open the MCP servers panel and read each server’s connection status; then open the Kiro - MCP Logs output channel. A server that failed to start usually says why there, and that one look saves an hour of editing JSON on a hunch.

SymptomLikely causeFix
Server shows as not connected, and it needs a loginThe server uses OAuth and hasn’t been authorizedCLI: /mcp auth (v2.11.0+). The IDE handles MCP OAuth automatically since v1.0.116
A local server never startsLocal servers run a command with args — if the command is npx, Node has to exist and be on PATHWorth checking that the exact command runs in a plain terminal first
A CI job hangs instead of failingThe pipeline is waiting on an MCP server that will never connectAdd --require-mcp-startup so the run fails fast
A server misbehaves in one project onlyWorkspace .kiro/settings/mcp.json takes precedence over the user-level fileCheck the workspace file for an override you forgot about
A server starts but authentication failsAn ${ENV_VAR} reference in config resolving to nothingConfirm the variable is set in the environment Kiro was launched from

The precedence rule deserves its own moment, because it produces the most confusing MCP bug there is: the same server, configured once, behaving differently depending on which folder you opened. Workspace config wins over user config. If a server works everywhere except one project, look in that project’s .kiro/settings/mcp.json before you look anywhere else.

Auth state is also cleanable: the CLI has /mcp cancel-auth to abandon a pending authorization and /mcp logout to drop saved credentials, which is the reset button when a half-finished OAuth flow leaves a server stuck.

Two config fields are worth remembering while you’re in there. disabled turns a server off without deleting its entry, which is the clean way to isolate one suspect server instead of commenting out JSON. disabledTools removes individual tools from an otherwise working server — useful when one noisy tool is the actual problem.

Context-limit and session problems

Context-limit errors mid-session. First check whether it’s real. /context show reports what’s loaded with token usage per file, and since CLI v2.16 it breaks usage down per tool as well. If one glob pulled in a build directory or a lockfile, you’ll see it immediately. Trim with /context remove for a single rule or /context clear to start over, then re-add only what the task needs.

Second, check your version. A compaction loop that caused context-limit errors was fixed in IDE v1.0.138 (July 2026). If you’re seeing these errors on an older IDE, update before rearranging your context — you may be debugging a fixed bug.

Interrupted or dropped responses. The CLI retries interrupted model responses automatically since v2.14, and the IDE recovers from them automatically since v1.0.182. Both fixes landed in July 2026. On anything older, this is an update, not a workaround.

A session you can’t find. Sessions persist, so the answer is almost never “start over”:

WhereHow to get back
CLI, same directorykiro-cli chat --resume
CLI, a specific sessionkiro-cli chat --resume-id <SESSION_ID>
CLI, not sure whichkiro-cli chat --resume-picker
IDEThe searchable session history panel (v1.0.182+)
Inside a session that went wrongRoll back to a checkpoint

Checkpoints are the tool for the other kind of loss: not a missing session, but a present one full of changes you don’t want. They restore the session state, which makes them excellent mid-flight and no substitute for git afterwards.

Credit surprises

If your balance drained faster than expected, the causes are usually mundane: an expensive model left selected (the Opus tier carries a 2.2x credit multiplier against Auto’s 1.0x), an unattended agent loop that kept working while nobody watched, or the assumption that unused credits carry into next month — they don’t.

The Credits & Pricing chapter covers the mechanics properly, including which knobs actually change consumption. For current numbers, kiro.dev/pricing is the authority.

Two habits prevent most of the surprise, both practice rather than documented behavior. Glance at which model is selected before starting a long agentic task, since the multiplier applies to everything that follows. And treat headless or scheduled runs as spending processes: give them a narrow prompt, a restricted tool set, and something that stops them.

Frequently asked questions

Is my code used to train models?

This is exactly the question you should not take from a third-party tutorial, including this one. Kiro’s privacy and security documentation at kiro.dev/docs states the current policy, and it can differ by tier and by surface. Read it there, and if you’re at a company, read it alongside your own data policy.

Does autocomplete cost credits?

No. Credits meter agentic work — the requests where the agent plans, edits files, and runs commands. Inline completion isn’t that. Simple agentic asks can also cost less than a full credit. The pricing page has the current definition in writing.

Can I use Kiro offline?

No. The models run in the cloud, so anything agentic needs a connection. The IDE is built on Code OSS, so the editor itself still opens and edits files, but the part you installed it for won’t work on a plane.

Do the old q / Q Developer CLI commands still work?

Yes. Kiro CLI is the official successor to Amazon Q Developer CLI, and the q entry points were preserved through the transition; configuration migrates from ~/.aws/amazonq to ~/.kiro. The History chapter explains the timeline, which is also why so many older blog posts use different command names.

Which model does the Free tier get?

The pricing page lists Sonnet 4.5 plus the open-weight models for Free, along with 50 credits a month. Paid tiers open up the wider lineup. Model availability moves faster than most things in Kiro, so check kiro.dev/pricing rather than trusting any page’s snapshot.

Why can’t I open Kiro Web?

Kiro Web is still a preview: it’s on paid plans rather than Free, and it currently runs in the US region. It connects to GitHub and GitLab repositories. If the browser app rejects you while the IDE works fine, plan and region are the first two things to check, not your account.

Something behaves differently than this site says. Who’s right?

The changelog. Every page here carries a last-reviewed date for exactly this reason.

Where do I report a bug?

The kirodotdev GitHub organization is the public home for Kiro repositories and issues, and kiro.dev/docs points to current support channels. Before filing, note your surface (IDE, CLI, or Web) and exact version — most of this chapter exists because versions matter.

Where help lives

SourceUse it for
kiro.dev/docsThe authoritative reference for every feature, including privacy and security
kiro.dev/changelogWhat changed and when — the referee for any behavior disagreement
github.com/kirodotdevRepositories, issues, and community reports
kiro.dev/pricingCurrent plans, credits, and model availability

☰ Chapter summary

  • Update first. A surprising share of known symptoms have a fix date attached to a specific IDE or CLI version.
  • The CLI's requirements are narrower than the IDE's: Windows 11 only, PowerShell not Command Prompt, glibc 2.34+ on Linux.
  • Sign-in trouble is usually one of three things: no browser on the machine, a corporate proxy, or a different identity provider than last time.
  • For MCP, read the servers panel and the Kiro - MCP Logs output channel before touching any config file.
  • Context-limit errors start with /context show; workspace mcp.json quietly overrides the user-level one.
  • kiro.dev/changelog is the referee for any behavior that disagrees with this page.

All chapter summaries are collected on the revision page.