Every chat tab in Kiro Crew is its own conversation. Conversations are independent: each one has its own context, its own history, and its own tool-approval state. You can have many open at once, each working on different things.
Sessions open as tabs above the transcript. The open set persists per surface, so closing and reopening the dashboard restores your tabs.
Sessions started from Slack, Telegram, Discord, or another channel are independent from dashboard tabs. They share long-term memory but not in-session context.
When you choose a project for a session, the project picker has Favorites, Recent, and Browse tabs. Star a project from Recent or Browse to add it to Favorites. The picker opens on Favorites when you have any.
Open /sessions for a bookmarkable chooser that never creates or selects a session automatically. It includes title search, All and Unread filters, status chips, and Today, Yesterday, and Earlier groups. Use it when folder navigation or sidebar search is too narrow.
Sessions idle past a threshold collapse into a Dormant sessions (N) expander. Pinned, running, and unread sessions remain visible.
Configure the threshold under Settings → Chat → Collapse dormant sessions. The default is 7 days; choose Never to keep every session visible.
New dashboard chats use the mode selected under Settings → Chat → Default Memory Mode. An explicit choice in the new-chat flow always wins.
| Mode | Reads memory | Writes memory |
|---|---|---|
| Persistent (default) | Yes | Yes |
| Incognito | Yes | No |
| Temporary | No | No |
Incognito can use your preferences, lessons, and history, but the conversation writes nothing back. Temporary starts without reading or writing memory. Both modes mark the tab visually, and either can be forked.
When the agent is still working, the split send button gives you two choices:
Kiro Crew remembers the preferred action for each session. Cmd+Enter on macOS or Ctrl+Enter elsewhere performs the other action once while the split button is visible and Enter is your send shortcut.
Queued messages run in order. You can edit, reorder, or cancel a queued card; cancelling restores its text and attachments to the composer. Once Kiro Crew accepts a queued message, it writes the queue to disk, so the card returns after a Gateway restart. Stop cancels the current turn and lets the next queued message proceed.
Crew Mode lets one chat advance several independent topics at once. Each dispatched topic runs in its own sub-session and answers stream back as they finish, so a slow task does not block a quick one.
This differs from Queue, which runs messages in order on one session. Enable Crewmates under Settings → Developer → Feature Previews.
Sessions survive Gateway restarts. Open tabs reconnect automatically, and reopening an earlier chat loads it in the background while you read. Switching back restores your reading position.
From supported channels, use the sessions command to find recent conversations and resume one. You can also link a dashboard conversation to a Slack thread for bidirectional sync.
Use Export to a file from the session menu to move a persistent session to another machine. Use Import a session from a file in the sidebar to bring it back. Sessions pushed from a peer machine are filed under Imported, grouped by sender. Set dashboard.export_include_layer_b only when you deliberately want an export to carry the model-context layer needed for a direct resume; it is off by default.
Sidebar search spans connected Gateways and interleaves local and remote results. Search by title, pull request, code review, issue badge, or forms such as 4411, /pull/4411, and owner/repo#4411.
Reaching the top of a long transcript loads older turns. For an inventory with explicit filters and no automatic selection, use the /sessions page.
The sidebar's filter menu has Unread, In progress, and Pinned chips. Each chip can show only matching sessions or, with its eye-slash control, hide them instead. Pause all filters lifts every status chip at once, and Resume all filters restores them.
A pinned session stays in view while a tag or status filter narrows the rest. Search and a hidden folder still apply to it.
Three controls tidy folders:
projects/billing, becomes a chip that reveals the folder in the sidebar. The chip appears only when exactly one folder has that full path.The session-control tools let an eligible dashboard session create, read, message, and stop peer sessions. They are deny-by-default and require a recognized caller. Use a peer session when the workstream should remain visible as its own chat; use a subagent when only the result needs to return.
Notify when a background chat finishes under Settings → Notifications → Desktop alerts is off by default. Turning it on requests operating-system notification permission and alerts you only when the completed chat is behind another app or window.
Mark sessions unread only when they need you, in the same section, marks a background session unread only when its agent finishes or waits on your answer, instead of on every new message.
Toggle Autopilot for a session when you want tool calls that pass the security gate to proceed without individual prompts. Denied commands, sensitive paths, and governance policy still apply.
Sessions close after 60 minutes of inactivity by default. Closing releases runtime resources but preserves the conversation for resume. Set session.timeout_secs to change the threshold or 0 to disable the idle sweep.
| Scope | What's remembered | Lifetime |
|---|---|---|
| Within one session | Conversation context for this tab | Until compacted or the provider session ends |
| Across sessions | Preferences, project context, lessons, and history summaries | Persistent across restarts |
A new persistent session receives the configured memory layers but not the live context of other open tabs. See Memory for the complete model.
An optional side-panel summary explains why a session started, what happened, and what remains. It is organized by intent rather than as a turn-by-turn log, with unresolved work first.
Session summaries are off by default because generating one uses a model turn. Enable session_summary.enabled or summarize an older session on demand.
A session whose workspace contains .kiro/steering/*.md inherits those project rules automatically. Use Steering for coding standards, deployment rules, and team conventions that should apply without repeating them in every prompt.
Incognito and Temporary sessions can also be forked. The new tab is independent from that point.
The composer shows context use as a percentage and token count. Kiro Crew auto-compacts at the configured threshold, 70% by default, folding older context into one expandable Context compacted card. You can also use Compact from the session menu or !compact in Slack.
After compaction, the provider keeps a summary of the intent and recent work rather than replaying every earlier turn.
Use the lane button at the top of the Sessions sidebar to switch among the folder tree, flat list, and conductor view. Conductor view appears when a session has opened another session and no tag board is active. It nests each worker under its conductor, and a collapsed conductor shows its child and needs-you counts.
For genuinely long-horizon work, an agent can record a compact goal, phase, next step, rejected approaches, and artifact pointers with session_ledger_record, then restore that state with session_ledger_read after compaction or a later monitoring cycle.
The ledger is a projection of the Crew log, which records by default. Set KIROCREW_CREW_LOG=0 before starting the Gateway to disable that log; ledger writes then refuse instead of falling back to another store. This is agent working state, not a replacement for the transcript or a feature for ordinary one-turn requests. See System and storage.
The kebab menu on each tab gives you quick access to session-level controls:
The session's row menu in the sidebar also offers Regenerate title, which replaces the current title with a newly generated one.
Open Manage Tags to choose Human only, Agent: add only, or Agent: add & remove for each tag. A tag created before this control remains agent-locked until the dashboard owner selects Set up agent permissions. Ignoring that prompt keeps the safe default.
Sessions