01 · Roasts
One repo ate the portfolio
notebooklm-py has 19,121 of the account's 19,454 stars; the other projects are still auditioning for the spotlight.
CI is selective
weread-omni and beamcode ship serious pipelines, while mcp-filebridge has tests but no CI or license—security bridge, trust-me deployment.
PR factory
1,889 PRs and 2,515 commits this year: the contribution graph looks less like a calendar and more like a throughput benchmark.
Architecture enjoys paperwork
notebooklm-py has six ownership layers and evolving ADRs; the auth recovery ladder has more stages than most launch plans.
Built using
Zoral
Shadows one worker for a week, then takes over their job with zero extra setup. Behaves exactly like the original.
zoral.ai
02 · Category breakdown
- Impact25% weight78B
- Consistency20% weight88A
- Quality20% weight82A
- Depth15% weight65C
- Breadth10% weight65C
- Community10% weight65C
03 · Stats
365-day commit heatmap
197 active days
Language distribution
- Python80%
- TypeScript19%
- JavaScript0%
- Makefile0%
- CSS0%
- Shell0%
- Other1%
04 · Numbers
Owned repos
non-fork
5
Commits
last 12 months
2,515
Followers
812
Joined GitHub
Apr 2011
05 · Top repos
teng-lin /
notebooklm-py
Popular, production-oriented Python API and CLI for automating NotebookLM, with 19,121 stars, broad artifact generation, Web and Android backends, and unusually rigorous architecture, CI, and test guardrails.
teng-lin /
beamcode
BeamCode is a documented, typed TypeScript agent-session broker with six backend adapters, WebSocket collaboration, encrypted transport, persistence, and a substantial reducer/effects architecture backed by tests and CI.
teng-lin /
weread-omni
A polished TypeScript WeRead SDK/CLI with a canonical 40-operation surface, QR auth, content library, and agent skill; strong engineering and verification are evident, but adoption is currently limited to 6 stars and the repository shows a very recent launch.
teng-lin /
mcp-filebridge
A well-documented, tested cross-language MCP/S3 file bridge with OAuth and deployable ConvertX/Markdownify examples, but currently an unlicensed, non-typed, early-stage repository with no visible external adoption.
06 · Timeline
- Apr 18, 2011Joined GitHub
- Jan 7, 2026Created notebooklm-py — Unofficial Python API and agentic skill for Google Gemini Notebook. Full programmatic access to NotebookLM's features—including capabilities the web UI doesn't expose—via Python, C
- Feb 16, 2026Created beamcode
- Jul 19, 2026Created mcp-filebridge — Cross-language (Python + TypeScript) S3 presigned-URL file side-channel for remote MCP servers, with a ConvertX example (OAuth + MCP-Apps upload widget)
- Aug 3, 2026Created weread-omni — Everything the official WeRead (微信读书) Agent Skill does — plus public accounts, book imports, WeRead AI, and write access to your highlights and shelf. One canonical surface of 40 o
- Sep 3, 2026Most recent push to notebooklm-py
07 · Compare
08 · Rubric
How this score was produced
Overall = Σ (category × weight) + gentle top-end curve
Tier thresholds
▸ How the pipeline works
- 01Scrape.Pull every non-fork repo pushed in the last 90 days, plus your contribution calendar, followers, and language byte counts — straight from GitHub's REST & GraphQL APIs.
- 02Triage.A small model reads every repo's file tree + README and picks the 20 files per repo that actually reveal how you code.
- 03Grade each repo. All repos run in parallel through a fast scoring model that reads the picked files and rates each one independently on Impact, Quality, and Depth — with evidence citations.
- 04Aggregate. A larger reasoning model combines the per-repo scores with server-computed stats (heatmap, commit cadence, language entropy, follower count) to produce the 6-dimension profile score + roasts.
- 05Correct.Deterministic server-side checks enforce anchor-scale floors (e.g. a profile with 2,000+ public commits can't score 30 Consistency) and recompute the final verdict.
~90 seconds per profile, ~$0.25 in compute. Total of ~240 files read across your top-12 repos. One rating per GitHub account per day.
▸ Data sources & caveats
- Heatmap & commit totals: GitHub GraphQL
contributionsCollection— covers the last 365 days, includes private repos when the user has opted in (default). - Language %: byte totals across the top 30 owned non-fork repos.
- Curve: a small upward nudge centered on raw score ≈ 70, capping at 100. Prevents specialists from being unfairly penalised for narrow breadth.
- Anchor corrections: when server-measured signals (e.g. privateWorkLikely, multiRepoVolume, follower count) mandate a minimum category score, the aggregation step enforces it. These are signal-conditional, not identity-based floors.