~ ❯ cat about.mdNanako (菜菜子), or Nyanako (喵菜子) if you know me from Discord. I'm an SRE. Keeping systems reliable is the day job — the projects here are the same instinct pointed somewhere else.
UX has frontend engineers. DX has SRE.
Every one of these started because I needed it. Syrtis (formerly TokenBar) exists because I wanted to know what a session actually cost without opening a dashboard. coralline exists because I've used Powerlevel10k in zsh for years and wanted the same thing in my Claude Code statusline — I only packaged it up because people kept asking how I'd done it.
I share it because sharing is the good part, and once it's public I maintain it properly. What comes next is genuinely unknown — whatever I hit while learning, whatever annoys me enough to open a new repo.
The full story of the TokenBar rewrite (now Syrtis) — Rust core, Swift shell, and the FFI seam between them — is written up here (zh-TW): Rust 的引擎,Swift 的外殼
~ ❯ ls -l ~/projects --sort=stars~ ❯ tokscale models --week --group-by modelReal usage, pushed here every six hours by a cron job on my Mac. The numbers come from tokscale — junhoyeo's Rust engine for reading agent session data, and the engine Syrtis runs on. I send fixes upstream when I trip over them; the Swift shell around it is my part. Grouped by model rather than by client, because the client would lie: I drive GPT models through Claude Code.
last 7 days · 8.5B tokens · 29,057 messages
claude-opus-5-5 ██████████████████░░░░ 82.1% 7016M
claude-sonnet-5-5 ███░░░░░░░░░░░░░░░░░░░ 15.1% 1290M
gemini-4-argon ░░░░░░░░░░░░░░░░░░░░░░ 0.9% 75M
muse-spark-1.3-con ░░░░░░░░░░░░░░░░░░░░░░ 0.6% 51M
grok-4.7 ░░░░░░░░░░░░░░░░░░░░░░ 0.4% 34M
claude-fable-5-1 ░░░░░░░░░░░░░░░░░░░░░░ 0.4% 31M~ ❯ git log --oneline --author=nanako -52026-10-27 shanjie docs(research-log): fuzzy input device check in a zh-TW ta
2026-10-27 shanjie fix(fuzzy): adjacent-key alternatives need a one-syllable
2026-10-27 shanjie docs(fuzzy): the contract names no private host
2026-10-27 shanjie fix(fuzzy): choose() lists the displaced new words before
2026-10-27 shanjie fix(fuzzy): the learning guard no longer depends on whethe~ ❯ tree ~/projects --lineage~ ❯ ssh homelab -- uptimeThe same discipline, off the clock — everything below runs at home:
Proxmox VE 55d uptime · every service in Compose, every service healthchecked
Zero trust Cloudflare Tunnel + Access · 6 tunnels · 20 ZTNA apps · 0 inbound ports
Home Assistant 140 integrations · 406 entities · 56 devices · one Lovelace panel
Self-hosted Immich · Nextcloud AIO · LiteLLM · Open-WebUI · n8n · TrueNAS~ ❯ ssh nyanko.home我一直想要一個地方:能認真聊技術,也能放心做自己。找不到,那就自己開一個。
- 💻 技術控 — agentic coding、熱門 AI 應用、開源工具、軟體開發、DevOps/SRE。想深聊、想求救、想炫專案都可以。
- 💬 只想交朋友、放鬆閒聊 — 完全歡迎,不用很懂技術。
- 🏳️⚧️ 秘密專區 — 我自己是跨女,所以特別開了一區給跨性別、偽娘/男娘:安心做自己、和姐妹聊女裝、交朋友、談談心事。
不管你是哪一種(或同時是好幾種),這裡都有你的位置。
~ ❯ cat .offlineCoffee Sunbeam Barista Max + Option-O Lagom Casa
nutty / chocolate base, with the occasional fruit bomb
Hamsters once shared my life with two hamsters — 877 and 907 days, respectively.
Headphones Sony IER-M9 · MDR-MV1 · MDR-M1 · iFi xDSD Gryphon~ ❯ patreon --thanksIf any of this saved you time or money, a membership keeps the cron jobs running.
~ ❯ contactSomething broken, or an idea for a feature → open an issue on that repo. That's what issues are for, and the answer helps the next person too. If a tool just made your day easier and you want to say so there, that's welcome as well — I read every one.
Anything formal → email me at nanakotsai@nyanako.com.
Anything casual → the Discord above, DM me there, or find me on Threads and X.
A note on language: I'm a native Traditional Chinese speaker and my English isn't fluent — some of my replies go through a translator. Chinese is very welcome, and please bear with me in English.
~ ❯ exitThis page rebuilds itself every six hours · last sync: 2026-10-27 · how





