DB AI GitHub Paper Weekly News
digoal/blog
抓取并汇总"数据库、AI、GitHub、AI 论文"近 1 周新闻,输出图文并茂(含 mermaid 图)的 markdown 周报到当前项目的 markdown/ 目录。覆盖 10 个数据源:postgresweekly.com/issues(自动解析最新 issue…
把 ~/.agents/skills/ljg- 里所有更新过的 skills 同步到 github repo (ljg-skills),先推 master 分支(org-mode 输出风格),再切 md 分支(markdown 输出风格)做基础 markdown 化后推。Use when user says '/ljg-push', 'push skills', '推送 skills'…
$ npx skills add lijigang/ljg-skills --skill ljg-push -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install lijigang/ljg-skills ljg-push --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-push .claude/skills/ljg-push && 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-push" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-push into .claude/skills/ljg-push/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-push", 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-pushType 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-push -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install lijigang/ljg-skills ljg-push --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-push .agents/skills/ljg-push && 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-push" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-push into .agents/skills/ljg-push/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-push", 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-push -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install lijigang/ljg-skills ljg-push --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-push .cursor/skills/ljg-push && 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-push" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-push into .cursor/skills/ljg-push/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-push", 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-push--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-push -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install lijigang/ljg-skills ljg-push --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-push .gemini/skills/ljg-push && 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-push" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-push into .gemini/skills/ljg-push/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-push", 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-pushInstalls 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-push -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-push .github/skills/ljg-push && 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-push" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-push into .github/skills/ljg-push/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-push", 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-push -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-push --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-push .opencode/skills/ljg-push && 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-push" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-push into .opencode/skills/ljg-push/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-push", 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-push把 ~/.agents/skills/ljg- 里所有更新过的 skills 同步到 github repo (ljg-skills),先推 master 分支(org-mode 输出风格),再切 md 分支(markdown 输出风格)做基础 markdown 化后推。Use when user says '/ljg-push', 'push skills', '推送 skills'…
Ljg Push is an agent skill from lijigang/ljg-skills. 把 ~/.agents/skills/ljg- 里所有更新过的 skills 同步到 github repo (ljg-skills),先推 master 分支(org-mode 输出风格),再切 md 分支(markdown 输出风格)做基础 markdown 化后推。Use when user says '/ljg-push', 'push skills', '推送 skills', '同步 skills', 'sync ljg', or whenever ljg- skills get updated and need shipping. NOT FOR pushing non-ljg skills or arbitrary git repos.
Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files (for example `Tools/MdizeEmbeddedOrg.test.ts`, `Tools/MdizeEmbeddedOrg.ts` and `Tools/Push.sh`).
It sits in Development, covering Markdown. It works with Git and GitHub. The licence is MIT.
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.
Ships script files (TypeScript and Shell), which the agent can run.
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 Push loads about 1.4k tokens when it runs. Until then it costs about 85 tokens; SKILL.md has 413 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). 413 words, ~1,431 tokens.
.claude/skills/ljg-push/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.把本地 ~/.agents/skills/ljg-* 里改过的 skills,一键同步到 github repo,覆盖 master 和 md 两个分支。
SKILLS_REPO="$HOME/code/ljg-skills" # 本地工作 repo
SKILLS_LOCAL="$HOME/.agents/skills" # 本地 skill 源
REPO_URL="git@github.com:lijigang/ljg-skills.git"如果 $SKILLS_REPO 不存在,脚本会自动 clone。如果它存在但不是 ljg-skills 的 git repo,脚本会报错退出(不破坏现有目录)。
| 分支 | 输出格式 | 文件扩展 | 加粗 | 文件头 |
|---|---|---|---|---|
master(默认) | org-mode | .org | *bold* | #+title: 等 |
md | markdown | .md | **bold** | YAML frontmatter |
~/.agents/skills/ 里的 skill 是 master 风格(源版本)。md 分支的差异由脚本自动转换 + 必要时手工补。
脚本推完 md 后会自动切回 master。本地 $HOME/code/ljg-skills 应该始终停在源分支,方便下次查看和安装。
按 Workflows/Push.md 步骤执行 → 调用 Tools/Push.sh。
每次 push 前,脚本强制做一件事:把 README 跟 local skills 对一遍。
~/.agents/skills/ljg-* 全部 skill 名$SKILLS_REPO/README.md 里出现的 ljg-xxx每次 push 都是检视 README 的机会。问自己:
确认 README 已审、确实不需要更新时,绕过 gate:
/ljg-push --skip-readme-checkmd 分支同步时自动转换(2026-06-12 起含 org 文件本体):
Org 文件中的 #+begin_example / #+end_example 图块转为 text 围栏,保留块内文字,不将其中的星号或井号误当标题和注释。标记兼容大小写。
.org 文件(assets/ 除外)转成同名 .md 并删除原件——org 头块→YAML frontmatter(含 --- 围栏,filetags→tags)、* 标题→# 标题(层级保留)、#+ATTR_* 行删除、[[file:x]]→、#+begin_src→``` 围栏。Markdown 与运行时文本文件(如 .ts / .js / .json / .sh)里对实际被改名文件的引用同步改写```org 模板,以及首行就是 #+key: 的无语言围栏模板,都会转为 ```markdown;连续头块变为带 --- 的 YAML frontmatter,标题、链接、强调、等宽文本与分隔线随模板一起转换;原文件使用纯 CRLF 时保留其换行风格__qa.org → __qa.md、__paper.org → __paper.md 等(denote 命名约定)org-mode → markdown、Org-mode → Markdown加粗用 *bold*(单星号)… → 加粗用 **bold**(双星号)、标题层级从 * 开始 → 从 # 开始、Org 文件头 → Markdown 文件头、行首 #+title: 等 8 个示例键 → YAML 键行- *标签*: → - **标签**:;紧邻这类标签的 org 围栏同步改为 markdownevals/*.json 中明确要求保存 Org 的提示与期望改为 Markdown;stdin__*.org 默认值改为 .md,同时保留显式 Org 输入与测试夹具ljg-is 的生成合同:输出标题、默认文件扩展、路径称谓、元数据名、tags 与双格式验收句统一切到 Markdown/YAML + Denote,并删除 Org 专用 lint 阻断表述;提交前残留审计拒绝任何未转换的 Org 输出指令检测与同步共用同一文件边界:按校验和比较内容,可靠识别文件新增、删除、内容和可执行位变化;纯时间戳、目录元数据、空目录不会单独触发发布,任意层级的 .git/、node_modules/、.DS_Store 不进入同步。忽略清单只含这三类明确杂物,.bak、.backup 等真实备份仍会触发同步和发布审查。
仍不自动转换(按需手工):
*bold* 标记:markdown 里 *x* 是斜体,盲替会破坏文档自身格式;只有「行首 bullet + 全角冒号」标签会安全转换curl -s -X POST http://localhost:31337/notify \
-H "Content-Type: application/json" \
-d '{"message": "Running Push in ljg-push"}' \
> /dev/null 2>&1 &输出文本:Running **Push** in **ljg-push**...
Example 1: 一键推送
User: /ljg-push
→ 检测 ~/.agents/skills/ljg-* 中跟 repo 有差异的 skills
→ master: rsync + bump version + commit + push
→ md: rsync + mdize + bump version + commit + push
→ 切回 master
→ 报告:哪些 skills 推了,新版本号,剩余手工差异Example 2: 看会推什么但不真推
User: /ljg-push --dry-run
→ 列出会被同步的 skills
→ 列出会做的 markdown 化转换
→ 不执行 rsync / commit / push--skip-readme-check,先去看一下 READMEassets/measure.js)会被 rsync 同步到 repo——如果不想推,先在本地删掉,或加进 .gitignore.git/、node_modules/、.DS_Store 不进入同步;纯时间戳、目录元数据和空目录不会单独触发发布,也不会进入 Git 结果。普通备份文件不在忽略清单里,仍会被检测出来,避免把可能公开的真实内容藏掉*bold* 标记。新增带复杂构件的 org reference 文件后,先 --dry-run 或沙盒跑一遍 mdize 看转换效果new URL("../Template.org", import.meta.url) 读取模板;只改 Markdown 文档会让 md 分支缺文件。转换器会按本次实际转出的 basename 精确改写 .ts / .js / .json / .sh 等文本消费者,同时保留没有对应实体文件的 Org 测试夹具字符串x、f(x) 之外还会出现「主体/边界」「代入」等真实标签;转换器按 - *标签*: 的结构识别,发布后仍要扫描 md 文件是否残留单星标签org——技能正文常写 Org、内联 #+description,Org 模板的 # 注释 在 Markdown 里还会变成标题;转换器统一处理这些形式,并在 md commit 前扫描输出指令、Org 标记和残留 .org 文件```org 或无语言围栏里的 #+title、星号标题与 Org 链接必须作为一个语义单元转换;转换器会生成带 --- 的 YAML、Markdown 标题与链接,同时保留原文件的纯 CRLF/LF 换行风格,避免无意义的全文件 diffevals/*.json 的 prompt / expected_output 会直接要求技能生成某种格式,运行时代码里的 stdin__*.org 还会选择默认解析器。mdize 与提交前审计必须覆盖这两类消费者,同时保留显式 Org 输入兼容测试org-mode 被替换为 markdown 后,单星号加粗、~code~ 与「不用反引号」仍会命令模型输出 Org。转换器必须把这组互斥规则整体改成 Markdown 规则,审计也要把旧规则视为阻断pull --rebase 失败时尝试一次 reset --hard origin/md 重新应用——这会丢弃本地未推的 md 分支 commit。脚本前会提示~/.agents/skills/,工作 repo 固定在 ~/code/ljg-skills/;不要从历史备份目录读取或推送© 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 5 other files in skills/ljg-push of lijigang/ljg-skills.
Open the folder on GitHubat commit 9e75497
Ljg Push 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 Push this skilllijigang/ljg-skills | 7.5k | — | ~1.4k | Automated safety check: Pass | MIT | |
| DB AI GitHub Paper Weekly Newsdigoal/blog | 8.6k | — | ~1.2k | Automated safety check: Pass | GPL-2.0 | |
| Cut Releasespiculedata/saiku | 1.3k | — | ~502 | Automated safety check: Pass | Apache-2.0 | |
| Lint Repository Markdowncodsen/codsen | 214 | — | ~832 | Automated safety check: Pass | MIT | |
| Markdown Without Hard Wrapsprisma/orm | 48k | — | ~472 | Automated safety check: Pass | Apache-2.0 | |
| Open Source Project Articledigoal/blog | 8.6k | — | ~1.3k | Automated safety check: Pass | GPL-2.0 |
digoal/blog
抓取并汇总"数据库、AI、GitHub、AI 论文"近 1 周新闻,输出图文并茂(含 mermaid 图)的 markdown 周报到当前项目的 markdown/ 目录。覆盖 10 个数据源:postgresweekly.com/issues(自动解析最新 issue…
spiculedata/saiku
Cut a Saiku release via Gitflow — version bump, release branch, PR to main, tag, back-merge, and post-release chores.
codsen/codsen
Keep the repository's linted Markdown passing npm run lint:markdown.
prisma/orm
Keeps Markdown prose on one line per paragraph instead of wrapping at a fixed column, so renderers can reflow it and diffs stay clean.
digoal/blog
Analyze an open-source project from a repository URL and write a deeply sourced Chinese Markdown article.
digoal/blog
解读用户粘贴的 GitHub 每周 Trending 或开源项目榜单内容,基于用户提供的候选项目、项目 README、GitHub 项目页和 DeepWiki 生成适合公众号发布的 Markdown 文章,并输出到当前项目 markdown 目录。用于 GitHub 周榜解读、每周开源热点、热门开源项目分析、公众号开源项目推荐。
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
把 ~/.agents/skills/ljg- 里所有更新过的 skills 同步到 github repo (ljg-skills),先推 master 分支(org-mode 输出风格),再切 md 分支(markdown 输出风格)做基础 markdown 化后推。Use when user says '/ljg-push', 'push skills', '推送 skills'…. Ljg Push is an agent skill from lijigang/ljg-skills.agents/skills/ljg- 里所有更新过的 skills 同步到 github repo (ljg-skills),先推 master 分支(org-mode 输出风格),再切 md 分支(markdown 输出风格)做基础 markdown 化后推。Use when user says '/ljg-push', 'push skills', '推送 skills', '同步 skills', 'sync ljg', or whenever ljg- skills get updated and need shipping.
Ljg Push fits situations like: user says /ljg-push; whenever ljg- skills get updated and need shipping.
Run `npx skills add lijigang/ljg-skills --skill ljg-push -a claude-code`. Or copy the skill folder (skills/ljg-push in lijigang/ljg-skills) into .claude/skills/ljg-push in your project. Claude Code loads it when a task matches its description.
Run `npx skills add lijigang/ljg-skills --skill ljg-push -a codex`. Or copy the skill folder (skills/ljg-push in lijigang/ljg-skills) into .agents/skills/ljg-push 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-push -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-push, .gemini/skills/ljg-push, .github/skills/ljg-push and .opencode/skills/ljg-push in your project.
Going by SKILL.md and its folder, Ljg Push needs TypeScript and a shell for the scripts in its folder and the command-line tools its instructions call (curl). Our summary lists: Node.js; A Bash shell.
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 Push is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.4k tokens (SKILL.md is roughly 5.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Ljg Push: DB AI GitHub Paper Weekly News (digoal/blog, 8.6k stars), Cut Release (spiculedata/saiku, 1.3k stars), Lint Repository Markdown (codsen/codsen, 214 stars) and Markdown Without Hard Wraps (prisma/orm, 48k 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,474 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.