ljg-push

ljg-push is a skill for Claude Code from lijigang/ljg-skills. It costs 114 tokens per session (2,926 once invoked), scanned A, original, MIT.

An automation workflow for publishing changed ljg skills to a GitHub repository, a service for storing and sharing code. It updates both the source-style master branch and a Markdown version on the md branch.

In plain words
What is it for?
Use it after updating skills whose names start with ljg-. It checks the branch and files, compares the local skills with the README, commits the changes, and pushes both output versions.
Why use it?
It keeps the repository aligned with local skills and stops the publish when the README skill list is missing an entry.

Skill for Claude Code

Written for Claude Code: user-invocable in frontmatter.

Part of the ljg-skills plugin — 22 skills shipped together

Good fit Use it after updating skills whose names start with ljg-. It checks the branch and files, compares the local skills with the README, commits the changes, and pushes both output versions.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/lijigang/ljg-skills/ljg-push
About the project

ljg-skills is a collection of custom Codex skills for tasks such as learning, writing, reading, relationship analysis, image creation, and investment analysis. Codex users install selected skills or the whole collection through a skills command-line interface. The catalogue entries are the collection's individual skills, plugin, and instruction.

lijigang/ljg-skills · 7,327 stars · on GitHub

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add lijigang/ljg-skills --skill ljg-push
Clone the repo
git clone --depth 1 https://github.com/lijigang/ljg-skills

Made for: Claude Code.

Or install ljg-skills, the plugin that ships this one along with the rest of its 22 skills.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for ljg-push

