AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
翻譯準備中
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
One library for the skills, agents, commands and rules scattered across every
AI coding tool you use — Claude Code, Cursor, Codex, Gemini CLI and a dozen
more. It works on the folders those tools actually read, so enabling,
disabling and organising act on the real files rather than on a copy.
A standalone desktop application, built with Tauri and Rust. Derived from the
Obsidian plugin AI Skills Manager;
see NOTICE.md.檢視完整 README ↗One library for the skills, agents, commands and rulesscattered across every AI coding tool you use.
Website · Install · Features · Supported tools · Changelog · Architecture
Every AI coding tool keeps its skills, agents, commands and rules in a folder of its own — some global, some per project, most both. Nothing shows you all of it at once, the same prompt ends up pasted into three places and drifting apart, and a checkbox in a manager that never touches the file the tool reads has not disabled anything.
skills-hub works on the folders those tools actually read. Enabling, disabling and organising act on the real files, never on a copy.
Every tool's items side by side, searchable and filterable by type, tool and
workspace. Disabling moves the file into a .skillmanager-disabled folder
beside it, and enabling moves it back — so the tool genuinely stops seeing it.
Symlink-aware: a relative link is recomputed for its new depth.
One small markdown note per item, with frontmatter, in a folder you choose. Put it in an Obsidian vault and your tags sync with everything else and stay queryable from Dataview. A note carrying your own tags is never removed automatically.
Search the skills.sh registry, or point it at any repository git can reach — no account, no token. Everything installed records the commit it came from, so updates arrive as a diff before anything is overwritten, and can be put back.
What a tool carries every turn — an item's name and description — separated from what it loads once invoked. Where a tool keeps a history, that history says which items are actually used.
Every MCP server every tool is configured with, global and per project, read-only. Plugin bundles from Claude Code and Codex, with their items in the library and the bundle switchable as a whole.
On macOS, a status item with a popover: search the whole library, switch an item on or off, and carry on — the panel takes the keyboard without pulling you out of your editor.
And the details: twenty colour palettes, a choice of interface and code fonts, and a What's new that reads this repository's changelog, filterable by scope.
Claude Code · Cursor · Codex · OpenCode · Antigravity · GitHub Copilot ·
Cline · Trae · Windsurf · Goose · Hermes · Pi · Gemini CLI · Roo Code ·
Continue · and the shared ~/.agents/skills convention.
Every path is editable, so a tool that moves its folders — or a setup that was never standard — does not have to wait for a release.
| Platform | Install |
|---|---|
| macOS — universal, Apple silicon and Intel | brew install --cask nimble-123/tap/skills-hub |
| Windows | winget install nimble-123.skills-hub |
| Linux | the .deb or .AppImage from the latest release |
The winget manifest is in review;
until it is merged, take the -setup.exe from the
latest release,
where every installer above comes from.
On first launch it asks where to keep its notes. Your skills are never moved or copied — only those notes live there.
Builds are not signed yet, and Homebrew quarantines what it downloads like any browser would. Open the app, let it be refused, then allow it under System Settings → Privacy & Security, where an Open Anyway button now sits. Or take the quarantine flag off yourself:
xattr -dr com.apple.quarantine /Applications/skills-hub.app
Control-clicking the app and choosing Open no longer works — macOS 15 removed
that bypass. The flag is set when a file is downloaded, so a build carried
over on a USB stick or with scp has none and simply opens.
pnpm install
pnpm tauri build # → .app and .dmg, or the platform's equivalent
Four layers, dependencies pointing inwards only. skills-core never imports
tauri — enforced by cargo deny, not by discipline. $HOME is injected
rather than read, which is what makes the scanner testable against temporary
directories, and crates/cli drives the same domain code from a terminal as
proof that it really is decoupled.
ARCHITECTURE.md has the long version, and SPEC.md what the application guarantees on disk, each guarantee cited to the test that holds it up.
Issues and pull requests are welcome — CONTRIBUTING.md has the branching model and how a change becomes a release.
pnpm install
pnpm tauri dev # run the app
cargo test --workspace # domain tests + regenerate src/bindings.ts
cargo clippy --workspace --all-targets -- -D warnings
pnpm check # Biome: format + lint
pnpm typecheck
pnpm test # vitest, including a headless render of the window
pnpm icons # regenerate the icon registry
pnpm screenshots # regenerate the screenshots
pnpm tour # regenerate the tour at the top of this page
pnpm architecture # redraw the architecture figure
src/bindings.ts is generated by tauri-specta and committed; CI fails if
cargo test -p skills-hub produces a diff.
The screenshots and the tour come from a demo build that swaps only the modules talking to the host, so they are the real components and the real stylesheet against fixtures.
cargo run -p skills-cli -- scan # the real scanner, real folders
cargo run -p skills-cli -- usage codex # what a tool's history says
cargo run -p skills-cli -- mcp # every configured MCP server
MIT — see LICENSE. Derived from the Obsidian plugin AI Skills Manager; see NOTICE.md.