Ray Obsidian Vault Setup
imraywang/rayskills
Sets up, audits or incrementally upgrades a local Obsidian vault for knowledge work and content production, without overwriting or moving existing notes.
Turns an article, paper or book into a directed chain of sharp questions and four-part answers that retraces the author's reasoning, saved as an org-mode note.
SKILL.md written in Chinese; this summary is our English description.
$ npx skills add lijigang/ljg-skills --skill ljg-qa -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install lijigang/ljg-skills ljg-qa --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ljg-qa .claude/skills/ljg-qa && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "ljg-qa" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-qa into .claude/skills/ljg-qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-qa", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-qaType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add lijigang/ljg-skills --skill ljg-qa -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install lijigang/ljg-skills ljg-qa --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/ljg-qa .agents/skills/ljg-qa && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ljg-qa" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-qa into .agents/skills/ljg-qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-qa", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add lijigang/ljg-skills --skill ljg-qa -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install lijigang/ljg-skills ljg-qa --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/ljg-qa .cursor/skills/ljg-qa && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "ljg-qa" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-qa into .cursor/skills/ljg-qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-qa", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/lijigang/ljg-skills.git --path skills/ljg-qa--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add lijigang/ljg-skills --skill ljg-qa -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install lijigang/ljg-skills ljg-qa --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/ljg-qa .gemini/skills/ljg-qa && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "ljg-qa" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-qa into .gemini/skills/ljg-qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-qa", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install lijigang/ljg-skills ljg-qaInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add lijigang/ljg-skills --skill ljg-qa -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/ljg-qa .github/skills/ljg-qa && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "ljg-qa" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-qa into .github/skills/ljg-qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-qa", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add lijigang/ljg-skills --skill ljg-qa -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install lijigang/ljg-skills ljg-qa --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/ljg-qa .opencode/skills/ljg-qa && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "ljg-qa" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-qa into .opencode/skills/ljg-qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-qa", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
ljg-qaTurns an article, paper or book into a directed chain of sharp questions and four-part answers that retraces the author's reasoning, saved as an org-mode note.
The skill reads a URL, a PDF or pasted text and pulls out the author's argument skeleton as questions about why a solution holds, how it differs from alternatives, what it costs and where it fails, rather than asking for definitions. Questions are ordered by logical dependency, not by chapter, so reading them in sequence retraces the author's reasoning. It is explicitly not an FAQ generator, a reworded summary, a fact list or a comprehension quiz.
Every answer has four parts: a one-sentence conclusion, a formalization that compresses the idea into one line of text and simple symbols such as an equation or an old-to-new arrow, the reasoning steps, and the conditions under which it stops holding. Notes are written in org-mode with a denote-style file name under ~/Documents/notes, following Workflows/Extract.md and a question design reference. The SKILL.md is in Chinese and includes a list of gotchas against textbook-style questions and answers padded with jargon.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 9e75497. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
curlFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use curl, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
ljg-qa Question Chain Extractor loads about 590 tokens when it runs, and up to ~2k if it reads all its reference files. Until then it costs about 118 tokens; SKILL.md has 129 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from lijigang/ljg-skills at commit 9e75497, republished under its MIT licence (© lijigang). 129 words, ~590 tokens.
.claude/skills/ljg-qa/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.读一份东西,把它的思想拆成「为什么—怎么—边界」的问答链。
读者顺着 Q 走过去,每个 A 砸下来一枚钉子。
把作者的论证骨架翻出来,每根骨头长成一个尖锐的问题。读者沿着 Q 链读,能复现作者的整套思路——而不是被告知结论。
Q 切要害 —— 问的是「为什么这个解法成立」「它跟另一种做法差在哪」「它的代价是什么」「它在哪里失效」,不是「它定义是什么」。一个 Q 必须能让答案承重,不能被一句话敷衍过去。
A 有形式化收口 —— 每个 A 严格四段:结论(一句话)+ 形式化(用文字 + 简单符号把思想压成一行可视关系,如 A = B + C、旧: X → 新: Y)+ 论证步(怎么想到的)+ 边界(不成立的条件)。形式化是"思想的几何",让读者一眼看出关系。
Q 链有方向 —— Q 之间不是并列罗列,是「Q1 答完→Q2 自然冒出来」。读者读完整串 Q,相当于走了一遍作者的推理路径。
按 Workflows/Extract.md 的步骤执行。
Q 怎么提、A 怎么收口的具体模式见 References/QuestionDesign.md。
执行 workflow 时:
curl -s -X POST http://localhost:31337/notify \
-H "Content-Type: application/json" \
-d '{"message": "Running Extract in ljg-qa"}' \
> /dev/null 2>&1 &输出文本:
Running **Extract** in **ljg-qa**...*bold*,禁 markdown 语法)~/Documents/notes/{YYYYMMDDTHHMMSS}--qa-{核心主题 5-10 字}__qa.orgExample 1: URL
User: /ljg-qa https://example.com/article
→ WebFetch 获取
→ 找观点骨架 → 设计 Q 链 → 写 A 三段
→ org-mode 输出到 ~/Documents/notes/Example 2: 论文 PDF
User: /ljg-qa ~/Downloads/paper.pdf
→ Read PDF(注意 pages 参数)
→ Q 抽出方法的「为什么」「代价」「边界」
→ 输出 org-modeExample 3: 直接文本
User: 把这段抽成 Q-A: [text]
→ 跳过获取,直接抽
→ 输出通才 = 协调,专才 = 干活。是"思想的几何",不是"数学的形式"© lijigang, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (references) in skills/ljg-qa of lijigang/ljg-skills.
Open the folder on GitHubat commit 9e75497
ljg-qa Question Chain Extractor next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| ljg-qa Question Chain Extractor this skilllijigang/ljg-skills | 7.5k | — | ~590 | Automated safety check: Pass | MIT | |
| Ray Obsidian Vault Setupimraywang/rayskills | 159 | — | ~625 | Automated safety check: Pass | Custom licence | |
| iMandalArt Mandala Cardstwhsi/skills | 259 | — | ~3k | Automated safety check: Pass | None | |
| Bulletmindsickn33/agentic-awesome-skills | 47k | 1 repos | ~916 | Automated safety check: Pass | MIT | |
| Agent Carnet Notebookyamadashy/repomix | 29k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Personal Knowledge Wikizhayujie/CowAgent | 47k | — | ~924 | Automated safety check: Pass | MIT |
imraywang/rayskills
Sets up, audits or incrementally upgrades a local Obsidian vault for knowledge work and content production, without overwriting or moving existing notes.
twhsi/skills
Turns source material into a pure-text 3x3 iMandalArt 2.2 card with a five-character center and eight labeled surrounding angles, laid out with hard line breaks.
sickn33/agentic-awesome-skills
Convert input into clean, structured, hierarchical bullet points for summarization, note-taking, and structured thinking.
yamadashy/repomix
Saves and recalls markdown notes between agent sessions with the agent-carnet CLI, tracking which notes proved useful so stale ones expire and good ones stay.
zhayujie/CowAgent
Maintains a structured Markdown knowledge base in a knowledge/ folder by ingesting shared articles, synthesizing conversations and answering questions from it.
alsk1992/CloddsBot
Local hybrid search for markdown notes and docs. An agent skill from alsk1992/CloddsBot.
lijigang/ljg-skills
Explains a whole book to someone who has not read it, keeping its specific content and showing how its threads connect, and saves the result as an Org note.
lijigang/ljg-skills
Explain research papers to readers without a specialist background: what the paper studies, what the authors contribute, how the findings follow, and what the evidence does not establish.
lijigang/ljg-skills
Turns text, URLs or local files into tall PNG cards through HTML typography, with four modes: long reading card, full-text layout, comic and whiteboard.
lijigang/ljg-skills
Turns a named classical Chinese chapter, such as one from the Tao Te Ching or the Analects, into a single annotated PNG image with notes and commentary.
lijigang/ljg-skills
Finds the handful of constraints that truly define a domain, role, product or debate, grades each by hardness, and explains the behavior those constraints produce.
lijigang/ljg-skills
Builds single-file offline HTML talk decks from Org or Markdown outlines, with faithful layout or editorial condensing and keyboard navigation.
Categories
Turns an article, paper or book into a directed chain of sharp questions and four-part answers that retraces the author's reasoning, saved as an org-mode note. The skill reads a URL, a PDF or pasted text and pulls out the author's argument skeleton as questions about why a solution holds, how it differs from alternatives, what it costs and where it fails, rather than asking for definitions. Questions are ordered by logical dependency, not by chapter, so reading them in sequence retraces the author's reasoning.
ljg-qa Question Chain Extractor fits situations like: extracting an article's core argument as a chain of questions and answers; studying a paper by questioning its method, cost and limits; turning a book chapter into reusable org-mode notes.
Run `npx skills add lijigang/ljg-skills --skill ljg-qa -a claude-code`. Or copy the skill folder (skills/ljg-qa in lijigang/ljg-skills) into .claude/skills/ljg-qa in your project. Claude Code loads it when a task matches its description.
Run `npx skills add lijigang/ljg-skills --skill ljg-qa -a codex`. Or copy the skill folder (skills/ljg-qa in lijigang/ljg-skills) into .agents/skills/ljg-qa in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add lijigang/ljg-skills --skill ljg-qa -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ljg-qa, .gemini/skills/ljg-qa, .github/skills/ljg-qa and .opencode/skills/ljg-qa in your project.
Going by SKILL.md and its folder, ljg-qa Question Chain Extractor needs the command-line tools its instructions call (curl). Our summary lists: A notes folder at ~/Documents/notes for the output.
SKILL.md contains no URLs. Its commands use curl, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
ljg-qa Question Chain Extractor is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 590 tokens (SKILL.md is roughly 2.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.5k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with ljg-qa Question Chain Extractor: Ray Obsidian Vault Setup (imraywang/rayskills, 159 stars), iMandalArt Mandala Cards (twhsi/skills, 259 stars), Bulletmind (sickn33/agentic-awesome-skills, 47k stars) and Agent Carnet Notebook (yamadashy/repomix, 29k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
lijigang (a GitHub user) maintains it in lijigang/ljg-skills, which has 7,481 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on October 8, 2026.
Source: lijigang/ljg-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.