ML.ai

WhatML.aiactually does,
feature by feature

ML.ai reads your repo, routes each step to the model that fits, and shows the diff before anything changes.

What’s the situation?

Agents

Pick a subagent and it stays selected until you swap it. Only general carries out changes end to end.

Read more

Safety checks run every time, on all five.

Agents

Pick a subagent and it stays selected until you swap it. Only general carries out changes end to end.

Read more
ML.ai Settings
GeneralModelsAgentsSkillsMCP serversPermissionsUsage

Auto routing

Each step goes to the model that fits it

Agents

Pick a subagent and it stays selected until you swap it. Only general carries out changes end to end.

@explore · Where is the refresh token rotated?

› Searched refreshToken · 14 matches

› Read src/auth/session.ts, src/auth/rotate.ts

› Answered · 0 files changed

@exploreAsk ML.ai... @ to delegate

AutoBuild

Background runs

A delegated job runs in its own session, and keeps going even if you close or reload the panel.

Read more
ML.ai
New sessionAutomationsReview

Sessions

Explain how auth refresh worksnowAdd input validation to the signup formFind and fix the failing test40sRotate refresh tokens on use1hUpgrade to React 192d
acme/storefrontmain

Explain how auth refresh works

refresh() in src/auth/session.ts rotates the token pair 60 seconds before expiry.

session.tslines 41-42

41if (expiresAt - now() < 60_000)42  return rotate(tokens)

Find and fix the failing test

Background tasks

Running

Add input validation to the signup formgeneral · write allowed

Read SignupForm.tsx, validate.ts

Ask ML.ai...↑

Skills

Type / to attach a skill. Five ship with the product, alongside your own project and global skills.

Read more
ML.ai
New sessionAutomationsReview

Sessions

Fix registration validation2hWrite the commit for auth fixesnowRotate refresh tokens on use4mAdd rate limiting to /api/search1dUpgrade to React 192d

Staged changes3 files

src/auth/session.ts+18−4

src/auth/rotate.ts+31

tests/session.test.ts+22

Skills

Prepare a skill instruction in the ML.ai composer.

/↑

MCP servers

Connect tools over the Model Context Protocol, per project or globally, with OAuth sign‑in.

Read more
ML.ai Settings
GeneralModelsAgentsSkillsMCP serversPermissionsUsage

Auto routing

Each step goes to the model that fits it

MCP servers

Connect local or remote tools that ML.ai can use while working.

GitHubRemote · Globalcreate_pull_request · search_code · list_issues +11Connected
LinearRemote · Projectcreate_issue · update_issue · list_projects +6Connected

Add server

Type
Scope
Commandnpx -y @some-org/mcp-server-example

Plan mode

Plan is genuinely restricted, not a suggestion. The edit and write tools are denied to it, and a stricter command budget applies.

Read more
ML.ai

Explorer

src/auth/registration.tssession.tsvalidate.tsapi/search.tstests/registration.test.tssession.test.tspackage.jsontsconfig.json

Fix the registration validation bug and run the relevant tests.

plan.md

Fix registration validation

  1. 1.Reproduce: an empty email passes signupSchema
  2. 2.Tighten email and password rules in src/auth/validate.ts
  3. 3.Add empty, whitespace and short password cases to tests
  4. 4.Run pnpm test registration
Edit refused in Plan modeInvestigate and describe the fix instead: switch to Build to apply it.

Ask ML.ai...

Command safety classifier

Each shell command is classified by effect before it runs. Reads never prompt, riskier commands do.

Read more
ML.ai
New sessionAutomationsReview

Sessions

Clean the workspace and rebuildRotate refresh tokens on use1hAdd rate limiting to /api/search6mUpgrade to React 192dFlaky checkout test3d

The agent proposes

$git statusRead&&rm -rf ~Irreversible deletion

ReadPromptRefuse

Earlier in this session

Permission prompts

Every edit and command goes through Allow, Always or Deny, with the real diff open before you decide.

Read more
ML.ai

Explorer

app/auth/login.tssession.tsMrotate.tsapi/me.tsmiddleware.tstests/session.test.tspackage.json

Found the refresh path. Updating the session helper now.

GreprefreshToken · 6 matches in app/auth

Fs.readapp/auth/session.ts

Fs.writeapp/auth/session.tspending

app/auth/session.ts2 lines changedlines 42-50

42export async function refresh(token) {

43 if (!token) return null;

44 if (!token?.exp) throw new Error('expired');

45 return await rotate(token);

46}

47

48async function rotate(token) {

49 const next = await issue(token.sub);

50 return next;

Permission requiredFs.write app/auth/session.ts

Try ML.ai today, or talk to us about what is next

Install the editor agent on your own machine, or book a call to talk through your team’s workloads