Desktop app for managing multiple Claude Code sessions - graph view, split groups, persistent memory, todos, inter-session messaging
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · http counts 46 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
add-tags
-
batch-section-edit
-
canvas-focus
-
canvas-inspect-image
-
canvas-list-artifacts
-
canvas-show
-
create-memory
-
create-scheduled-task
-
create-todo
-
delete-memory
-
delete-scheduled-task
-
delete-todo
-
disable-scheduled-task
-
edit-memory
-
emit-milestone
-
enable-scheduled-task
-
get-scheduled-task
-
list-agents
-
list-memories
-
list-scheduled-task-runs
-
list-scheduled-tasks
-
list-sessions
-
list-tags
-
list-todos
-
list-wiki-articles
-
merge-worktree
-
pipeline-get-artifact
-
pipeline-get-task
-
pipeline-put-artifact
-
pipeline-rename-session
-
pipeline-request-approval
-
pipeline-set-stage
-
pipeline-start
-
pipeline-start-review
-
read-memory
-
read-todo
-
read-wiki-article
-
remove-tags
-
repair-related
-
search-memories
-
search-wiki
-
send-message
-
spawn-agent
-
spawn-session
-
update-scheduled-task
-
update-todo
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 102
filesystem 27
- fs (weak) ryj-dev-session-manager-1b1da7e/scripts/migrate-todos-once.mjs :6
import fs from 'node:fs' - fs ryj-dev-session-manager-1b1da7e/src/main/atomic-write.ts :6
import { writeFileSync, renameSync, unlinkSync } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/canvas-store.ts :3
import { readFileSync, mkdirSync, watch, readdirSync, unlinkSync, type FSWatcher } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/fs-service.ts :1
import { readdirSync, readFileSync, statSync, writeFileSync, mkdirSync, unlinkSync } from 'fs' - fs (weak) ryj-dev-session-manager-1b1da7e/src/main/git-worktree.test.ts :7
import { mkdtempSync, mkdirSync, writeFileSync, existsSync, rmSync } from 'node:fs' - fs ryj-dev-session-manager-1b1da7e/src/main/hook-server.ts :3
import { readFileSync, writeFileSync, unlinkSync, existsSync, readdirSync, appendFileSync, mkdirSync, rmSync, copyFileSync, realpathSync } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/index.ts :3
import { rmSync } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/ipc.ts :2
import { readFileSync, writeFileSync, mkdirSync, chmodSync, existsSync, rmSync, statSync, readdirSync, unlinkSync } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/mcp-launcher.ts :6
import { readFileSync, existsSync } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :13
import fs from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/memory/embed-server.ts :21
import fs from 'node:fs' - fs ryj-dev-session-manager-1b1da7e/src/main/memory/embeddings-runtime.ts :11
import fs from 'node:fs' - fs ryj-dev-session-manager-1b1da7e/src/main/memory/embeddings.ts :11
import fs from 'node:fs' - fs ryj-dev-session-manager-1b1da7e/src/main/memory/model-loader.ts :14
import fs from 'node:fs' - fs ryj-dev-session-manager-1b1da7e/src/main/memory/note-io.ts :6
import fs from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/memory/store.ts :6
import fs from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/memory/watcher.ts :6
import fs from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/notes-manager.ts :11
import fs from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/pipeline-store.ts :3
import { readFileSync, mkdirSync, watch, type FSWatcher } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/plugin-manager.ts :3
import { mkdirSync, cpSync, existsSync } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/pty-manager.ts :6
import { mkdirSync, writeFileSync } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/schedule-store.ts :3
import { readFileSync, mkdirSync, watch, type FSWatcher } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/session-store.ts :3
import { readFileSync, mkdirSync } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/settings-store.ts :3
import { readFileSync, mkdirSync } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/split-groups-store.ts :3
import { readFileSync, mkdirSync } from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/wiki-embeddings.ts :12
import fs from 'fs' - fs ryj-dev-session-manager-1b1da7e/src/main/wiki.ts :11
import fs from 'fs'
shell / exec 6
- shell (weak) ryj-dev-session-manager-1b1da7e/src/main/git-worktree.test.ts :6
import { execFileSync } from 'node:child_process' - shell ryj-dev-session-manager-1b1da7e/src/main/git-worktree.ts :9
// Everything shells out to `git` via execFileSync (`git -C <dir> ...`). The - shell ryj-dev-session-manager-1b1da7e/src/main/hook-server.ts :413
// The orchestrator is never spawned via /spawn (it uses - shell ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :977
agentName: z.string().describe('Name of the agent to spawn (from list-agents)'), - shell ryj-dev-session-manager-1b1da7e/src/main/plugin-manager.ts :4
import { execSync } from 'child_process' - shell ryj-dev-session-manager-1b1da7e/src/main/pty-manager.ts :2
import { execSync } from 'child_process'
network 6
- net ryj-dev-session-manager-1b1da7e/src/main/hook-server.ts :1
import { createServer, type Server, type IncomingMessage, type ServerResponse } from 'http' - net ryj-dev-session-manager-1b1da7e/src/main/index.ts :202
return net.fetch(pathToFileURL(filePath).toString()) - net ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :805
const res = await fetch(`http://127.0.0.1:${port}${endpoint}`, { - net ryj-dev-session-manager-1b1da7e/src/main/memory/embed-client.ts :15
import net from 'node:net' - net ryj-dev-session-manager-1b1da7e/src/main/memory/embed-server.ts :19
import net from 'node:net' - net ryj-dev-session-manager-1b1da7e/src/main/memory/model-loader.ts :65
const res = await fetch(url)
database 1
- db ryj-dev-session-manager-1b1da7e/src/main/memory/embeddings.ts :13
import Database from 'better-sqlite3'
tool registrations 46
- create-memory ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :359
- read-memory ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :416
- edit-memory ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :431
- batch-section-edit ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :469
- delete-memory ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :529
- search-memories ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :564
- list-memories ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :630
- add-tags ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :654
- remove-tags ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :685
- repair-related ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :718
- spawn-session ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :834
- list-sessions ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :886
- send-message ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :915
- list-agents ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :944
- spawn-agent ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :973
- pipeline-get-task ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1015
- pipeline-set-stage ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1031
- emit-milestone ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1048
- canvas-show ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1075
- canvas-inspect-image ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1134
- canvas-list-artifacts ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1155
- canvas-focus ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1176
- pipeline-rename-session ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1196
- pipeline-request-approval ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1214
- merge-worktree ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1237
- pipeline-put-artifact ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1263
- pipeline-get-artifact ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1282
- pipeline-start ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1299
- pipeline-start-review ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1323
- list-todos ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1396
- read-todo ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1416
- create-todo ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1431
- update-todo ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1445
- delete-todo ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1470
- list-tags ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1480
- list-scheduled-tasks ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1512
- get-scheduled-task ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1539
- create-scheduled-task ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1569
- update-scheduled-task ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1602
- enable-scheduled-task ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1634
- disable-scheduled-task ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1648
- delete-scheduled-task ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1662
- list-scheduled-task-runs ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1676
- list-wiki-articles ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1704
- read-wiki-article ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1718
- search-wiki ryj-dev-session-manager-1b1da7e/src/main/mcp-server.ts :1738
install hooks 1
- postinstall ryj-dev-session-manager-1b1da7e/package.json :22
electron-builder install-app-deps
declared dependencies 31
- @modelcontextprotocol/sdk@^1.29.0
- @huggingface/transformers@^3.0.0
- @xterm/addon-fit@^0.10.0
- @xterm/addon-webgl@^0.18.0
- @xterm/xterm@^5.5.0
- better-sqlite3@^11.5.0
- d3-force@^3.0.0
- framer-motion@^11.0.0
- graphology@^0.26.0
- graphology-types@^0.24.8
- gray-matter@^4.0.3
- node-pty@^1.0.0
- react@^18.3.0
- react-dom@^18.3.0
- react-markdown@^10.1.0
- remark-gfm@^4.0.1
- sigma@^3.0.2
- sqlite-vec@^0.1.6
- zustand@^5.0.0
- @types/better-sqlite3@^7.6.0
- @types/d3-force@^3.0.0
- @types/react@^18.3.0
- @types/react-dom@^18.3.0
- @vitejs/plugin-react@^4.3.0
- autoprefixer@^10.4.0
- electron@^33.0.0
- electron-builder@^25.0.0
- electron-vite@^5.0.0
- postcss@^8.4.0
- tailwindcss@^3.4.0
- typescript@^5.6.0