Kratu — Your AI Co-Developer
Turn your Azure DevOps, Jira or GitHub Issues board into reviewed pull requests, using the AI coding agent you already use.
Kratu syncs your bugs and tasks, ranks them by priority, and has your coding CLI (Claude Code, OpenAI Codex, GitHub Copilot CLI, Gemini CLI, Cursor Agent, Aider, or your own) analyze each item, explain the root cause and blast radius, fix it in an isolated workspace, verify it with your tests, and open a pull request linked to the work item.
Kratu never merges, never pushes to protected branches, and never touches your own working tree. Every fix ends in a pull request for human review.
Why Kratu
- Your board in the sidebar. A ranked queue (Priority → Severity → oldest) with triage risk and status, and a filter row for types, states, assignee, sprint, area path and tag. Details open in one click.
- Set up in VS Code. Board URL, sign-in, filters, agent and hours are all asked in VS Code boxes. Tokens go to VS Code's secure storage.
- Bring your own agent. Kratu orchestrates; the agent edits. It detects installed CLIs automatically, including the Claude Code binary inside the Claude Code extension, and falls back to another agent if one isn't signed in.
- Everything inside VS Code. Setup and filters use VS Code boxes. Fixes run in the Kratu panel with live steps, questions as buttons, and a Stop button. No terminal needed.
- Pick and batch. Tick items in the board, or use Select Low-Risk Items, then Fix Selected Items: one branch and pull request per item.
- Explains before it edits. Every item gets a root cause, a plan, the files involved and a blast radius (low / medium / high). Anything above your limit waits for your approval.
- Safe by construction. Isolated git worktrees, blocked paths, secret scanning, size limits, protected branches, and credentials kept off command lines.
- Verified. Detects Node, .NET, Java (Maven/Gradle), Go, Rust, Python and Make. Checks run before and after each change, and new failures go back to the agent for repair.
- New or existing branch. You choose where each fix goes. Unattended runs always use a fresh branch per work item.
- Clock in. Kratu works through your queue during your working hours, in the foreground or as a background job (Windows Task Scheduler / cron).
- Clear errors. Every problem, from a missing agent to an expired token or a wrong project name, comes with the exact fix.
Requirements
- Git, and a repository whose work is tracked in one of these boards:
- Azure DevOps Boards (Services or Server). Code in Azure Repos or GitHub.
- Jira (Cloud or Data Center). Branches, commits and pull requests carry the issue key (e.g.
SHOP-12), so Jira's GitHub, Bitbucket or GitLab integration links them.
- GitHub Issues (github.com or Enterprise Server). Pull requests say
Fixes owner/repo#12, so merging closes the issue.
- At least one AI coding CLI: Claude Code, Codex, Copilot CLI, Gemini CLI, Cursor Agent or Aider. Run Kratu: Show AI Coding Agents to see install commands.
- A sign-in for your board:
- Azure DevOps: the Azure CLI (
az login), Git Credential Manager, or a Personal Access Token (Work Items: Read & write, Code: Read & write).
- Jira Cloud: your account email and an API token. Jira Data Center: a Personal Access Token.
- GitHub: the GitHub CLI (
gh auth login), or a token with Issues and Pull requests: read and write.
Node.js is not required: Kratu runs on VS Code's built-in runtime.
Getting started
- Open your repository in VS Code and click the Kratu icon in the Activity Bar.
- Click Set up Kratu. One page opens: pick your board (Azure DevOps, Jira or GitHub Issues), paste its link, sign in and press Test connection. Every field has a Show me how with the exact steps. Everything else has a sensible default; press Save.
- Run Kratu: Check Setup to confirm everything is ready.
- Hover an item in the queue and press 🪄 Fix, or 🔍 Analyze for an explanation only.
- When the pull request is ready, rate it, ask for more changes, or Update with the base branch to bring in new commits (Kratu resolves merge conflicts), all from the Kratu panel.
- Press ▶ Clock in to let Kratu work through the queue.
Your code can live somewhere else than your work items (for example Jira issues and a GitHub repository). Setup detects it and asks for a separate sign-in so Kratu can open pull requests there.
Stop Kratu working on its own
Kratu only changes code on its own in two cases: you clocked in, or you turned on background runs during setup. Each one stops differently.
| You want to… |
Do this |
| Stop a clock-in |
Click Kratu: clocked in in the status bar → Clock out. Or press Stop in the Kratu panel, or run Kratu: Clock Out from the Command Palette (Ctrl+Shift+P / Cmd+Shift+P). Closing the editor also ends it. |
| Stop background runs (the job that runs every 30 minutes, even when the editor is closed) |
Run Kratu: Stop Background Runs. Check with Kratu: Show Schedule Status. Clock out does not stop these. |
| Keep the schedule, but never change code without asking |
Run Kratu: Set Up and, under AI coding agent and safety, choose Explain only, I approve every fix. Kratu then only analyzes and comments; you approve every fix. |
| Explain only, for one session |
Kratu: Clock In → Analyze only. |
| Stop everything right now |
Click Kratu in the status bar → Pause all automatic runs (or Kratu: Pause All Automatic Runs). Clock-in and background runs start nothing new until you choose Resume automatic runs. |
Fixes you start yourself with 🪄 Fix are never affected by these settings.
The Get started with Kratu walkthrough (Help → Welcome) covers the same steps.
Commands
| Command |
What it does |
| Kratu: Set Up |
Connect board, sign-in, agent, policy and working hours |
| Kratu: Check Setup |
Readiness check with exact fixes (optionally tests agent sign-in) |
| Kratu: Analyze |
Root cause, plan and blast radius; no changes |
| Kratu: Fix and Raise Pull Request |
Analyze → fix → verify → branch → PR → update the work item |
| Kratu: Approve for Automatic Fix |
Let the next run fix an item that was held for approval |
| Kratu: Ask for a Change to the Pull Request |
Kratu changes the same branch and pushes to the same pull request |
| Kratu: Update Pull Request with the Base Branch |
Bring in the newest commits; Kratu resolves merge conflicts, never force-pushes |
| Kratu: Clock In / Clock Out |
Work the queue during your hours |
| Kratu: Run One Pass Now |
Process the top ready items once |
| Kratu: Run in Background During Working Hours |
Install the OS scheduler job |
| Kratu: Pause All Automatic Runs / Resume Automatic Runs |
Emergency stop for clock-in and background runs |
| Kratu: Show Report |
What Kratu did today / this week, and why runs failed (made locally) |
| Kratu: Report a Problem |
A short diagnostics report you review, then send by email yourself |
| Kratu: Open Team Settings |
Edit .kratu/config.json (shared, contains no secrets) |
Settings
| Setting |
Default |
Description |
kratu.autoRefreshMinutes |
10 |
Refresh the queue while VS Code is open (0 = off) |
kratu.showStatusBar |
true |
Show queue and clock status in the status bar |
kratu.cliPath |
"" |
Use a separately installed Kratu CLI instead of the bundled one |
kratu.reportReminder |
weekly |
Offer a summary of what Kratu did: weekly, daily or off |
kratu.notifications |
all |
Pop-ups when Kratu finishes work on its own, with the next step (review or raise the pull request, approve, see why): all, actionable or off |
Project behaviour (filters, blast-radius limit, branch policy, verification commands, agent models, custom agents) lives in .kratu/config.json, shared by the VS Code extension and the kratu CLI.
Privacy
Kratu has no servers and collects no telemetry. It talks only to your board (Azure DevOps, Jira or GitHub), your git remote and the AI agent CLI you choose, all under your own accounts. Tokens stay on your machine and are never passed to the agent. Screenshots on work items are not sent to the agent unless your team turns that on. Each run's transcript is kept locally in ~/.kratu/runs for 30 days.
Kratu 0.8 is a security release: work item text is treated as untrusted, agents run with fewer permissions, and Kratu checks what the agent actually changed. Details: kratu-website.vercel.app/security.
Feedback
Kratu is in preview. Use Kratu: Report a Problem to send a bug report by email (you see everything in it first), or the Q&A tab on this page for questions and ideas.
| |