
Bling Bag
io.github.tjclaude88由 GitHub 帳號 tjclaude88 發布v0.2.0更新於 Oct 27, 2026
Give your bot an identity!
概覽
替 AI 助理建立機器人角色:讀取 bling.json 身分檔、回傳各平台樣式,並可隨機抽出收藏式角色。
- 可以做什麼
- 從 bling.json 檔案讀取已設定的機器人角色(名稱、個性、外觀、主題)
- 依終端機、網頁、Slack、Discord 或 IDE 格式回傳主題樣式
- 從 WOW 辦公室職員池或 Legends 歷史人物池隨機抽出角色,附稀有度評分與分享卡
- 重新顯示最近一次抽出的分享卡
- 將最近一次抽出結果寫入 bling.json,並先備份原檔案
- 適用情境
- 適合希望助理在各種輸出中維持一致名稱、語氣與配色主題的情境,也適合需要帶稀有度分級的趣味隨機角色產生器,用於展示、機器人與分享卡。
- 執行需求
- 需要 Node.js 20 以上版本與支援 MCP 的用戶端;以 stdio 在本機執行,通常透過 npx 啟動。可選擇設定 BLING_PATH 或傳入 --bling 參數指定 bling.json 路徑,否則使用工作目錄下的 ./bling.json。該檔案需包含 name、personality(tone、formality、humor)與 theme(primary_color、accent_color,格式為 #RRGGBB)。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Bling Bag,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
Bling Bag
Give your bot an identity.
Your bot has a name. Now give it a personality, a look, and a backstory.
Roll the wheel and see what you get — or write your own in a bling.json file.
What you get
Five MCP tools and two identity pools:
WOW — Weird Office Workers
Roll a random quirky office-worker bot: name, job title, desk setup, habits, coffee ritual, and a screenshot-ready share card. 99/99 tests, full rarity engine, 13 weighted trait pools.
Legends — Historical Figures
Same engine, different universe. Roll a historical figure in an absurd corporate role — Julius Caesar as Hostile Takeover Specialist, Marie Curie as Lab Safety's Most Wanted, Napoleon as Regional Manager (France & Surrounding Areas).
Pass variant: "legends" to roll_identity to use it. Default is "wow".
Install
Prerequisites
- Node.js 20 or later
- An MCP-compatible client (Claude Code, Claude Desktop, Codex, Cursor, etc.)
Add the package
Or run it on-demand without installing — MCP clients can launch it directly via npx bling-bag (see client config below).
For development (modifying the source)
Produces a runnable server at dist/index.js.
Wire it into your MCP client
The server uses stdio transport — clients launch it as a child process, not over a network port.
Claude Code
Add to your Claude Code MCP config (location varies by version):
npx -y bling-bag downloads and runs the latest version without requiring a separate install step.
Claude Desktop
Same shape, in claude_desktop_config.json:
Pinning to a version (recommended for production)
To avoid picking up future releases automatically, pin a specific version:
Developer-mode invocation (from a local clone)
If you've cloned the repo and want to run from dist/ directly, use:
If BLING_PATH is not set, the server looks for ./bling.json in its working directory.
Config resolution order
The server resolves the bling config path in this order:
--bling <path>CLI argument (highest priority)BLING_PATHenvironment variable./bling.jsonin the server's working directory (default)
bling.json — the bot's identity file
Three fields are required: name, personality (with tone, formality, humor), and theme (with primary_color and accent_color as #RRGGBB hex strings).
Minimum example
Full example (with all optional sections)
Validation rules
name— non-empty stringpersonality.tone,personality.formality,personality.humor— non-empty stringstheme.primary_color,theme.accent_color— must match^#[0-9A-Fa-f]{6}$(no shorthand#RGB, no missing#)
Validation errors come back as isError: true with a structured { error: "..." } body that names the missing or malformed field — agents can self-correct.
Typical agent flows
Flow A — adopt the configured identity
Flow B — generate a fresh random identity
Tool reference
All tools return both content[].text (JSON-stringified) and structuredContent (the parsed object). Errors come back with isError: true and a { error: string } body.
WOW (Weird Office Workers) — what makes it interesting
The random-roll system is built for collectibility:
- 13 weighted pools, 465 entries — names, job titles, habits, coffee rituals, height, accessories, etc.
- 5 rarity bands per pool — Common (50%), Uncommon (30%), Rare (15%), Legendary (4%), Mythic (1%)
- 5 character tiers computed from rarity score:
- Filing Clerk (50% of rolls)
- Team Lead (30%)
- Middle Manager (14%)
- C-Suite (5%)
- HR Warned Us About (1%)
- Named Subjects — hand-authored 1-of-1 characters appear at ~0.5% probability, always classified as "HR Warned Us About"
- HOMUNCULUS frame — every roll wraps the paragraph in a classified-document share card with subject ID, cohort (weekday), tier, ingestion date, and a flag (e.g. Do Not Contact)
Distribution is empirically tested: a 10k-roll test in tests/mystery_box.test.ts enforces ±2pp tolerance against the spec target.
Example output
Development
Inspection scripts
Two Node ESM helpers under scripts/ let you inspect the WOW engine without booting the MCP server (these are included only in a cloned repo — they are not shipped in the npm install bling-bag package):
Project layout
License
MIT
來源:README.md,提交 9af10ca
工具
0版本歷史
1- v0.2.0最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分