neuron-explorer
Qwen3.5‑4B 전용 조향형 뉴런 탐색기, 모든 MLP 뉴런을 밀어 결과를 보관·탐색
LLM을 로컬 PC·NAS에서 무료로 실행, Eugene Plexus가 llama.cpp 설치·GPU에 맞는 모델 제안·API 연동
Run LLMs locally on your own PC or NAS, privately and for free. Eugene Plexus installs llama.cpp, suggests models that fit your GPU, and connects your apps through OpenAI and Anthropic Messages APIs.
개발 도구Python · TypeScriptGitHub @eugene-plexus온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Workbench: Eugene Plexus's own chat app. Chat and web search, signed in with Eugene, through the same doors as any app.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Eugene Plexus's own chat app. It lets you chat with the models your Eugene install serves, and search the web while you do. It signs people in with Eugene. One person can use it with Eugene's passphrase, or a small business can use it with an account for each person.
Workbench is an app (a spoke), not part of the hub. It reaches Eugene the same way any other app does:
It holds no operator or node-enrollment credential. Node folder tools additionally use Workbench's sign-in registration and the initiating person's session, checked by Eugene for each operation. The core design is specs/docs/design/workbench-v1.md; node file helpers describe central hosting and per-person access.
Chrome, Edge and Firefox. Safari: checked with WebKit only.
See browser checks and known limits, including looping previews.
Install Workbench from Apps in Eugene's console. The install does three things:
Open it from the same page.
For a central Workbench, enroll each file-serving machine as an ordinary Eugene node. In People → Files on your machines, enable file support, register existing folders, and assign each person read or text-write access. The node prepares its bundled helper automatically; no model or separate Workbench installation is needed there. Windows service and Linux system installations currently support file helpers. Select these folders per chat in Workbench; the browser needs no route to the desktop. See the setup and platform guide.
Workbench's settings are on its page in the console. One controls whether the owner may read the chats and media of the people the owner gives Workbench to (off by default). Three are for Memory: whether it is on, how many notes each person may keep, and whether notes may go to models that run outside a person's machines. Five are for documents: whether Workbench reads documents at all, the largest file it takes, how long a file may be and still be read whole, how many passages one person may keep, and whether passages of saved documents may go to models that run outside a person's machines. Three more are for search by meaning: which search model to use (Automatic, the default, picks the first one that runs on your own machines and is running now), whether the text of documents and of questions may go to a search model that runs outside your machines (off), and the most requests a minute adding meaning may make (30, so a chat never waits behind an import). Two more are for sorting what a search finds: which result sorter puts the best passages in order (Automatic, the default, picks the first one that runs on your own machines and is running now; Off leaves the passages as the search found them; a sorter outside your machines is used only if you name it and allow the text of documents to go outside), and Sort time, how long a sort may be expected to take (3 seconds: Workbench measures how fast the sorter reads, never while a question waits, and leaves the passages as found when sorting would take longer; a sort that is asked and does not answer within twice Sort time is given up on, and the sorter is left alone, whatever the size of the question, until a small test shows it answers again or Sort time is raised so that twice it is longer than the wait that was given up on).
Interactive results appear beside their answers. Open app runs a self-contained MCP App in an isolated view; forms use the local A2UI forms catalog. Both show requested server actions in a separate review with Allow once and Decline. Network/device-dependent apps keep their text fallback. This is a constrained MCP Apps renderer, not full browser conformance with the upstream sandbox model.
In an empty chat, Answer with selects normal chat, Workbench through AG-UI, or an authorized connected agent. Owners add connections and choose people in Manage agent connections. Runs support Stop, saved continuation and interrupt responses; reloading never resends a run. See the capability matrix and limits.
Network MCP connections use HTTPS, except for loopback HTTP, with an optional bearer credential. They are shared with everyone signed into this Workbench. Tool results and arguments stay with the answer. Stopping or editing a chat does not undo actions already taken.
Local MCP servers are available to the install owner when the launcher confirms Workbench's own OS account. In Toolbox, save an absolute executable path, a JSON argument array and optional secret environment values. Start and check runs it once to discover tools. Selecting it for a chat starts a process for that answer, with approval for each call. At most four local processes can run at once; Stop and graceful shutdown close them. Failed calls are never automatically replayed.
Install the program and its dependencies separately, where Workbench's account can execute them; Workbench does not run a package installer or shell command string. On Windows use an .exe such as python.exe or node.exe, putting the script path in Arguments. Keep secrets in environment values, since process lists can show arguments. Stderr is discarded to keep third-party credential output out of shared logs.
Local servers are trusted code in Workbench's account: they can read its files, including people's chats, app credentials and granted folders. Their separate working folders are not sandboxes. Other people cannot list or use them. Per-person process isolation and OAuth sign-in to MCP servers remain later slices; see the MCP design.
Folder grants apply to Workbench's built-in file tools. The machine administrator must first give Workbench's service account access to the specific host folder; saving a grant does not change OS permissions. Windows uses the app's service identity; Linux needs a stable group and systemd configuration. Follow the folder provisioning guide.
Only the named recipient can use a grant. Removing it blocks pending calls but keeps files and prior chat results. File tools refuse links, special files, replaced folders and Workbench's private storage. Reads accept small UTF-8 text files; edits require the hash from a prior read and refuse changed content. Writes are in place: an interrupted or failed write may leave partial changes and is never automatically repeated. There are no delete, rename or execution operations.
The server is Python (FastAPI). The page is React and TypeScript, built by Vite.
uv venv --python 3.12 .venv
uv pip install --python .venv -e ".[dev]"
.venv/bin/pytest
cd web
npm ci
npm test
npm run build # writes src/eugene_plexus_workbench/static/
python scripts/check-tools-sabotage.py checks that removing approval,
ownership, revocation and interrupted-call guards breaks the behavioral tests,
then restores the exact working files. Run it alone.
python scripts/check-scenes-sabotage.py does the same for the working scenes:
the scene gate, the scene beside the progress line, and the scenes' own policy.
Working scenes (Eugene at the bench while a model works) are animated SVGs
in web/public/scenes/, each listed with its phrase in web/src/lib/scenes.ts.
A scene is drawn by a language model, so web/src/scenes.test.ts gates every
file as text: no script or outside reference, a reduced-motion rule that stops
every loop, matching first and last keyframes, and at most 32 KB.
tests/test_scenes_browser.py renders each one in Chrome.
For system Chrome coverage,
build the page and set WORKBENCH_PLAYWRIGHT to a playwright-core installation
before running pytest; WORKBENCH_CHROME can override the browser executable.
The built page is gitignored on main. Eugene's app catalogue installs from a commit on the dist branch, which is main plus that build. A GitHub archive of main alone would install with no page.
To make a dist commit from a main commit:
dist beside a clean main.main's files and the build (git archive of main, then src/eugene_plexus_workbench/static/, added with git add -f).BUILD_INFO as built-from: eugene-plexus/workbench@<main commit>.src/eugene_plexus_workbench/_build.py back as main has it. git archive stamps the commit into it. Left stamped, an archive of dist would name main's commit instead of its own.dist, and point the agent's apps_catalogue.yaml at the new commit.The config-trio shapes are generated from eugene-plexus/specs at the commit in SPECS_REF. Run python scripts/codegen.py to regenerate them.
The backend's interaction API v1
keeps versioned surfaces and approved action intent through restart. It reuses
chat ownership, answer branches and sign-in checks, and never retries an uncertain
external call. Schema 17 adds durable AG-UI runs and event projections after
backing up an older database. Headless backends support MCP Apps 2026-01-26,
A2UI 0.9.1 with the forms catalog, and AG-UI 1.0 in both serve and connect directions.
The AG-UI contract
defines the supported event subset, configured agents, continuation and replay.
Backend capabilities are separate from production renderer capabilities, which
remain empty until browser acceptance. The test_interactions, test_mcp_apps,
test_a2ui and test_agui* suites use real HTTP and persisted state; their
check-*-sabotage.py scripts prove the corresponding guards are tested.
Apache 2.0. Eugene's mascot and logo come from the project's website and are under the same licence, as are the working scenes drawn from them.
.gitignore file lists, folders too deep, files over a limit), and its rules: an ignore list written like a .gitignore file (a pattern Workbench cannot use is refused in words), whether hidden files are read, and whether the folder's own .gitignore files are respected. Leave out on one file writes its path on the ignore list, so it does not come back. Remove folder takes its files out of your documents and never touches the folder or your access to it. Uploads and folders are counted apart.