Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
68d63f6
Docs: #2065 の要求と受け入れ条件の写しと、スライドの作成の語を用語集へ追加
takemi-ohama Oct 17, 2026
3973546
Docs: #2065 の設計(生成スクリプトの汎用テンプレート・構成メモと台本・gws での変換とサムネイル確認を既存の規約へ足す)
takemi-ohama Oct 17, 2026
ee4092c
fix(design): I2 の書き換えの判定を写した元の版との比較にする (#2065)
takemi-ohama Oct 17, 2026
44f9629
fix(design): I2 の書き換えの判定を写した時点の lib/ のハッシュとの比較にする (#2065)
takemi-ohama Oct 17, 2026
f9b01a2
Merge pull request #2066 from devbasex/design/issue-2065
takemi-ohama Oct 17, 2026
e689d39
Docs: #2065 の要求の写しを更新し、Marp と python-pptx を外す決定 12・13 を足す
takemi-ohama Oct 17, 2026
c113a4e
Add: スライドの汎用テンプレート(ページの枠組み・トーン&マナーの差し替え・台本からのノート・尺の計算)(#2065)
takemi-ohama Oct 17, 2026
c4b1581
Test: スライドの汎用テンプレートの生成・枠組みの座標・トーン&マナーの差し替え・台本と尺を検査する (#2065)
takemi-ohama Oct 17, 2026
409affe
Add: Google Slides の全ページのサムネイルを取るスクリプトと、pptx の変換・差し替えの gws のコマンドを対応表へ…
takemi-ohama Oct 17, 2026
fe855df
Add: 発表資料「独自スキルプラグイン開発の薦め」(台本・構成メモ・生成スクリプト)と、資料の生成を検査するテスト (#2065)
takemi-ohama Oct 17, 2026
d88a5b5
Docs: スライドの生成の経路を生成スクリプトの 1 つにし、汎用テンプレート・構成メモと台本・変換とサムネイルの確認を規約から辿れるよ…
takemi-ohama Oct 17, 2026
2e2ae13
Docs: docs/presentations の Marp の手順と build.sh を外し、生成スクリプトの方式へ書き換える (#…
takemi-ohama Oct 17, 2026
ed81ee2
Docs: form-slide.md の比較の語を外す (#2065)
takemi-ohama Oct 17, 2026
c734621
Refactor: gws のスクリプトの出力の末尾と stopped の結果を共有の部品へ寄せ、サムネイルの画像は curl で取る (…
takemi-ohama Oct 17, 2026
4747d5b
Fix: 発表資料のサムネイルの体裁レビューで見つけた流れ図の矢印・箱の文字の余白・1 文字だけの行・下の空白の偏りを直す (#2065)
takemi-ohama Oct 17, 2026
6fc928d
Docs: pptx で差し替えた Google スライドの書体が Arial になる失敗と確かめ方を既知の失敗へ足す (#2065)
takemi-ohama Oct 17, 2026
2188a4c
Refactor: サムネイルのスクリプトとスライドのテストに ruff format を掛ける (#2065)
takemi-ohama Oct 17, 2026
7f94bda
Docs: 確定仕様のスライドの生成の経路と google-workspace の扱う範囲を、生成スクリプトとサムネイルの取得に合わせる …
takemi-ohama Oct 17, 2026
39cbc96
Merge pull request #2069 from devbasex/feat/issue-2065-s2065
takemi-ohama Oct 17, 2026
de22dcd
Test: 現状固定テストを足す — plugins/ndf/skills/release/assets/slides/lib/deck-…
takemi-ohama Oct 18, 2026
d957e66
Refactor: extract_method — plugins/ndf/skills/release/assets/slides/l…
takemi-ohama Oct 18, 2026
16cb49e
Refactor: consolidate_duplication — plugins/ndf/skills/google-workspa…
takemi-ohama Oct 18, 2026
c44baf7
Revert: cross-refactoring の改善を着手前の木へ戻す(確かめの開始の締め切りまでに入らない)
takemi-ohama Oct 18, 2026
bce04a3
fix(#2065): PR 2070 のレビュー指摘 4 件を直す
takemi-ohama Oct 18, 2026
836d04b
Fix: pptx の変換の 1 手目を ignoreDefaultVisibility 付きの files create にし、syst…
takemi-ohama Oct 18, 2026
5a20c8c
Update: スライドの枠組みの章扉をノートを持たず台本の番号を進めないページにし、ページ数の照合から外す
takemi-ohama Oct 18, 2026
59e6508
Update: 発表資料の全ページの文言をスライドの言葉遣いへ直し、章扉 6 つを入れる
takemi-ohama Oct 18, 2026
ff880ce
Docs: #2065 の設計に章扉の扱いを決定 14 として足し、I5 とテスト設計を合わせる
takemi-ohama Oct 18, 2026
d4944bf
Docs: スライドの規約にページの文言の書き方と章扉の扱いを足す
takemi-ohama Oct 18, 2026
b478e00
Update: 発表資料のページの文言をさらに削り、余白の偏りと折り返しを直す
takemi-ohama Oct 18, 2026
be237ca
Update: 発表資料の cross-review のページから再現率の数値を外す
takemi-ohama Oct 18, 2026
23246cb
Update: 発表資料のスキルプラグインのページに Anthropic の公式ドキュメントへのリンクを足す (#2065)
takemi-ohama Oct 18, 2026
83453e4
Update: 発表資料の「スキルプラグイン」を公式の「スキル」と「プラグイン」へ揃える (#2065)
takemi-ohama Oct 18, 2026
508e8a7
Update: 発表資料の似たページを 2 組まとめ、27 ページにする (#2065)
takemi-ohama Oct 18, 2026
b11ba3c
Update: 発表資料の「段」「段階」を業界の語へ直す (#2065)
takemi-ohama Oct 18, 2026
8db8a89
Merge pull request #2072 from devbasex/fix/issue-2065-slide-wording
takemi-ohama Oct 18, 2026
709388e
Merge pull request #2070 from devbasex/sprint/s2065
takemi-ohama Oct 18, 2026
7015fc4
Fix: bump で正式版の行が開発版の例に追いついたら例の基底を次の MINOR へ進める
takemi-ohama Oct 18, 2026
003a660
Release: ndf v10.19.0-dev.1
takemi-ohama Oct 18, 2026
14a64a2
Fix: 版の文書の書き換えを release_lib/bump.py へ移し、囲みの判定を lib/md.py に任せる
takemi-ohama Oct 18, 2026
a382b97
Merge pull request #2073 from devbasex/release/v10.19.0-dev.1
takemi-ohama Oct 19, 2026
6c02e41
Release: ndf v10.19.0
takemi-ohama Oct 19, 2026
cb3d4e8
Release: ndf v10.19.0 のトークン消費の記録
takemi-ohama Oct 19, 2026
f799668
Merge pull request #2074 from devbasex/release/v10.19.0
takemi-ohama Oct 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
{
"name": "ndf",
"source": "./plugins/ndf",
"description": "Claude Code plugin (v10.18.0): 8 specialized agents (plus 1 worker agent for the 3-layer workflow) and 48 focused NDF skills for PR/review workflows, cross-review, implementation planning, plan-to-spec, Docker container access, statusline, external AI delegation (Codex/agy), transcript retention guard, and optional Slack notifications.",
"description": "Claude Code plugin (v10.19.0): 8 specialized agents (plus 1 worker agent for the 3-layer workflow) and 48 focused NDF skills for PR/review workflows, cross-review, implementation planning, plan-to-spec, Docker container access, statusline, external AI delegation (Codex/agy), transcript retention guard, and optional Slack notifications.",
"policy": {
"installation": "AVAILABLE",
"authentication": "ON_INSTALL"
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/pytest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,11 @@ jobs:
- uses: actions/setup-python@v7
with:
python-version: "3.x"
# スライドの生成スクリプトのテストが node で pptxgenjs を動かす。依存の `npm ci` はテストが
# 自分で打つ(前提のコマンドの確認は根の conftest.py が行う。#2065)
- uses: actions/setup-node@v7
with:
node-version: "22"
- name: Install uv
run: python3 -m pip install --upgrade uv
# 起点はリポジトリの根に置く。環境は根の pyproject.toml と uv.lock が固定する(#1142 の決定 22)。
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -68,3 +68,7 @@ reports/

# cross-review が起動したレビュワーの PID(実行時にだけ作られる)
*-review-pr*.pid

# スライドの生成スクリプトの依存と生成物(#2065)
node_modules/
*.pptx
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ ai-plugins/
| [docs/ndf-plugin-reference.md](docs/ndf-plugin-reference.md) | NDFプラグイン詳細リファレンス |
| [docs/ndf-experiments.md](docs/ndf-experiments.md) | NDF の実験版の台帳(試している仕組み・使った結果・行き先) |
| [docs/specifications/](docs/specifications/) | 完了済みplan/issue由来の確定仕様 |
| [docs/presentations/](docs/presentations/) | 勉強会などで使うスライド資料(Marp形式)とビルド手順。**発表日時点の記録で、以後の構成変更には追随しない** |
| [docs/presentations/](docs/presentations/) | 勉強会などで使うスライド資料。生成スクリプト(pptxgenjs)・台本・構成メモを資料ごとのディレクトリに置く(作り方は `release` の `form-slide.md`)。**発表日時点の記録で、以後の構成変更には追随しない** |
| [docs/articles/](docs/articles/README.md) | 社外ブログへ載せる記事の正本。**書いた日時点の記録で、以後の構成変更には追随しない** |
| [docs/claude-code-skills-survey/](docs/claude-code-skills-survey/01-findings.md) | Claude Code Skills調査レポート(3 本) |
| [docs/development-history/](docs/development-history/) | 2026-09-02 までの開発履歴と知見。**以降の振り返りは、起点の issue か Pull Request のコメントに残す**(`/ndf:retrospective`) |
Expand Down
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,14 @@
**開発版(接尾辞の付いた版)は載せない。** `9.8.0` は `9.8.0-dev.1` までしか出ておらず、
その内容は `10.0.0` で届いている。

## [ndf 10.19.0] - 2026-10-18

- ndf の release Skill に、スライドの汎用テンプレートが入りました。ページの枠組みに沿って生成スクリプトから pptx を作り、トーン&マナーを差し替えられます。台本はノートになり、台本から発表の尺を計算できます(#2069)(#2070)
- スライドの生成は生成スクリプトの 1 経路です。構成メモと台本を用意し、生成スクリプトで作ります(#2069)(#2070)
- Google Slides の全ページのサムネイルを取るスクリプトで、変換後の体裁を画像で確かめられます。pptx の変換と差し替えに使う gws のコマンドは対応表から引けます(#2069)(#2070)
- 既知の失敗に、pptx で差し替えた Google スライドの書体が Arial になる場合と、その確かめ方を載せています(#2069)(#2070)
- Release: ndf v10.19.0-dev.1(#2073)

## [ndf 10.18.0] - 2026-10-16

- Update: Bump actions/setup-python from 5 to 7(#1387)
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ Claude Code では `/ndf:<Skill 名>` と打って呼びます。**Skill** は

| プラグイン名 | バージョン | できること | 詳細 |
| --- | --- | --- | --- |
| **ndf** | 10.18.0 | 開発の作業手順(Skill)と専門のサブエージェント。4 つの AI ツールへ同じ名前で入る | [README](./plugins/ndf/README.md) |
| **ndf** | 10.19.0 | 開発の作業手順(Skill)と専門のサブエージェント。4 つの AI ツールへ同じ名前で入る | [README](./plugins/ndf/README.md) |
| **playwright-kit** | 3.0.1 | Playwright による E2E テストの計画・スクリプト作成・証跡のレポート | [README](./plugins/playwright-kit/README.md) |

外部サービスへつなぐ MCP サーバーの設定のプラグインが 10 個あります(Claude Code / Codex / Kiro CLI 向け)。
Expand All @@ -88,7 +88,7 @@ Claude Code では `/ndf:<Skill 名>` と打って呼びます。**Skill** は

### NDF プラグインの Skill の一覧

**NDFプラグイン v10.18.0** に入る Skill の数は、AI ツールごとに違います。
**NDFプラグイン v10.19.0** に入る Skill の数は、AI ツールごとに違います。
Claude Code向け core 48個、Kiro向け core 45個、Codex向け core 44個、agy向け core 44個です。
元Skills(48個)の内訳は次のとおりです。
- Pull Request とレビュー (7): pr, pr-tests, fix, pr-review, cherry-pick-pr, deploy, merged
Expand Down
3 changes: 3 additions & 0 deletions conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,9 @@
"plugins/ndf/skills/cross-review/tests": ("bash", "jq", "git"),
# `assert-characterization.sh` を bash で起動し、チェックの本体が `jq` と `python3` を呼ぶ。
"tests/runtime-smoke": ("bash", "jq", "python3"),
# スライドの生成スクリプト(pptxgenjs)を node で実行し、依存が無ければ `npm ci` で入れる(#2065)
"plugins/ndf/skills/release/tests/test_slide_template.py": ("node", "npm"),
"tests/test_presentation_decks.py": ("node", "npm"),
}

# 読み飛ばしを選ぶ指定。**既定は失敗**である。読み飛ばしたい実行環境のために残すが、
Expand Down
15 changes: 15 additions & 0 deletions docs/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -700,3 +700,18 @@ AI エージェントが実施する前提で、作業の A・H・L・C を類
| 見積もりの完了条件 | — | 見積もる作業がどこまで終われば完了かを、supervise のフェーズの名前(設計・実装・検査・配布(開発版)・配布(本番))で表したもの | — | — | `docs/specifications/ndf-estimate.md` |
| 尺度を超える | — | A の見込みと Size 1 の基準との比が、尺度の最大を超えたときの Size の値。最大へ潰さず、分割を検討する印にする | — | — | `docs/specifications/ndf-estimate.md` |
| Size 1 の基準 | — | Size を A の見込みから丸めるときの単位の秒。宣言が無ければ、実績のある課題のうち A の小さい 4 分の 1 の中央値 | — | — | `docs/specifications/ndf-estimate.md` |

## NDF のスライドの作成(`ndf-slide`)

スライドを生成スクリプトで作り、Google Slides へ変換して確かめるときの語

| 語 | 識別子 | 意味 | 廃止した語 | 廃止した識別子 | 正本 |
| --- | --- | --- | --- | --- | --- |
| トーン&マナー | — | スライドの書体・色・文字サイズ・著作権表示・ロゴの値の組。プロジェクトごとに差し替える | — | — | — |
| ページの枠組み | — | 見出し・罫線・ロゴ・著作権表示・ページ番号の位置を固定した、ページを作る共通の関数(page / box / note / tbl / section) | — | — | — |
| 生成スクリプト | — | pptx を出力するスクリプト(pptxgenjs の build-deck.js)。スライドの正本になる | — | — | — |
| 汎用テンプレート | — | 会社色を持たないトーン&マナーとページの枠組みを持つ、生成スクリプトの出発点 | — | — | — |
| 構成メモ | — | スライドのページごとの番号・見出し・役割・根拠の表と、構成の考え方を書いた文書 | — | — | — |
| 台本 | — | ページごとの見出しと読み上げの原稿。配分秒数は見出しに付けてよい(任意)。スピーカーノートへ入れる | — | — | — |
| トーン&マナーのファイル | — | プロジェクトのトーン&マナーの値を持つ JSON(slides/theme.json)。書いた項目だけが汎用テンプレートの既定値を上書きする | — | — | — |
| 尺 | — | 台本の読み上げにかかる時間。読み上げの字数を 350 字/分で割って出す | — | — | — |
61 changes: 61 additions & 0 deletions docs/glossary/glossary.json
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,11 @@
"id": "ndf-estimate",
"name": "NDF の工数の見積もり",
"meaning": "AI エージェントが実施する前提で、作業の A・H・L・C を類似の実績から見積もり、予測と実績を突き合わせるときの語"
},
{
"id": "ndf-slide",
"name": "NDF のスライドの作成",
"meaning": "スライドを生成スクリプトで作り、Google Slides へ変換して確かめるときの語"
}
],
"terms": [
Expand Down Expand Up @@ -4078,6 +4083,62 @@
"context": "ndf-release",
"meaning": "PR の本文の `## 利用者向けの変化` が「無し」(「なし」も同じ)だけを持つこと。承認資料の「含む PR」の行に印を付け、CHANGELOG の版の節と「配る中身」には載せない。節の無い本文(題名で代える)とは別に扱う",
"source": "docs/specifications/ndf-release-approval-included-prs.md"
},
{
"term": "トーン&マナー",
"context": "ndf-slide",
"meaning": "スライドの書体・色・文字サイズ・著作権表示・ロゴの値の組。プロジェクトごとに差し替える",
"source": "",
"pending_source": "issues/issue-2065-requirements.md"
},
{
"term": "ページの枠組み",
"context": "ndf-slide",
"meaning": "見出し・罫線・ロゴ・著作権表示・ページ番号の位置を固定した、ページを作る共通の関数(page / box / note / tbl / section)",
"source": "",
"pending_source": "issues/issue-2065-requirements.md"
},
{
"term": "生成スクリプト",
"context": "ndf-slide",
"meaning": "pptx を出力するスクリプト(pptxgenjs の build-deck.js)。スライドの正本になる",
"source": "",
"pending_source": "issues/issue-2065-requirements.md"
},
{
"term": "汎用テンプレート",
"context": "ndf-slide",
"meaning": "会社色を持たないトーン&マナーとページの枠組みを持つ、生成スクリプトの出発点",
"source": "",
"pending_source": "issues/issue-2065-requirements.md"
},
{
"term": "構成メモ",
"context": "ndf-slide",
"meaning": "スライドのページごとの番号・見出し・役割・根拠の表と、構成の考え方を書いた文書",
"source": "",
"pending_source": "issues/issue-2065-requirements.md"
},
{
"term": "台本",
"context": "ndf-slide",
"meaning": "ページごとの見出しと読み上げの原稿。配分秒数は見出しに付けてよい(任意)。スピーカーノートへ入れる",
"source": "",
"pending_source": "issues/issue-2065-design.md"
},
{
"term": "トーン&マナーのファイル",
"context": "ndf-slide",
"meaning": "プロジェクトのトーン&マナーの値を持つ JSON(slides/theme.json)。書いた項目だけが汎用テンプレートの既定値を上書きする",
"source": "",
"pending_source": "issues/issue-2065-design.md"
},
{
"term": "尺",
"context": "ndf-slide",
"meaning": "台本の読み上げにかかる時間。読み上げの字数を 350 字/分で割って出す",
"source": "",
"pending_source": "issues/issue-2065-design.md"
}
]
}
Loading
Loading