[ { "role": "user", "timestamp": 1790368185835, "text": "For this Unity project, can you quickly setup a git ignore that fits for Unity?" }, { "role": "assistant", "timestamp": 1790368297061, "events": [ { "type": "tool_call", "name": "Read", "args": { "file_path": "C:\\rokojori\\projects\\unity-projects\\Unity-Roject-Test\\workspace\\index.page" }, "toolId": "toolu_018t3NGhcarwVYRiqhvhRX9C" }, { "type": "tool_result", "name": "toolu_018t3NGhcarwVYRiqhvhRX9C", "result": "1\t\n2\t
\n3\t \n4\tprivate, no parameterized constructors, avoid switch, and more. Read the guide.dotnet build instead of opening the Editor, including a fix for a SDK/Windows CET crash on this machine. Read the guide.How agents should reason, check in, and manage project knowledge when working in this project.
Read the first-layer pages listed on index.page. Give a brief confirmation that you understand the project and stop. Do not dive into board details or hunt for more context unprompted.
Wait for the user to direct next steps.
boards/tasks.page, boards/bugs.page, and boards/backlog.page are not part of the initial read unless the user directs it or a task clearly requires current board state.
After roughly 1 000 tokens of internal reasoning without a clear answer, pause and surface the situation to the user. The user is an expert and can often shortcut a long investigation with domain knowledge or a targeted hint.
Be brief and concrete. Name the specific problem, the hypotheses already ruled out, and what would help most. Offer concrete actions the user can take - open DevTools, check a log, paste an error.
The user has explicitly said so in the current session - e.g. \"just continue\", \"don't interrupt\", \"do the whole thing\". That permission is session-scoped and does not carry into the next conversation.
All persistent knowledge about this project - planned features, decisions made, open improvements, session notes - lives in workspace/ and is version-controlled. Agents must write project knowledge here, not into local agent memory files. The workspace is visible to the user, survives across machines, and is the single source of truth.
guides/actions/Give feedback when tasks become too large for a single session. Cleanups and documentation often need a follow-up session with enough context to do them properly. Communicate this rather than rushing or going silent.
When writing workspace documents, use the hyphen/minus character - instead of the em dash —. This applies to prose, lists, and task descriptions.
global.json pinning the SDK to 8.0.417 (the default .NET 10.0.401 SDK crashes compiling Unity's generated csproj on this machine - a Windows/CET incompatibility, not a project issue), and a hand-written CompileCheck.csproj that globs Assets/Scripts/Rokojori and Assets/Scripts/Project directly, since Unity's own generated Assembly-CSharp.csproj only lists files present at its last sync and won't pick up files written outside the Editor. All new code compiles clean against this (2 pre-existing, harmless serialization-analyzer warnings on EventSlot fields, unrelated to this session's code). This has only been compile-checked, never run in Unity - see the new \"Verify in Unity Editor\" board task.private fields (use public with an underscore prefix, or protected), no parameterized constructors (DialogProcessor changed to a static Create() factory), switch statements replaced with if/else-if chains (CompareInt, ListCondition), and explicit initial values added to all fields that lacked them.IDialogDisplay interface, no knowledge of UI or the simulation loop), StartDialog(), implements IDialogDisplay), and DialogManager.instance.StartDialog()). The IDialogDisplay seam also covers a future debug/headless display for testing, mentioned but not built.