[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-1454":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":8,"language":10,"languages":8,"totalLinesOfCode":8,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":14,"subscribersCount":14,"size":14,"stars1d":14,"stars7d":14,"stars30d":15,"stars90d":14,"forks30d":14,"starsTrendScore":14,"compositeScore":16,"rankGlobal":8,"rankLanguage":8,"license":17,"archived":18,"fork":18,"defaultBranch":19,"hasWiki":20,"hasPages":18,"topics":21,"createdAt":8,"pushedAt":8,"updatedAt":23,"readmeContent":24,"aiSummary":25,"trendingCount":14,"starSnapshotCount":14,"syncStatus":26,"lastSyncTime":27,"discoverSource":28},1454,"lich-skills","LichAmnesia\u002Flich-skills","LichAmnesia",null,"","TypeScript",228,22,215,0,10,4.09,"MIT License",false,"main",true,[22],"gemini-cli-extension","2026-06-12 02:00:28","# lich-skills\n\n> Personal skill collection for **Claude Code**, **Gemini CLI**, and **OpenAI Codex** — by [@LichAmnesia](https:\u002F\u002Fgithub.com\u002FLichAmnesia).\n\nTelegraph-style, opinionated, no filler. Engineering judgment skills plus high-leverage utility tools.\n\n中文版：[README-zh.md](README-zh.md)\n\n---\n\n## The spec-driven-dev loop\n\n```\n   DEFINE         PLAN           BUILD          TEST          REVIEW          SHIP\n ┌────────┐   ┌────────┐   ┌─────────┐   ┌────────┐   ┌────────┐   ┌────────┐\n │  Spec  │──▶│  Plan  │──▶│  Build  │──▶│  Test  │──▶│ Review │──▶│  Ship  │\n │  PRD   │   │ Tasks  │   │  Impl   │   │ Verify │   │  Gate  │   │  Tag   │\n └────────┘   └────────┘   └─────────┘   └────────┘   └────────┘   └────────┘\n     ▲                                                                 │\n     └─────────────────── feedback \u002F regression ──────────────────────┘\n```\n\nOne skill, six phases, explicit exit criteria per step. See [`skills\u002Fspec-driven-dev\u002F`](skills\u002Fspec-driven-dev\u002F).\n\n---\n\n## The debug-hypothesis loop\n\n```\n                          ┌─────────────────────────────┐\n                          │    all hypotheses rejected?  │\n                          │    back to OBSERVE           │\n                          └──────────┬──────────────────┘\n                                     │\n  OBSERVE  ──▶  HYPOTHESIZE  ──▶  EXPERIMENT  ──▶  CONCLUDE\n     │              │                  │               │\n     ▼              ▼                  ▼               ▼\n  Reproduce      List 3-5          One test,       Root cause\n  the bug,       causes +          max 5 lines,    confirmed\n  collect        evidence           falsify         → fix +\n  symptoms       for each          don't confirm   regression test\n     │              │                  │               │\n     │              │           ┌──────┘               │\n     │              │           │ rejected?            │\n     │              │           ▼                      │\n     │              │     next hypothesis              │\n     │              │                                  │\n     └──────────────┴──── everything in DEBUG.md ──────┘\n```\n\nScientific-method debugging. Prevents the #1 AI failure: bulldozing through a wrong theory. See [`skills\u002Fdebug-hypothesis\u002F`](skills\u002Fdebug-hypothesis\u002F).\n\n---\n\n## The aggregate-N-sources loop\n\n```\n                    Trajectories-as-environment\n            ╔════════════════════════════════════════╗\n            ║   src_1   src_2   src_3  ...   src_N   ║\n            ║   [..]    [..]    [..]         [..]    ║\n            ║                                        ║\n            ║   not concatenated. not summarized.    ║\n            ║              navigated.                ║\n            ╚═══════════════════╤════════════════════╝\n                                ▼\n            ┌────────────────────────────────────────┐\n            │       AGGREGATOR  (lite agent)         │\n            │   inspect_file \u002F inspect_section       │\n            │   search_sources \u002F cross_pack_check    │\n            │                                        │\n            │   notes = []  (every claim → path:line)│\n            │   budget = 25 → loop until coverage    │\n            └───────────────────┬────────────────────┘\n                                ▼\n                  pack\u002F  brief.md \u002F findings.md \u002F\n                         sources.tsv \u002F _aggregation_log.md\n```\n\nAgentic aggregation for long-horizon research. N raw notes → 1 structured pack with full `path:line` provenance + cross-source contradictions surfaced. See [`skills\u002Fwiki-aggregate\u002F`](skills\u002Fwiki-aggregate\u002F).\n\n---\n\n## Skills\n\n| Skill | What it does |\n|---|---|\n| [`spec-driven-dev`](skills\u002Fspec-driven-dev\u002F) | Full SDLC workflow: Spec → Plan → Build → Test → Review → Ship. Anti-rationalization tables, verification gates, atomic commits. |\n| [`debug-hypothesis`](skills\u002Fdebug-hypothesis\u002F) | Scientific-method debugging: Observe → Hypothesize → Experiment → Conclude. Anti-bulldozer rules, max 5-line experiments, mandatory `DEBUG.md` evidence trail. |\n| [`wiki-aggregate`](skills\u002Fwiki-aggregate\u002F) | Lift N≥3 raw research artifacts into one structured pack via agentic aggregation. Cheap-pass + tool-budgeted aggregator loop, every claim has `path:line` provenance, cross-source contradictions logged. |\n| [`tavily-search`](skills\u002Ftavily-search\u002F) | Web search + content extraction via the [Tavily](https:\u002F\u002Ftavily.com) API. Use for fact-checking, docs lookup, source-cited research. |\n| [`nano-banana`](skills\u002Fnano-banana\u002F) | Text-to-image and image editing via Google's Nano Banana 2 (`gemini-3.1-flash-image-preview`). Supports `512 \u002F 1K \u002F 2K \u002F 4K`. |\n| [`frontend-design`](skills\u002Ffrontend-design\u002F) | Build distinctive, production-grade frontend interfaces — bold aesthetic direction, intentional typography, and motion that avoids generic AI-slop UI. Adapted from Anthropic's official `frontend-design` skill (Apache-2.0). |\n| [`subagent-brief`](skills\u002Fsubagent-brief\u002F) | Pre-flight discipline for spawning subagents. Anthropic does NOT share prefix across subagents — each one cold-starts on the full prompt. Compress every subagent prompt into a ≤200-word brief before spawning. Five rules + brief template + anti-rationalization table. Backed by arXiv 2604.25899 (Pythia, 2026). |\n\nAll skills read credentials from environment variables (`TAVILY_API_KEY`, `GEMINI_API_KEY`, etc.) — never hardcoded.\n\n---\n\n## Quick install\n\n\u003Cdetails open>\n\u003Csummary>\u003Cb>Claude Code — plugin marketplace (one command)\u003C\u002Fb>\u003C\u002Fsummary>\n\nInside a running Claude Code session:\n\n```\n\u002Fplugin marketplace add LichAmnesia\u002Flich-skills\n\u002Fplugin install lich-skills@lich-skills\n```\n\nDone. All seven skills become available immediately. Verify:\n\n```\n\u002Fskills\n```\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>\u003Cb>Claude Code — git clone\u003C\u002Fb>\u003C\u002Fsummary>\n\n```bash\n# 1. Install Claude Code (if not already)\ncurl -fsSL https:\u002F\u002Fclaude.ai\u002Finstall.sh | bash\n# or: brew install --cask claude-code\n\n# 2. Clone into the global skills directory\ngit clone https:\u002F\u002Fgithub.com\u002FLichAmnesia\u002Flich-skills.git ~\u002F.claude\u002Fskills\u002Flich-skills\n\n# 3. Start Claude Code\nclaude\n> \u002Fskills\n```\n\nFull guide: [`docs\u002Fclaude-code-setup.md`](docs\u002Fclaude-code-setup.md).\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>\u003Cb>Gemini CLI — extensions install (one command)\u003C\u002Fb>\u003C\u002Fsummary>\n\n```bash\ngemini extensions install https:\u002F\u002Fgithub.com\u002FLichAmnesia\u002Flich-skills\n```\n\nThis repo ships a [`gemini-extension.json`](gemini-extension.json) at the root, so Gemini CLI installs it as a first-class extension and auto-discovers every `skills\u002F*\u002FSKILL.md`. Verify:\n\n```bash\ngemini extensions list\n```\n\nManual clone fallback:\n\n```bash\nnpm install -g @google\u002Fgemini-cli\ngit clone https:\u002F\u002Fgithub.com\u002FLichAmnesia\u002Flich-skills.git ~\u002F.gemini\u002Fextensions\u002Flich-skills\n```\n\nFull guide: [`docs\u002Fgemini-cli-setup.md`](docs\u002Fgemini-cli-setup.md).\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>\u003Cb>OpenAI Codex CLI\u003C\u002Fb>\u003C\u002Fsummary>\n\n```bash\n# 1. Install Codex CLI\nnpm install -g @openai\u002Fcodex\n# or: brew install --cask codex\n\n# 2. Install the skill collection\nmkdir -p ~\u002F.codex\u002Fskills\ngit clone https:\u002F\u002Fgithub.com\u002FLichAmnesia\u002Flich-skills.git ~\u002F.codex\u002Fskills\u002Flich-skills\n```\n\nFull guide: [`docs\u002Fcodex-setup.md`](docs\u002Fcodex-setup.md).\n\n\u003C\u002Fdetails>\n\n---\n\n## Why the one-liners work\n\n- **`\u002Fplugin marketplace add LichAmnesia\u002Flich-skills`** — Claude Code reads [`.claude-plugin\u002Fmarketplace.json`](.claude-plugin\u002Fmarketplace.json) at the repo root. That file declares the repo as a plugin marketplace and points the plugin back at its GitHub source.\n- **`\u002Fplugin install lich-skills@lich-skills`** — format is `\u003Cplugin-name>@\u003Cmarketplace-name>`. Both resolve from the same marketplace manifest, which is why the name appears twice.\n- **`gemini extensions install \u003Cgithub-url>`** — Gemini CLI's native `extensions` subcommand clones any public GitHub repo that has a `gemini-extension.json` at its root, then auto-discovers bundled skills from `skills\u002F*\u002FSKILL.md`. The manifest is what makes this one-liner work — without it, Gemini CLI refuses to install the repo as an extension.\n- **[geminicli.com\u002Fextensions\u002F](https:\u002F\u002Fgeminicli.com\u002Fextensions\u002F) listing** — the public extension gallery sources third-party extensions from GitHub repos that have the same `gemini-extension.json` manifest. Having the manifest is necessary (though not sufficient) to appear there.\n- **`git clone` into `~\u002F.claude\u002Fskills\u002F`** — the lowest-common-denominator path. Claude Code reads every `SKILL.md` under `~\u002F.claude\u002Fskills\u002F**` on session start. No marketplace required.\n\n---\n\n## Documentation\n\n| Tool | Install + skill setup |\n|---|---|\n| Claude Code | [`docs\u002Fclaude-code-setup.md`](docs\u002Fclaude-code-setup.md) |\n| Gemini CLI | [`docs\u002Fgemini-cli-setup.md`](docs\u002Fgemini-cli-setup.md) |\n| OpenAI Codex | [`docs\u002Fcodex-setup.md`](docs\u002Fcodex-setup.md) |\n\n---\n\n## Security\n\nNo secrets committed. Repo scanned with [`gitleaks`](https:\u002F\u002Fgithub.com\u002Fgitleaks\u002Fgitleaks) via pre-commit hook and CI on every PR. Skills use environment variables only; example configs use `YOUR_API_KEY_HERE` placeholders. Report any leaked credential via a [private security advisory](https:\u002F\u002Fgithub.com\u002FLichAmnesia\u002Flich-skills\u002Fsecurity\u002Fadvisories\u002Fnew).\n\n---\n\n## Contributing\n\nPRs welcome. New skills should be **specific**, **verifiable**, and **minimal**. See [`CONTRIBUTING.md`](CONTRIBUTING.md).\n\n---\n\n## License\n\n[MIT](LICENSE) © 2026 Shen Huang ([@LichAmnesia](https:\u002F\u002Fgithub.com\u002FLichAmnesia))\n\n---\n\n## Star History\n\n[![Star History Chart](https:\u002F\u002Fapi.star-history.com\u002Fsvg?repos=LichAmnesia\u002Flich-skills&type=Date)](https:\u002F\u002Fwww.star-history.com\u002F#LichAmnesia\u002Flich-skills&Date)\n","lich-skills 是一个为 Claude Code、Gemini CLI 和 OpenAI Codex 提供个人技能集合的项目。它主要包含工程判断技能和高杠杆实用工具，采用 Python 编写。核心功能包括基于规范的开发循环（定义-计划-构建-测试-审查-发布）和假设驱动的调试循环，这些方法论旨在提高开发效率和代码质量，同时避免常见的错误，如基于错误理论强行解决问题。此外，项目还提供了一个轻量级代理用于聚合多个信息源，方便开发者在不进行内容拼接或总结的情况下导航浏览。该项目适合需要提升软件开发流程规范化程度及希望采用科学方法解决复杂问题的场景。",2,"2026-06-11 02:43:53","CREATED_QUERY"]