Communitygithub.com

Brian-LEE0/jp-consulting-pptx

Build Japanese-language PowerPoint decks (.pptx) in the style of Japanese consulting firms, without the tell-tale signs of AI-generated slides. Covers writing (文体・アクションタイトル・です/ます混在・翻訳調の除去), layout (配置・グリッド・パターン選択), and polish (フォント・配色・余白). Use this skill whenever the user wants Japanese slides, a 日本語の資料/提案書/報告書/パワポ/プレゼン, a consulting-style or コンサル風 deck, a Korean-to-Japanese deck translation, or asks to make existing Japanese slides look less AI-generated ("AIっぽくない", "AI臭", "自然な日本語", 일본어 PPT, 일본

jp-consulting-pptx 是什么?

jp-consulting-pptx is a Claude Code agent skill that build Japanese-language PowerPoint decks (.pptx) in the style of Japanese consulting firms, without the tell-tale signs of AI-generated slides. Covers writing (文体・アクションタイトル・です/ます混在・翻訳調の除去), layout (配置・グリッド・パターン選択), and polish (フォント・配色・余白). Use this skill whenever the user wants Japanese slides, a 日本語の資料/提案書/報告書/パワポ/プレゼン, a consulting-style or コンサル風 deck, a Korean-to-Japanese deck translation, or asks to make existing Japanese slides look less AI-generated ("AIっぽくない", "AI臭", "自然な日本語", 일본어 PPT, 일본.

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Brian-LEE0/jp-consulting-pptx/tree/HEAD

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Japanese consulting-style PPTX

This skill adds a Japanese-specific layer on top of the pptx skill. If the pptx skill is available (claude.ai: /mnt/skills/public/pptx/SKILL.md), read it first for the pptxgenjs footguns and the QA commands (validate.py, soffice → pdftoppm). Everything below overrides or extends it. This skill's own scripts need only Node + pptxgenjs and Python 3 + python-pptx.

Why this exists

Japanese slides made by default pipelines look machine-made for three reasons, in this order of visibility:

  1. 文体 – です・ます explanations, hedges (〜と言えるでしょう), empty words (さまざまな/効率的に), translated syntax. Fixed with references/writing-style.md plus the linter.
  2. 配置 – centered titles, identical three-card rows, accent stripes, uneven gaps, titles that move between slides. Fixed with references/layout-and-patterns.md and fixed layout zones in the library.
  3. 仕上げ – pptxgenjs leaves the East Asian font empty, so PowerPoint renders Japanese in 游ゴシック Light; tags text en-US; ignores kinsoku. Fixed by scripts/postprocess_jp.py, run automatically by the library.

The cause of AI-sounding text is emptiness, not particular words. Banning a phrase makes the model substitute a synonym. So fix the cause: add specifics (who, what, how many, by when) or delete the sentence. writing-style.md §0 explains this; follow its three-pass rewrite (削る → 足す → 揃える).

Overrides of the pptx skill

pptx skill saysHere
Title 36–44pt, body 14–16ptTitle 24pt, lead 14, body 14, notes 10. Japanese consulting decks are read documents; long Japanese titles do not fit at 36pt. Use 18pt+ body only if the deck is projected.
Fonts from the safe listLatin/numerals Arial, Japanese BIZ UDPゴシック (alternatives: 游ゴシック, メイリオ). Set font: in createDeck. QA renders with a substitute font, so leave ~10% slack in boxes.
Every slide needs a visual elementA structured table, columns or process counts as visual. Avoid bullet-only slides; never add decorative icons to satisfy this.
No accent lines, no color barsSame here, and also no card edge stripes or full-width header bands.

Workflow

  1. Storyline first. Write the action titles for every slide as a list and read them in order. If the titles alone do not tell the story, fix the story before any layout (writing-style.md §2).
  2. Write copy per slide applying writing-style.md §1–§5: element-by-element register, no です・ます in titles or bullets, numbers with 基準 and 出所.
  3. Pick a pattern per slide from the table in layout-and-patterns.md §2. Neighbouring slides must not use the same pattern.
  4. Build with the library (below). Do not hand-place the title, lead, notes, or page number; the layouts own them.
  5. Lint: python3 scripts/lint_jp_deck.py deck.pptx. Fix every ERROR and read every WARN. Re-run until no ERROR remains.
  6. Validate and render: validate.py, then convert to images and inspect each slide (see beautify.md §4–§5). Look at slides with fresh eyes; check titles for orphan lines and blocks for gaps under 0.3in.
  7. Report the lint summary and any WARN you kept on purpose, with the reason.

If the user supplies existing Japanese slides to fix, run the linter first to get a defect list, then edit text per writing-style.md and keep their layout unless it violates the layout rules.

Library

const { createDeck } = require("<skill dir>/scripts/jp_deck_lib.js");
const d = createDeck({ font: "biz-ud", palette: "ink", title: "…", company: "…", footerText: "Confidential" });
const { L } = d;                                  // zones in inches: L.body, L.note, …
d.cover({ title, subtitle, meta });
const s = d.content({ title: "結論を言い切るタイトル", lead: "対象・条件", section: "章名" });
d.bullets(s, ["体言止めの行", { t: "補足", lv: 1 }], { x: L.body.x, y: L.body.y, w: 6, h: 3 });
d.barChart(s, { labels, series: [{ name, values }] }, rect, { hi: 0 });
d.table(s, rows, rect, { numCols: [1, 2], hlRow: 2 });
d.columns(s, [{ head, items, foot, hl }], rect);
d.chevrons(s, [{ head, items, out, hl }], rect);
d.takeaway(s, "示唆の一文");                      // bottom of body zone
d.note(s, ["出所:…", "注:…"]);
await d.finish("out.pptx");                       // writes, then runs postprocess_jp.py

scripts/sample_deck.js builds an 8-slide reference deck that uses every component; read it before writing a new build script. Color options for lines, tables, and charts need hex from d.THEME.colors; text and fills take scheme colors d.C.*. postprocess_jp.py fails loudly if a scheme color leaked into a hex-only option.

Do not call pres.addText with a custom fontFace; the theme fonts carry the Latin and Japanese pairing. A hard-coded font breaks the East Asian mapping.

Reference files

  • references/writing-style.md – register per element, action titles, the AI-smell catalog (NG → OK), numeric notation, bullet rules, rewrite passes, pre-flight checklist. Read before writing any slide text.
  • references/layout-and-patterns.md – zones and grid, content → pattern table, alignment principles, AI-looking layouts to avoid, chart and table conventions.
  • references/beautify.md – color system, type scale, shape rules, finishing checks, rendering caveats.

Linter

scripts/lint_jp_deck.py deck.pptx [--strict] [--json] [--ignore RULE …] reads the .pptx with python-pptx and reports ERROR / WARN / INFO per slide. Exit code 1 on any ERROR (or any WARN with --strict). It covers the ★ items in writing-style.md §3 plus fonts, language tags, overflow estimates, overlaps, tight gaps, margins, title position drift, centered body text, and layout repetition. It cannot judge whether a title is a good claim; do that by reading the titles in order.

相关技能