README.md
[![agentmods](https://agentmods.dev/badge/skills/lijigang/ljg-skills/ljg-push/github.svg)](https://agentmods.dev/skills/lijigang/ljg-skills/ljg-push)
Your own site
<a href="https://agentmods.dev/skills/lijigang/ljg-skills/ljg-push"><img src="https://agentmods.dev/badge/skills/lijigang/ljg-skills/ljg-push/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for ljg-push

Your own site · 80×15
<a href="https://agentmods.dev/skills/lijigang/ljg-skills/ljg-push"><img src="https://agentmods.dev/badge/skills/lijigang/ljg-skills/ljg-push.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 114 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,926 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • Socket pass 18 May 2026
  • Snyk pass 18 May 2026
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 1 finding, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium Data Exfiltration · line 79
    Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
    Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00114 $0.02926
Opus 5 $0.00057 $0.01463
Sonnet 5 $0.00023 $0.00585
Haiku 4.5 $0.00011 $0.00293

Measured 3d ago against content hash 9673d2c07f7f, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

ljg-push scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

The scan reads SKILL.md. This mod also ships 4 executable files (Tools/MdizeEmbeddedOrg.test.ts, Tools/MdizeEmbeddedOrg.ts, Tools/Push.sh, …), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -s -X POST http://localhost:31337/notify \
skills/ljg-push/SKILL.md · 130 lines

How it starts

The opening of the file, as written. The whole thing — 130 lines — stays where its author put it; the contents beside it link to each section on GitHub.

ljg-push: 推送 ljg-* skills

把本地 ~/.agents/skills/ljg-* 里改过的 skills,一键同步到 github repo,覆盖 master 和 md 两个分支。

仓库路径(硬编码)

SKILLS_REPO="$HOME/code/ljg-skills"     # 本地工作 repo
SKILLS_LOCAL="$HOME/.agents/skills"      # 本地 skill 源
REPO_URL="[email protected]: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

README 一致性(硬 gate)

每次 push 前,脚本强制做一件事:把 README 跟 local skills 对一遍

  • 列出 ~/.agents/skills/ljg-* 全部 skill 名
  • grep $SKILLS_REPO/README.md 里出现的 ljg-xxx
  • 找出 local 有但 README 没有的——几乎肯定意味着 README 漏更新
  • 命中 → push 中止,报告差异

每次 push 都是检视 README 的机会。问自己:

  1. 新增 skill 了吗?README 的 skill 清单 / 安装命令需要加一行
  2. 删了 skill 吗?README 对应行要删
  3. 某个 skill 的描述大改了吗?README 的简介可能要同步

确认 README 已审、确实不需要更新时,绕过 gate:

/ljg-push --skip-readme-check

自动转换的范围

md 分支同步时自动转换(2026-06-12 起含 org 文件本体):

Org 文件中的 #+begin_example / #+end_example 图块转为 text 围栏,保留块内文字,不将其中的星号或井号误当标题和注释。标记兼容大小写。

  • org 文件本体:skill 内每个 .org 文件(assets/ 除外)转成同名 .md 并删除原件——org 头块→YAML frontmatter(含 --- 围栏,filetagstags)、* 标题→# 标题(层级保留)、#+ATTR_* 行删除、[[file:x]]![](x)#+begin_src→``` 围栏。Markdown 与运行时文本文件(如 .ts / .js / .json / .sh)里对实际被改名文件的引用同步改写
  • Markdown 内嵌的完整 Org 示例```org 模板,以及首行就是 #+key: 的无语言围栏模板,都会转为 ```markdown;连续头块变为带 --- 的 YAML frontmatter,标题、链接、强调、等宽文本与分隔线随模板一起转换;原文件使用纯 CRLF 时保留其换行风格
  • 文件扩展引用:__qa.org__qa.md__paper.org__paper.md 等(denote 命名约定)
  • 关键词:org-modemarkdownOrg-modeMarkdown
  • org 式格式指令:加粗用 *bold*(单星号)…加粗用 **bold**(双星号)标题层级从 * 开始从 # 开始Org 文件头Markdown 文件头、行首 #+title: 等 8 个示例键 → YAML 键行
  • 结构化强调标签:行首 - *标签*:- **标签**:;紧邻这类标签的 org 围栏同步改为 markdown
  • 输出契约与运行时默认值:evals/*.json 中明确要求保存 Org 的提示与期望改为 Markdown;stdin__*.org 默认值改为 .md,同时保留显式 Org 输入与测试夹具
  • ljg-is 的生成合同:输出标题、默认文件扩展、路径称谓、元数据名、tags 与双格式验收句统一切到 Markdown/YAML + Denote,并删除 Org 专用 lint 阻断表述;提交前残留审计拒绝任何未转换的 Org 输出指令

Read the full file on GitHub · 130 lines

Files

What ships with it

5 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago Changed · +2 lines 9673d2c07f7f
  2. 11d ago First seen · 128 lines · 114 tokens per session scan A 9f66bf255d70

Subscribe to this mod's changes

ljg-push is a skill published in the GitHub repository lijigang/ljg-skills (7,327 stars, last pushed 2d ago), licensed MIT. It adds 114 tokens to every session and 2,926 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

prowler-commit

Creates professional git commits following conventional-commits format. Trigger: When creating commits, after completing code changes, when user asks to commit.

prowler-cloud/prowler · 33 tokens

gh-auth-isolation

Safely manage multiple GitHub identities (EMU + personal) in agent workflows.

github/gh-aw · 20 tokens

comet-github

A routing guide for Comet-related GitHub work. It directs requests about pull requests, issues, CI failures, ideas, and fixes to the appropriate review or implementation process.

rpamis/comet · 72 tokens

github-skill

Work with GitHub via the gh CLI — clone repositories, create/list/merge pull requests, create/list issues, and run any other gh command (API calls, workflow runs, releases, repo administration). List operations return parsed JSON.

zeenie-ai/OpenCompany · 51 tokens

changelog-composer

Generates structured changelogs and release notes from git history and PRs, classifying breaking changes, features, fixes, performance, docs. Triggers on: "generate changelog", "write release notes", "what changed since", "prepare release", "release notes for", "diff since tag".

Mathews-Tom/armory · 67 tokens

re0-merge

Review and land an external contribution the way this suite does: gate it against the thesis, land it with the author's credit intact, complete a new skill rather than merging it raw, then approve, credit, and explain before closing. Use when reviewing a pull request, as any collaborator or maintainer, not only the…

LilMGenius/paperthin · 70 tokens