A coding agent on every ticket,that shows its work before you merge.
Starko AI takes a ticket, checks out your repository in its own sandbox and works to a draft pull request. Let it run on its own, or open a session and steer it like a teammate. Either way, nothing reaches your main branch until a person merges it.
- searching for
vatLine - reading
lib/invoices/pdf.tsx - running
pnpm dev
- writing
tests/invoices/pdf-vat.test.ts - running
pnpm test -- invoices
Starko AI in short.
- Two ways to work
- A fix run works alone to a draft pull request. A session waits for your instructions and works with you.
- Who can start it
- Owners and admins. Members see every run and its results but cannot dispatch one.
- Time limits
- A fix run stops after about 45 minutes. A session runs up to 2 hours and ends after 15 quiet minutes.
- Auto-dispatch
- Off for a project until you pick a policy. Manual runs never count against its monthly budget.
- Automated attempts
- Automated triggers stop once a ticket has had 3 runs. A person decides what happens next.
- Follow-ups per pull request
- 1 automated revise by default. Each project can set 0 to 5.
- Where you steer it
- The ticket's Starko AI tab, ⌘L, Slack, and MCP clients such as Claude, Cursor and VS Code.
- Where it pushes
- Its own branch and a draft pull request, with a token scoped to that one repository.
A fix run works alone. A session works with you.
- Start a fix run with Fix with Starko AI on the ticket, or mention
@starkoin an internal comment. Start a session with Start a session on the ticket or from ⌘K. - In a session,
Enterqueues your message for the agent's next step and⌘Enterinterrupts the current step so it reads you now. You can attach files; they are copied into the sandbox. - End session asks the agent to commit, push and open a draft pull request if there is work worth reviewing. Stop aborts at once, and unpushed work is lost.
- After a run ends, Continue session boots a new sandbox on the same branch with the whole conversation as context, so the next session picks up where the last one stopped.
- Starko AI can answer with a mockup instead of prose: a page it builds and checks in the sandbox, shown right in the thread. See the full loop on How it works.
Template picker crashes when a template has no body
- searching
whatsapp-template - reading
components/functional/whatsapp-template-picker.tsx - reading
actions/connections/whatsapp.ts - running
npm test -- whatsapp-template
TemplatePicker reads template.body.length before checking the body exists; a template with no body throws on render. I also found 41 stale templates in the picker and no way to delete them, which is what Ana asked for. I will fix the crash first and add a delete action in the same pull request unless you want them separate.- editing
actions/connections/whatsapp.ts - writing
components/functional/whatsapp-template-manager.tsx - writing
tests/whatsapp-template-manager.test.tsx - running
npm run lint && npm run typecheck && npm test
git push origin starko/fix-d2728b0cEvery run starts with what your team already knows.
- Agent instructions are the project's notes: stack, conventions, how to run tests, areas to avoid. They are trusted context in every run.
- Repo learnings: after each run the agent files up to five durable facts about the repository as backlog tickets tagged
repo-learnings. Every open one goes to the next run. Edit a ticket to correct it, close it to retire it, or condense similar notes into one. - Skills published for coding sessions are attached to fix runs and sessions in the projects they are scoped to, at most 50 per session. They are kept out of git, so they never land in a commit.
- Ticket text, conversations and recordings reach the agent as untrusted data. Instructions a customer types are never followed.
- The project context and the sandbox environment are covered on Cloud sandboxes.
Auto-dispatch is a per-project choice, with a budget and a brake.
- Four policies: Off, only @starko mentions; Complete bug reports; Bugs and docs gaps; Bugs, docs and small changes (xs/s).
- Automated runs / month is a whole number from 0 to 1000, or the plan default. Manual @starko runs are never counted against it. When it is used up, the ticket gets a note saying so.
- One live run per project at a time. A ticket that qualifies while another run is going waits for the next classification or a manual @starko.
- Automated triggers stop once a ticket has had 3 runs; manual runs are never capped. Each ticket also has an Automated follow-ups switch: off means Starko AI stops after the current run.
- Changing these settings needs an owner or admin. The onboarding setup can turn on auto-dispatch for complete bug reports in the repositories you connect there.
Starko AI
How the agent works in northwind/web.
Agent instructions
The project's notes for the agent: stack, conventions, areas to avoid. Trusted context in every run.
Project context
A repo map Starko AI writes by researching the repository. Every run gets the summary in its prompt and the full map as files it reads on demand.
v3 · 9f2c4e1 · learned 4 days ago
Billing app for Northwind customers. Invoices are built in lib/invoices and rendered to PDF by lib/invoices/pdf.tsx. Tests run with pnpm test (Vitest); end-to-end tests need the Compose Postgres up first.
Repo learnings
Notes the agent files after each run as backlog tickets tagged repo-learnings. Every open one is handed to the agent before its next run here.
Autonomy
Which tickets may be handed to the agent without a human, and how many automated runs per month.
Pull request reviews
Starko AI comments on pull requests the team opens: overview, concerns, merge risk.
When a ticket is ambiguous, it asks one question instead of guessing.
@starko again.- The question goes to the ticket's assignee, else the person who started the run, else the workspace's fallback reviewer.
- A reply that tags another teammate is treated as a conversation with them, not an answer, so it does not resume the run.
- Triage asks earlier when it can: a bug report missing what an engineer would need gets an internal note listing exactly what is missing, before any sandbox boots.
- The comment is internal. You decide whether to forward the question to the customer.
- You can also answer from ⌘L or Slack. The answer is posted on the ticket in your name and resumes the run.
@Mia Novak Starko AI needs one answer before it can fix this ticket:
“The PDF hides the tax line for accounts without a VAT number. For an EU customer with no VAT number, should the invoice show VAT at the local rate, or a reverse charge note?”
Reply here with the answer (or forward the question to the customer first). Your reply resumes the run. Mentioning @starko is no longer required.
Watch and steer every session from the sidebar, ⌘L and Slack.
- List what is running and where each session is: booting, working, waiting for instructions or wrapping up, with the PR and CI state.
- Read one session in depth: its recent steps, the conversation, and messages the agent has not read yet.
- Steer a running session with your words passed on verbatim. This is instant, because the session already runs under its limits.
- Starting a new session or ending one asks for your approval first. Merging happens only when you explicitly say to merge.
- Right-click a session in the sidebar to open the ticket, open the PR on GitHub, merge it, or close the ticket. See Review and merge.
FAQAbout Starko AI.
Connect a channel and a repository. Turn the support queue into a build queue.
Feedback starts flowing in minutes. The first recommendation shows up as soon as a pattern repeats, and the first pull request as soon as you accept one.