KasyKasy

AI guidance

AGENTS.md, agent docs, and hot reload r/R in generated projects.

Every kasy new project ships an AI guidance package (Cursor, Claude Code, Copilot, MCP). It is not end-user app documentation. It is the contract for editing the codebase with an assistant.

This page lives in kasy.dev/docs (the Docs section of the site), not on the marketing landing page. The files below ship inside the project after kasy new.

Full index in the repo: docs/agent-guidance.md. Master contract: AGENTS.md.

File map

FileForWhat it is
AGENTS.mdAI + devMaster contract (golden rules, architecture, Browser QA)
CLAUDE.mdClaude CodePoints to AGENTS.md
DESIGN_SYSTEM.mdAI + devTokens, typography, components, semantics
docs/agent-guidance.mdAI + devThis map, inside the project
docs/agent-browser-qa.mdAIChecklist when testing in the browser
.cursor/rules/kasy-agent-contract.mdcCursorAlways-on: analyze, reload r/R, terminal
.cursor/rules/kasy-design-system.mdcCursorAlways-on: kit UI
.cursor/skills/kasy-project/SKILL.mdCursorWorkflow entry → AGENTS.md

Firebase, Supabase, and API backends get the same package. Backend patches only change the data layer.

r vs R

With kasy run or kasy run --web already running, after the AI finishes an edit:

ChangeCommand
Prettier button, layout, colour, text, styler (hot reload)
Bug, provider, route, initState, main(), logicR (hot restart)
Sent r but terminal shows error or “hot reload rejected”R

F5 in the browser tab does not recompile Dart.

How to send reload:

  1. MCP (preferred): reload_app (action=reload for UI, action=restart for logic). Web only (kasy run --web). iOS/Android: terminal r/R.
  2. kasy run terminal (type r or R and read the output).
  3. Device preview toolbar (r and R buttons on the preview bar).

The AI can use the terminal when the environment allows shell access. It should not pretend there is no terminal. If blocked, ask the user or use the preview toolbar.

Live session

Saving a Dart file does not update the running app by itself. With kasy run active, send r or R to the process (terminal or preview toolbar). Terminal and toolbar use the same dev bridge.

The kasy run --web watcher updates the status dot on save (analyze). To see Dart changes in the running app, you still need r or R (you, or the AI after finishing a task with a live session).

Browser QA

When the AI navigates, fills fields, or validates a flow in the browser: full checklist in docs/agent-browser-qa.md in the project. Technical context (semantics, JS bridge): Web guide → Browser QA. MCP: browser_qa_guide.

Skill vs AGENTS.md

AGENTS.md is already the contract for Claude Code and tools that read the repo.

The kasy-project skill in .cursor/skills/ is a Cursor entry workflow (marketing-aligned). It does not duplicate the contract; it points to AGENTS.md and r/R reload rules.

Structured questions (MCP)

When the assistant needs several decisions (create project, run platform, configure credentials), the Kasy MCP instructs the AI not to paste numbered lists in chat.

  1. MCP form: clients without AskQuestion only. create_project with useElicitationForm: true and missing directory/backend. In Cursor, use AskQuestion and pass all args; never call without directory/backend.
  2. IDE quiz: in Cursor, AskQuestion step by step (backend, region, push on Supabase/API). Google is ON by default (independent of push); do not ask Google separately. Without a companion, credentials later via configure_google_login.
  3. Plain text: last resort. One question at a time. License keys and OAuth = plain text, not quizzes.

Last updated on 08/23/2026