Home / All Skills / Workflow & Core Tools / ljg-present
Workflow & Core Tools · lijigang/ljg-skills

ljg-present

Unix-flavored presentation design and faithful typesetting. Transforms Org/Markdown outlines or authorized condensed manuscripts into a single-file offline HTML; selects punchy statements, comparisons, Unicode relationship diagrams, evidence, and chapter layouts based on semantic roles. Dark mode by default, supporting a speaker notes layer, native charts, and clicker navigation. USE WHEN present, giving talks, slides, beautifying outlines, or projecting narrative core to screen. NOT FOR unauthorized rewriting of author content or generating corporate PPTs.

L4 High-Privilege · Graded auth & full auditV1 Commit-PinnedExecute CommandWrite FileDual-pass Audit
Author lijigangGitHub lijigang/ljg-skills ↗License MIT(仓库根 LICENSE)Commit 9e75497a95
Control levels describe skill capabilities and suggested control measures; they do not represent quality or safety certifications, nor do they dictate usability. Usage decisions rest entirely with users and administrators. Different agent hosts apply varying constraints; do not assume hosts provide automatic protection. Third-party skill copyrights belong to their original authors. Use at your own risk.

1How It Works & Mechanism

Implemented by feeding structured deck data into a fixed template SloganTemplate.html, producing a single-file HTML via a build script; appending CSS at the end of output or writing separate rendering branches is prohibited.

skills/ljg-present/SKILL.md
使用 Tools/BuildDeck.ts 把数据装入 SloganTemplate.html;不在产物末尾补 CSS,不另写渲染分支。
What is being done here: Converges 'rendering' into a template + data contract, ensuring every output is homogenous and verifiable rather than hand-coded one-off HTML.

Divided into two content contracts: faithful (faithful typesetting, preserving original wording/order/tables/code/source images) and editorial (presentation curation, allowing rewritten on-screen text within authorized scope), chosen by whether the user authorized condensation.

skills/ljg-present/SKILL.md
| faithful 保真排版 | 已有投影提纲;未授权改写 | 原文字句、顺序、表格、代码和源图 |
What is being done here: Makes 'whether the author's content can be modified' an explicit contract; simply requesting 'make a presentation' does not grant auto-authorization to alter or delete content.

Themes are resolved by priority: explicit selection > clear theme_* visual tags > default hacker-dark; general topic/usage tags do not participate in theme selection.

skills/ljg-present/SKILL.md
显式选择 > 明确的 theme_* 视觉标签 > hacker-dark。普通话题、用途标签不参与主题选择。
What is being done here: Fixes the color scheme decision chain to avoid tags like share/talk triggering incorrect themes.

Layout is determined by narrative function (semantic role), not by line count; two lines can still form the same proposition, with line count only affecting font size and pagination.

skills/ljg-present/SKILL.md
两行可以是一个判断。role 由讲述功能决定;行数只参与字号与分页。
What is being done here: Entrusts 'which layout to choose' to semantics rather than formatting coincidences, supporting five prototypes: punchline, comparison, relationship, evidence, and chapter.

Chart contract: Render charts only if data, order, or relationships exist in the source; never extrapolate numeric curves, nor arbitrarily promote parallel/correlated items into causal arrows.

skills/ljg-present/ChartSpec.md
图让关系直接可见。源中有数据、顺序或关系才画;不补数值曲线,不把并列或相关性擅自升级为因果箭头。
What is being done here: Establishes admission conditions and arrow semantics for charts, preventing the fabrication of relationships just for visual appeal.

Unicode relationship diagrams draw connector lines using a monospace grid, while Chinese nodes are typeset independently with natural letter spacing, without forcing Chinese characters into fixed-width cells.

skills/ljg-present/SKILL.md
Unicode 连接线使用等宽网格,中文节点独立排版。不要把中文逐字塞进固定字符格。
What is being done here: Resolves alignment issues when combining Chinese characters with monospace lines, ensuring loops and arrows remain legible.

Static validation is not enough: Build tools fix the template, while a browser probe inspects the actually rendered page and screenshots recheck visual hierarchy.

skills/ljg-present/SKILL.md
静态通过不等于画面成立。构建工具固定模板;浏览器探针核对实际绘制的页面,截图另检视觉主次。
What is being done here: Splits acceptance into two layers: 'data/template compliance' and 'whether the screen truly works visually'.

Delivered as a single-file offline HTML: embedded fonts, inlined charts, zero animations, with a built-in speaker notes layer and clicker keybindings.

skills/ljg-present/SKILL.md
一个 ~/Downloads/{title}.html,字体内嵌,图表内联,离线、零动效。
What is being done here: Defines artifact form and interactive keybindings (arrow keys/Space/F/N) for direct on-site projection using a clicker.

Visual language is governed by a design system: warm white/ink black carry content, while amber is reserved strictly for a single focus or chapter boundary, never coloring all categories simultaneously.

skills/ljg-present/DesignSystem.md
默认暖白或墨黑承担内容。琥珀用于一个重点、章节边界或明确状态,不给所有分类同时着色。
What is being done here: Enforces a clear palette and line discipline to ensure each slide has exactly one hero element.

2Core Capabilities

