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 list | Key |
|---|---|
| Open, New project, Import repo, Add source | Enter, n, i, a |
| Pending facts (the gate for proposed memory) | p |
| Change the sort order | s |
| Session access, External agents | e, x |
| Refresh, Delete (asks first), Quit | r, 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
| What | How |
|---|---|
| Models, providers and effort per role | Settings ▸ 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
| Command | What it gives you |
|---|---|
/history | Browse 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. |
/ideas | The 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:
- Session access — which past sessions the curator may read when it harvests or answers you, from this project and from others. Nothing is granted by default, not even this project's own sessions. e in the project or session list, or Settings ▸ General. See the curator.
- Other projects' history — whether the agent may search the history of another project. It asks, the approval names the project, and you decide.
- Cross-session talk — see below.
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.
- Claude Code sessions — pick with Space, all with a; Enter brings them in, each as a Nemocode session (with nothing ticked, the highlighted one).
- Another Nemocode installation — pick sessions with Space, all with a, and toggle with m whether its project memory comes along too (the memory is the real reason to do this). Enter imports; the result line says how many sessions came in and whether the memory was taken over.
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.