bama
BAMA: Build Any Mac App. Agent skills to research, clone, design, build, optimize, and test native macOS apps with Swift and SwiftUI.
AIにまじなPPTXを作らせる Claude Code / Codex スキル
Translation pending
SkillsPython · HTMLGitHub @carnot-techSelf-installOwner unconfirmed
Paste into Claude or ChatGPT for installation instructions suited to your environment.
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Installable projects can be verified without a deployment domain. Use GitHub sign-in for a personal repository, or the repository verification file above for an organization repository.
Ask about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗AIに「まじ」なPowerPointを作らせるためのClaude Codeスキル。 AIワークフロープラットフォーム Jinba を提供するメンバーにより作成されました。
スライドの設計規約、規約違反を見つける機械チェック、65型のHTMLパーツ集(基本30+追加35)、型カタログPDFをまとめたものです。資料は HTML(16:9)で組み、Chrome で PDF に書き出します。
AI の活用・業務の自動化を扱うデッキでは、実現する手段の一例として Jinba に触れることがあります(書いてよい事実と触れ方は references/jinba-context.md)。触れたくないときは
local/slide-rules.local.mdに「Jinba に触れない」と書くか、依頼のときにそう伝えてください。
進め方は、規約を読む → パーツ集から必要なパーツを取り出して1枚ずつ組む → 機械チェックを通す → 作り方を知らない別のエージェントにレビューさせる、の順です。
A Claude Code skill for generating boardroom-quality decks: a slide-design rulebook, an automated rule checker, a 65-part HTML slide library (16:9, one section per slide, printed to PDF via Chrome), and a visual catalog PDF.
私たちが実際に毎週の提案書・報告書づくりで使っている仕組みの公開版です。解説記事はこちら → AIにまじなスライド作らせる(note)
企業でお使いの方へ
references/slide-rules.mdこのリポジトリでいちばん価値があるのは、実はテンプレでもスクリプトでもなく、slide-rules.md というテキストファイルです。「結論はタイトルに書く」「角丸禁止」「塗りのあるボックスに枠線を付けない」「1資料1用語」「前提・定義は左、帰結は右」…。
使い方は3つだけです。AIに資料を作らせる前に毎回このファイルを読ませる。出力後に scripts/check_deck.py で違反を機械検出する。最後に references/content-review-prompt.md の指示文で、作り方を知らない別のエージェントにデッキを読ませ、日本語・論理・矛盾の指摘を受けて採用分だけ直す。 AIはセッションごとに記憶がリセットされるので、口頭で注意しても定着しません。ルールをファイルにして毎回読ませるのが定着させる方法です。
良いスライドを決めるのは型ではなく、組んだ後の調整です。表を2枚に割る、右カラムを帰結の形に書き直す、タイトルだけを通して読んでストーリーを繋ぎ直す。型に囚われず直し、そこで受けた指摘を slide-rules.md に1行足す。この繰り返しが品質の源で、型カタログとパーツ集は「たたき台を早く出して、調整に時間を回す」ための道具です。
自社で使うときは、slide-rules.md に自社の規約・指摘を追記して育ててください。
入口は assets/SlideCatalog_16x9.pdf(65ページ)です。P.1〜30 が基本パーツ集、P.31〜65 が追加パーツ集を印刷したもので、型ID・型名・使いどころの一覧は references/archetype-catalog.md にあります。
「65型」は作れる見せ方の上限ではありません。実際のデッキでは、型を組み合わせたり崩したりして規約の範囲で自由に組むので、見せ方のパターンはこれより多くなります。型カタログは「レイアウトの発想帳」として使い、合わなければ捨ててください。
| ファイル | 中身 | 使用頻度 |
|---|---|---|
templates/freeform_parts_16x9.html(基本パーツ集) | 表紙・全体マップ・目次・章扉・矢羽・前提→帰結・軸のある表・主張パネル・評価表・分布図・スイムレーン・表と裏の2段・一問一答など30パーツ | 高い。まずここから |
templates/freeform_parts_more_16x9.html(追加パーツ集) | エグゼクティブサマリー・積み上げ棒・ブリッジ・散布図・比較表・マトリクス・イシューツリー・ロードマップ・ガントなど35パーツ | 低い。基本で足りないとき |
どちらも 16:9・1 section = 1スライドの単体HTMLです。scripts/new_deck.py --parts b01,m05,... のようにパーツ番号を並べると、必要なパーツだけを取り出した1本のHTMLができます(2ファイルの見た目の定義は、衝突しないようにスクリプトが結合します)。あとはプレースホルダー(本文 Text 1、項目名 ラベル 1、見出し タイトル 1、数値 00、年 YYYY年、出典 出典:Source 1)を実物に差し替えます。残っていると check_deck.py が FAIL にします。
各 section のタイトル欄には型名だけが入っていて、見本の主張文は置いていません。見本文があると、その文型をなぞった資料になってしまうからです(slide-rules §2.8)。タイトルは必ず自分のストーリーラインから書きます。
色と書体は両ファイルで同じ既定です(暖色系: 生成りの地・濃茶の文字・茶のアクセント。見出しは明朝、本文はゴシック)。各ファイルの <style> 冒頭にある :root の変数で一括管理していて、ネイビー系にする値はコメントで同梱しています。
# 1. Claude Code のスキルフォルダに clone する(これだけで規約・パーツ集・機械チェックが使える)
git clone https://github.com/carnot-tech/consulting-pptx-skill.git ~/.claude/skills/consulting-pptx-skill
# 2. PDF 化と実レンダリング検査に使う Chromium headless shell を入れる(Node.js が必要。Chromium 本体は入れない。ダウンロード約95MB)
cd ~/.claude/skills/consulting-pptx-skill && npm run setup # Linux(コンテナ・Pod)は npm run setup:linux(依存ライブラリも入れる。日本語フォントは別に入れる)
# 3.(任意)PPTX に変換する・PPTX を check_deck.py で検査する場合(変換には Node.js 22 以上と手順2の headless shell も使う)
pip3 install python-pptx
scripts/check_deck.py(規約の機械チェック)と scripts/new_deck.py(たたき台の生成)は Python 標準ライブラリだけで動きます。scripts/snapshot.py)。出力は Chrome 本体と画素単位で同じで、Chrome 本体が要りません。CHROME_PATH を指定すると Chrome 本体に切り替えられます(探し方は scripts/find_browser.py)。package.json は手順2の playwright と headless shell を入れるためだけのものです。node_modules/ は .gitignore 済みです。規約と機械チェックは使った人の指摘で頻繁に直ります。週に 1 回を目安に最新を取り込んでください。
cd ~/.claude/skills/consulting-pptx-skill && git pull
自分の組織の規約・禁止語・テンプレは local/ に置きます(local/README.md 参照。git 管理外なので git pull で消えません)。スキルは本体の規約を読んだ後に local/slide-rules.local.md を読み、重なる規則はそちらを優先します。本体のファイルを直接書き換えると更新のたびに衝突するので、組織固有の規則は local/ に、どの組織でも効く規則は PR にしてください。
python3 scripts/new_deck.py --list # パーツ番号と型名の一覧
python3 scripts/new_deck.py --parts b01,b02,m05,b06,b09,b10 --title "資料名" -o mydeck.html # たたき台を生成
python3 scripts/check_deck.py mydeck.html # 規約の機械チェック(FAIL 0 にする)
python3 scripts/check_deck.py mydeck.html --forbid ~/.config/deck-forbidden-terms.txt # 社外に出す前に顧客名・社内語の残りを検査(リストはリポジトリ外に置く)
node scripts/check_layout.mjs mydeck.html # フッター重なり・はみ出し・空きの多いページの実レンダリング検査
python3 scripts/snapshot.py mydeck.html # PDF と、4ページずつまとめた目視用の画像(headless shell で印刷)
python3 scripts/html_to_pptx.py mydeck.html # PPTX を求められたときだけ: 編集できる PPTX に変換
まず HTML で仕上げ、PPTX にするのはユーザーから明示されたときだけにしています。
scripts/html_to_pptx.py で変換する。Chrome で描画した結果を読み取り、PowerPoint の図形として組み直すので、文字・表・図形はそのまま PowerPoint で編集できるSVG のチャートや画像は画像として貼られます(中の数値は編集できません)。書体は Yu Gothic / Yu Mincho に置き換わるので、変換後は PowerPoint で開いて折り返しを確認してください。
社内の標準デッキや作りかけの提案書に数ページ足す場合、変換した PPTX は書体・文字の大きさ・表の作りが元の資料と揃いません。このときは変換せず、その資料のマスターの上に直接組みます。
python3 scripts/measure_deck.py house.pptx # 資料の書式を測る → house.skin.json(目で見て直す)。.potx も可
python3 examples/house_deck_example.py house.pptx pages.pptx # 作例。資料のマスターの上に 2 ページ組む
python3 scripts/check_deck.py pages.pptx --house house.skin.json
タイトルは資料のプレースホルダーに入り、書体・地色・ページ番号は資料のマスターがそのまま決めます。表は資料と同じ「テキストボックス+罫線」で組むので、貼り付けても書式が変わりません。詳しくは slide-rules.md §8.7。
| パス | 内容 |
|---|---|
SKILL.md | AIへの指示書(スキルの本体)。考え方と手順だけを書き、詳細は references/ に置く |
templates/freeform_parts_16x9.html | 基本パーツ集(30パーツ・1パーツ=1スライド・16:9) |
templates/freeform_parts_more_16x9.html | 追加パーツ集(35パーツ。チャート・比較表・マトリクス・計画系) |
references/slide-rules.md | スライド作成ルール正典 |
references/archetype-catalog.md | 65型の型カタログ(型ID・型名・使いどころ・どのパーツ集の何番か) |
references/content-review-prompt.md | フレッシュアイ・レビューの指示文。機械チェックのあと、作り方を伏せた別エージェントにデッキのファイルを渡して日本語・論理・破綻を拾わせ、採否表にして直す |
references/ai-smell-lexicon.md | AI臭ワード・言い回しのリストとセルフチェック |
references/rules-digest.md | 規約の要点版(工程ごと。各行に正典の § 番号)。scripts/rules.py --phase <工程> で表示する |
references/jinba-context.md | Jinba の公開情報と、AI 活用・業務自動化のデッキでの触れ方(触れないときの条件つき) |
scripts/new_deck.py | パーツ番号を並べて1本のデッキHTMLを生成(両パーツ集のCSSをスコープして結合・ページ番号の振り直し)。--list でよく使う20種類と使いどころ、--show b09 で1部品のHTML |
scripts/rules.py | 規約を工程ごとに引く(--phase plan など=要点版、--sec 4.12 で1項、--full で節全体) |
scripts/check_all.py | check_deck・check_layout・出典の照合(sources.md)を1回で回し、指摘をページごとにまとめる |
scripts/snapshot.py | PDF と、4ページずつまとめた目視用の画像を1回で作る(--page N で1ページを大きく) |
scripts/check_deck.py | 規約の機械チェック(HTML / PPTX 両対応。テンプレ集の検査は --template)。タイトルの「N段階」と本文の連番の食い違いも FAIL にする |
scripts/html_to_pptx.py | HTMLデッキを編集できる PPTX に変換(ユーザーが PPTX を求めたときだけ使う)。scripts/html_dump.mjs が Chrome で描画した要素を書き出し、python-pptx で組み立てる。追加の npm パッケージは不要(scripts/lib_cdp.mjs が Chrome を直接操作する) |
scripts/check_layout.mjs | HTMLデッキの実レンダリング検査(フッターとの重なり・右端/下端のはみ出し・版面の40%超の空き) |
scripts/measure_deck.py | 既存の PowerPoint 資料の書式(レイアウト・タイトルの枠・文字の大きさ・書体の指定の有無・罫線・色)を測り、skin.json に書き出す |
<style> 冒頭 :root トークンで差し替えます。ブランドに合わせるときは両ファイルを同じ値にしますcheck_deck.py が FAIL にしますscripts/html_to_pptx.py で変換します(上の「PowerPoint(.pptx)にする流れ」)。以前あった JSON から編集可能PPTXを書き出す仕組みは外しました(git タグ pipeline-archived の時点のリポジトリに残っています)Issue・Pull Request を歓迎します。出し方(規約と機械チェックをセットで足す、機密を入れない、テストの書き方など)は CONTRIBUTING.md にまとめています。
使っていて「この指摘は当社だけでなく誰にでも効く」と思ったら、それが一番よい PR の種です。スキル自身も、本体の規約の誤検知や新しい指摘に当たったとき「PR で出しませんか」と一度だけ聞くようになっています。local/ に溜まった規則のうち顧客名の入っていないものを、月に 1 回見直して PR にするのがおすすめです。
Made by Carnot AI — AIエージェント基盤「Jinba」を開発・提供しています。
コード・文書は MIT License です。MIT License には商標を使う権利は含まれません。「Carnot」「Carnot AI」「Jinba」とロゴの扱いは TRADEMARK.md(事実としての言及・クレジット行・リンクは自由、製品名・ロゴ・公式を装う表現・改変版への商標使用は要許可)に従ってください。
scripts/deck_pptx.py | 測った書式で、その資料のマスターの上に編集可能なページを組む部品(タイトル・見出し・罫線の表・強調の面・矢羽・✓✕△)。作例は examples/house_deck_example.py |
tests/ | 機械チェックの自己テスト(python3 -m unittest discover -s tests)。指摘を機械チェックにしたら、直していない版で FAIL が出ることをここで確かめる |
assets/SlideCatalog_16x9.pdf | 65型のスライド型カタログ(両パーツ集を印刷した65ページ)。型を探すときの入口 |
assets/SuperTemplate_62type.pptx | 62型のPPTX見本帳(全スライド編集可能。基本パーツ集の b28〜b30 は未収録)。PowerPoint で手動コピーして使うときの見本。パーツ集の正本ではない |