01Outlines/Manuscripts → Single-file offline HTML (BuildDeck.ts + SloganTemplate.html, data-driven)
02faithful / editorial dual content contracts and authorization discipline (editingBasis, sourceIds lineage tracing)
03Five semantic layout archetypes (punchline/comparison/relationship/evidence/chapter) + sequence/quotation
04Native chart contracts (bar/line/flow/compare), with strict rules like bounded values, zero baseline, ascending x-axis
05Unicode relationship diagrams (columns/rows layout + nodes/edges/via routing, independent typography for Chinese nodes)
06Five theme sets and resolution priorities (hacker-dark default; -b/-r/-y, etc.)
07Speaker notes layer and clicker interaction (press N for notes; arrow keys/Home/End/F, etc.)
08Template consistency static validation (ValidateDeck.ts: allows only data and embedded fonts to differ from canonical template)
09Browser probe + screenshot visual review (ProbeDeck.js verifies actual rendered pages in an isolated browser)

3External Dependencies

KindDependency / Endpoint
clibun(运行 BuildDeck.ts / EmbedAssets.ts / ValidateDeck.ts;BuildDeck 内部 spawn bun 子进程)
cli隔离浏览器(加载 ProbeDeck.js 做运行时绘制核对;由宿主提供,非脚本外发)

4Recommended Governance & Evidence

Suggested Controls for Safe Operation
For Agent Runtime
Graded/per-use authorization, sandbox recommended
For Administrators
Approval workflow, rollback support, full audit
Evidence & Triggers (File Paths & Excerpts)
  • scripts/: Execute local scripts or commands: Tools/BuildDeck.ts (run via bun; reads deck data, creates directories with mkdir, writes HTML via Bun.write, and spawns bun to run
  • 本地工作目录: File I/O and artifact output: ~/Downloads/{title}.html (final single-file deck, embedded fonts, inlined charts)
Audit Notes: Blue, normal use. Evaluation scope is strictly this skill directory: self-contained BuildDeck.ts / EmbedAssets.ts / ValidateDeck.ts / ProbeDeck.js, all reading data and writing HTML locally (Bun.write / writeFileSync), and spawning internal bun child processes for inlining and verification—classified as 'local scripts/CLI and local file I/O only'. The 6 URL matches in §3 were verified line-by-line as safe literals: `http://www.w3.org/2000/svg` namespace, regression examples like `https://example.com`/`fetch("literal text")`, and ValidateDeck test case `<svg>fetch('x')` literal—none are actual outbound calls; the 3 'credential' hits refer to template tokens/placeholders, not credential access; the 1 'sandbox' hit is ValidateDeck using `new Function` to compile its own output script for syntax checks. Fonts are embedded in the artifact without runtime CDN links; thus network_calls/credential_reads are empty, warranting a blue rating (consistent with baoyu-diagram local script precedents).

5Second-Pass Verification

  • [ok] URL 命中均为安全字面量 — 6 条:w3.org SVG 命名空间 1 条、RegressionDeck.json 与 ValidateDeck.ts 测试字面量 5 条;无 fetch/curl 对真实端点,network_calls=[] 成立。
  • [ok] 「凭证」命中非凭证读取 — 3 条命中均为 token/模板一致性(canonical-template、{{DECK_META_JSON}} 占位符)与 help 文案,不读 env/keychain/文件;credential_reads=[] 成立。
  • [ok] 沙箱命中为构建期语法检查 — ValidateDeck.ts 用 `new Function(script)` 对自身模板产物做 JS 语法编译(捕获异常记 javascript-syntax),非对不可信外部代码的任意执行;已写入 injection_surface/reason。
  • [ok] 写盘面与交付声明一致 — BuildDeck 用 mkdir + Bun.write 写输出 HTML;EmbedAssets writeFileSync 内嵌字体/图片;SKILL.md 交付声明为 ~/Downloads/{title}.html,一致。
  • [ok] 无产物期 CDN 字体外链(未夸大离线) — SKILL.md 声明「字体内嵌…离线、零动效」,Fonts/ 内含 IBM Plex Mono ttf 与 OFL,EmbedAssets 负责内联;无不依赖远端字体的证据缺口。
  • [ok] 授权契约与编辑依据真实存在 — SKILL.md 两种内容契约表与「仅有『做成演示』不自动授权删改」「记录 editingBasis…sourceIds 回到完整来源」为原文,editorial 约束非臆测。

6Verdict & Scenarios

  • Turns 'do not mess up rendering' into a hard constraint: template + data contract + ValidateDeck validator, where only data and embedded fonts can deviate from canonical templates, keeping outputs stable and consistent.
  • Clear author authorization discipline: faithful and editorial contracts enforce 'no modification without authorization'; editorial requires editingBasis with source-tracing for on-screen text to prevent unauthorized editing.
  • Delivery format suited for live presentations: single-file, offline, embedded fonts, inlined charts, zero animations, built-in notes layer and clicker keybindings.
  • Pragmatic layered acceptance: static validation checks only template/data, while visual viability is delegated to isolated browser probes and screenshots, acknowledging that neither replaces the other.
  • Semantic admission and directional constraints for charts, refusing to fabricate relationships for aesthetics (no invented curves, no unverified causal arrows).
  • Best for: Ideal for converting Org/Markdown outlines or authorized condensed manuscripts into Unix-aesthetic single-file presentations: tech talks, internal reviews, and live projections demanding strict control over projection distance and visual hierarchy; also suited for presentation workflows prioritizing 'data-driven + reproducible' delivery.
    Not for: Not suitable for unauthorized rewriting of author content, nor for generating corporate PPTs (NOT FOR in description); not suitable when PowerPoint files, flashy animations/template libraries, or environments lacking an isolated browser for visual verification are required.
    Install Agent-Ready
    ① Verified Mirror 2026-10-10
    Option A · Direct DownloadDownload ljg-present.tar.gz
    sha256: c5877f065fa8406a…
    Option B · Copy Guide for Agent
    install.json
    Agents automatically download and verify mirrors from this JSON guide.
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit 9e75497a95.