TreeMap
A free, open-source disk-space visualizer. Squarified treemap, duplicate hunting, disk-full forecasting, and cleanup that only ever moves files to the Trash.
翻譯準備中
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證A personal, local-first, AI-native notes app: Markdown files you own, a Notion-like editor, search by meaning, database views and an MCP server for AI assistants. A fork of SilverBullet.
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
A personal, local-first, AI-native notes app. Your notes stay plain Markdown files in a folder you own. On top of them you get a Notion-like editor, search that understands meaning as well as words, a graph of related notes, database views, and an MCP server so AI assistants can read and write the same notes. Everything runs on your own machine; note text leaves it only when you ask a question with Ask.檢視完整 README ↗A personal, local-first, AI-native notes app. Your notes stay plain Markdown files in a folder you own. On top of them you get a Notion-like editor, search that understands meaning as well as words, a graph of related notes, database views, and an MCP server so AI assistants can read and write the same notes. Everything runs on your own machine; note text leaves it only when you ask a question with Ask.
BlackBullet is a fork of SilverBullet (v2.11 line; Rust server, TypeScript / CodeMirror 6 client) and is not affiliated with that project. It keeps SilverBullet's internal names (crates, SB_* environment variables, plug API), so SilverBullet plugs and libraries keep working. Upstream's manual is in docs/.
Ctrl-q q) and a daily journal (Ctrl-q j); a mode chip in the header shows Edit or Preview (Ctrl-Alt-p, Editor: Toggle Preview), and with vim keys (on by default where there is a mouse) NORMAL / INSERT / VISUAL, where Esc steps Insert → Normal → Preview; beside it a Styled | Code segment hides or shows the Markdown marks (Ctrl-Alt-k, Editor: Toggle Code, :code / :styled).Ctrl-q s), related notes for the page you are on (Ctrl-q r), and a graph of links and similar pages (Ctrl-Shift-g).Ctrl-Alt-n); a trash you can restore from.Ctrl-q a, needs an Anthropic API key).Ctrl-e, the tree's Export… or Export: PDF / Export: Word / Export: Markdown with Images (PDF and Word are made by the sidecar).You need Docker with Compose v2.
git clone https://github.com/HayatoShimada/blackbullet.git
cd blackbullet
./setup.sh
The first run builds the images (10 to 20 minutes); later runs just start them. Then open http://127.0.0.1:3000.
./space. To use an existing folder of Markdown files, set SPACE_DIR=/path/to/notes in .env before running setup.sh.setup.sh also starts the search sidecar and connects it. The first indexing downloads a ~120 MB embedding model once and runs it on the CPU. MEMO_EMBED=off in .env keeps search word-based with no download..env; .env.example explains each one.| Command | What it does |
|---|---|
./setup.sh --status | Health of the app and the sidecar, index and model state, disk use |
./setup.sh --backup [dir] [--with-secrets] | A timestamped .tar.gz of the notes (secrets blanked unless --with-secrets) |
./setup.sh --restore <file> | Merges a backup into the notes folder after saving a safety copy |
./setup.sh --upgrade | git pull, rebuild and restart |
./setup.sh --stop | Stops everything; the notes stay where they are |
The sidecar speaks MCP at http://127.0.0.1:3010/mcp, protected by MEMO_MCP_TOKEN from .env (setup.sh prints this command with the token filled in):
claude mcp add --scope user --transport http memo http://127.0.0.1:3010/mcp \
--header "Authorization: Bearer <MEMO_MCP_TOKEN>"
Tools include search_notes, read_note, read_section, related_notes, list_tasks, list_projects, list_journal, recent_changes, append_journal, add_inbox, complete_task, write_note, edit_note, update_section, doc_status and reindex_docs. CONFIG (where tokens and keys live) is never readable or writable through MCP, and the general edit tools do not write Library/ or Templates/. packages/memo-mcp/contrib/plan_to_memo.py is a Claude Code hook that records each approved agent plan under the project's page. Other clients and the options are described in packages/memo-mcp/README.md.
Ask: Notes sends the sections that match your question to the Anthropic API and shows the answer with [n] links back to each section. Run Ask: Set up once to store an API key in the space's CONFIG page. Nothing is sent unless you run the command, and a space marked :confidential is never sent unless you allow it. Scopes (#tag, in:Folder/, kind:pdf, since:2026-01-01), follow-ups, saved answers and limits are described in Memo Ask.md.
Declare a database once in CONFIG:
database.define {
name = "projects",
folder = "Projects/",
template = "Templates/Project",
properties = {
{ key = "status", type = "select", options = {"active", "someday", "done"}, default = "active" },
{ key = "due", type = "date" },
},
}
Then a ```db block with database: projects shows it as a table, board or calendar with + New, filters, a row menu (rename, duplicate, archive, move to trash) and Save view. Database: Insert View (or /database) writes the block for you. See DB View.md and Database.md.
The layout adapts to phones: 44 px touch targets, cards instead of wide tables, and a drawer with Search, New and Journal.
./setup.sh --tailnet adds a front door reachable only from your Tailscale network and only by the logins you allow, with a real domain and certificate and no password screen. The same address serves the MCP endpoint (https://<SITE_DOMAIN>/mcp) to other machines on the tailnet. Setup steps are in deploy/tailnet-proxy/README.md.
The ? button in the header opens the in-app guide (Japanese). The command palette (Ctrl-/) lists every command with its shortcut. Esc then Tab moves the keyboard from the editor to the header.
Without a local Rust toolchain or Node 24, use Docker: docker compose build for release images, scripts/fork-dev.sh for a fast client loop, and scripts/ui-tour.mjs for a fixed set of screenshots on the demo space in examples/demo-space. With the toolchains installed:
npm run build:client
SB_DISABLE_SERVICE_WORKER=1 cargo run -p silverbullet -- <space-dir>
npm test
cd packages/memo-mcp && npm test
Design references: dev-docs/product-design.md (what the interface means), dev-docs/design-system.md (how it looks), and a Japanese summary in dev-docs/design.ja.md. See also CONTRIBUTING.md and STYLE.md.
BlackBullet is licensed under the GNU General Public License v2.0 only (GPL-2.0-only).
It is based on SilverBullet, which is MIT-licensed; the MIT license lets that code be redistributed under the GPL as long as its copyright and permission notice stay with it, which NOTICE.md reproduces.
Copyright (C) 2026 HayatoShimada.