Sessions & projects

A project is a folder Nemocode knows. A session is one line of work in it — with its own conversation, its own settings, and optionally its own copy of the code.

Projects

Run nemocode in a folder and it becomes a project. Nemocode indexes the code once, keeps a memory for it, and remembers every session you had. Several folders can belong to one project if your repository is split: in the project list a adds a further folder as a source (they are also listed under Settings ▸ Project ▸ Sources, with indexing on or off). n creates a new project, i imports a repository.

In the project listKey
Open, New project, Import repo, Add sourceEnter, n, i, a
Pending facts (the gate for proposed memory)p
Change the sort orders
Session access, External agentse, x
Refresh, Delete (asks first), Quitr, d, q or Esc

Deleting a project removes it with its sessions and memory. Your code is never touched.

Sessions

Start as many as you like: n in the session list and type a title, Enter creates it (an empty title creates nothing; Esc cancels). Each keeps its own conversation and its own history — your earlier messages in one session never show up in another.

Missions of the same project run one after another, not at the same time: two agents editing the same files would fight, and the memory is shared. To let sessions work side by side on files, give each its own worktree (below).

In the session list, besides opening: i import sessions, g the memory graph, p pending facts, s sharing settings, y pull what colleagues shared, Y set up a sync repository, V the address of the memory in the browser, e session access, x external agents, b or Esc back. See the memory in the browser and Sharing with a team.

What belongs to one session

WhatHow
Models, providers and effort per roleSettings ▸ Models ▸ Only this session. See Models & cost.
Extra or refused paths/paths. See Permissions & safety.
Which memory topics are preloaded/areas (below).
A working copy of the code/worktree (below).
Which custom agent answers/agents ▸ use in this session.
A completion condition to work toward/goal. The number of “not met” checks it accepts is Goal max rounds.

Continuing a mission

If the last mission of a session failed or was cancelled, /resume tells the agent to finish it, continuing from where it stopped rather than starting over. It says so if there is nothing to resume, and is refused while a mission runs. To bring back an old session, open it from the session list; its whole conversation is still there.

History and ideas

CommandWhat it gives you
/historyBrowse the past sessions of this project, or type into the search field to search what was said in all of them. Hits show who said it, the session and the time. It survives /compact and starting fresh — what you said three weeks ago is still findable. Results from other projects, when you have allowed the agent to look there, carry the project name in brackets.
/ideasThe project's list for later. Things Nemocode noticed while doing something else: a bug it did not fix, a simplification it did not take, a note. Open ideas are listed; you can add your own and mark them done. Keys are under Keys ▸ In windows.

The harvest session

Every session gets a companion harvest session the first time the curator harvests it. In the session list it sits right under its session as ↳ harvest; in a chat, ctrl+t switches between the two. That is where you watch what the curator reads and proposes. /harvest starts a harvest now. Details on the curator.

Who may read other sessions

Three separate switches, all off until you turn them on:

Bringing sessions along

Press i in the session list to import. Nemocode looks for two sources for this folder: Claude Code sessions, and another Nemocode installation on the same machine that knows the same repository. If there is only one source, its list opens straight away; with both you choose first. If there is neither, it says so.

A session with its own worktree

/worktree         # show the state: folder, branch, commits ahead, uncommitted files
/worktree on      # this session works in its own copy, on its own branch
/worktree merge   # bring the work back into the main tree
/worktree off     # drop the folder (an unmerged branch is kept)

Now two sessions can work on the same repository without touching each other's files. What one builds is only in the main tree once you merge it. The merge is a three-way merge; conflicts are not resolved silently, they stay open for you. It needs a git repository.

Sessions that talk to each other

A session can hand something to another one — a finding, a question, a piece of work. You see the whole exchange, and it is off unless you turn it on (Settings ▸ General ▸ cross-session talk). With it off, the agent is not even offered the ability. Which pairs of sessions may message each other is listed under Settings ▸ Project ▸ Crosstalk pairs.

To look at it: press v in the memory view and pick Cross-session talk, or open the dashboard.

The dashboard

A page in your browser with everything at once: the sessions of a project, the agents available, what the sessions sent each other, scheduled jobs, and today's usage. Press v and pick Dashboard.

Choosing what a session knows

In a large project you rarely need all of the memory at once. /areas picks the topics this session gets preloaded; everything else stays available when the agent asks for it. Which folders feed the memory at all is /pum-folders; with none ticked, the whole project does.