Clients
Editors, ash and agents
Every client reaches a kernel the same way: through a manager on the same machine, or through a dedicated manager from outside. Because the kernel is bound to the file, they all meet in one kernel.
Agents and the shell
Coding agents use the CLI. It needs no token and no setup beyond the binary,
because it finds or starts a manager of the same OS user. --detach and
logs --follow fit agents that poll; exit codes tell them how a run ended.
VS Code and IntelliJ planned #22
The notebook renderers live in vscode-darkpyonix and intellij-darkpyonix. They show
.py and .pynb files as cells, map the latest run log onto them, and talk to the
manager on the same machine. The work starts after the manager milestone (M2) and is tracked in
#22. Until then, open the file as code and use the CLI in the terminal.
ash planned #20
darkpyonix-ash is the shared browser notebook, a fork of Starboard. A share link lets someone
open a kernel from a browser with the permission the link carries. The manager does not serve ash; it only
gives kernel access. ash is hosted on darkpyonix.dev (see the hub). Opening a kernel
through a share token is tracked in #20.
Ember
darkpyonix-ember is the conversation-first workbench. Its server calls each machine's manager
API to show run status and the latest output. The kernel stack does not know about conversations, accounts
or switching machines.
Several clients at once
Several managers can attach to one kernel, and each gets the same events. The kernel holds the shared
document: cells, versions, locks and who is present. When a client edits a cell, the change is saved to the
file. When the file changes on disk (an agent's edit, git checkout), the kernel reloads it within
a second and tells every client.
Collaboration is moving to the 2025 WebSocket sync over a socket handed to the kernel changing #49 changing #47.
Share permissions changing #49
A dedicated manager issues share tokens per kernel with darkpyonix share FILE --permission ....
| Permission | Code | Run logs and outputs | Run and interrupt | Shut down, manage shares |
|---|---|---|---|---|
viewer1 | yes | |||
viewer2 | yes | yes | ||
viewer3 | yes | yes | yes | |
admin (master) | yes | yes | yes | yes |
These tiers, and today's editor tier for cell editing, are being replaced by five capabilities
that a token carries as a set, with no order: read (view code), history (run logs and outputs),
execute (run and interrupt), edit (edit code, lock cells) and manage (share settings).
Running code and editing code become separate capabilities changing #49.