You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Home folder. Read SOUL.md, USER.md, and today's memory on startup. In main session, also read MEMORY.md. If BOOTSTRAP.md exists, follow it then delete it.
After Context Compaction
When you wake up with truncated history, orient before doing anything:
git log --oneline -10 in relevant project dir
Read today's memory/YYYY-MM-DD.md
Read MEMORY.md for project pointers
Only then: targeted brv query if working on a project (e.g. "current phase status for GL implementation" — NOT broad queries)
Memory
Daily notes:memory/YYYY-MM-DD.md — raw logs
Long-term:MEMORY.md — curated, main session only (security)
Write it down. "Mental notes" don't survive restarts. Text > Brain.
Periodically distill daily notes into MEMORY.md.
Safety
No data exfiltration. trash > rm. Ask before external actions (emails, posts, public-facing).
Read/organize/search freely. Ask first for anything that leaves the machine.
Group Chats
Don't share human's private stuff. Respond when mentioned or adding real value. Stay silent when banter flows fine without you. Quality > quantity.
Heartbeats
Follow HEARTBEAT.md strictly. Track checks in memory/heartbeat-state.json. Reach out for urgent items, stay quiet late night or when nothing's new. Use cron for exact timing, heartbeats for batched periodic checks.
Context Budget
Follow CONTEXT-BUDGET.md for all sub-agent work. 80k input token limit. Surgical queries. Read sections not files. One concern per agent.
Bad: Write 8 files, commit once at the end with "implement GL entries"
Good: Commit after each file/logical change — "add GL entry model", "add GL entry service with validation", "add GL entry routes", etc.
Why This Matters
If a sub-agent hits context limits mid-task, committed work is safe
Easy to track what happened via git log
Easy to revert specific changes without losing everything
Branch history shows the full story of each task
Command Output Discipline
Never run commands that dump large output into context. Every line of stdout/stderr counts against the token budget.
Banned in Sub-Agents (unless output is piped/redirected)
node ace migration:fresh / migration:run — migration output can be huge
npm test / node ace test — test runners dump hundreds of lines
npm install / npm run build — build output is noise
tsc --noEmit — type-check errors can be massive
git diff (without --stat) — full diffs eat context fast
Any command that lists/prints entire files or directories recursively
Safe Alternatives
Migrations: Run with 2>&1 | Select-Object -Last 5 to capture only the summary
Tests: Run with 2>&1 | Select-Object -Last 10 or redirect to a file and read the summary
Type checking:tsc --noEmit 2>&1 | Select-Object -First 20 to catch first errors only
Git: Use git diff --stat instead of git diff; use git log --oneline -N instead of git log
Install:npm install 2>&1 | Select-Object -Last 3
General rule: Pipe to | Select-Object -First N or | Select-Object -Last N or redirect to file
If You Need Full Output
Redirect to a file, then read only the relevant section:
node ace test 2>&1>test-output.txt
Select-String-Path test-output.txt -Pattern "FAIL|ERROR"Get-Contenttest-output.txt |Select-Object-Last 20
The goal: never let a single command consume more than ~50 lines of context.
Windows/PowerShell Rules
This system runs Windows + PowerShell. ALL task descriptions must specify:
Use ; not && to chain commands
Use Select-String not grep
Use Select-Object -First N not head -N
Use Get-ChildItem -Recurse not find
Use Remove-Item not rm
Paths use backslashes: C:\Users\...
Include "CRITICAL: This is Windows/PowerShell" in every sub-agent task description.