エグゼクティブサマリー
LLMで議事録を作れるようになると、1on1やチーム内の会話ログが一気に増える。
これはかなり価値がある一方で、上位層へ報告するには少し分散しすぎる。1日に10〜15個の議事録が出るなら、なおさらです。
そこで、議事録そのものを人が毎回読み直すのではなく、Codex CLIの非対話モードとAgent Skillsを使って、日報・週報・管理資料に自動で寄せていく構成を考えました。
ざっくり言うと、こういう流れです。
議事録群
-> 日報作成Skill
-> codex exec 非対話実行
-> 日報.md
-> Git push
-> 週報.md
-> management向け資料
議事録を「書いて終わり」にせず、Gitにたまる報告資産として育てるのが狙いです。
結論
日々の議事録が増えてきたら、次に考えるべきは「議事録をどう読むか」よりも「議事録から何を自動で作るか」だと思っています。
Codex CLIには、非対話実行用の codex exec があります。これをスクリプトやタスクスケジューラから起動し、prompt内で $daily-report のようにSkillを明示すれば、日報作成専用のAgentとして動かせます。
たとえば日次では、当日の議事録を入力にして reports/daily/YYYYMMDD(aaa).md を作る。週次では、日報を入力にして reports/weekly/YYYY-Wxx.md を作る。さらに必要なら、週報をもとにmanagement向けの論点整理資料を作る。
この形にしておくと、報告のために議事録を探し回る時間が減ります。議事録の価値を消さずに、上位報告に使いやすい粒度へ変換できるのが良いところです。
背景
LLMで議事録を作る運用は、かなり強いです。
特に1on1や短い相談のログは、以前なら記録に残りにくかったものです。そこに議事録が残ると、意思決定の背景、困りごと、次のアクションが見えるようになります。
一方で、議事録が増えるほど別の問題が出ます。
- 1日に10〜15個の議事録が出る
- 各議事録には価値がある
- ただし、上位層にそのまま共有するには細かすぎる
- 週次・月次の報告では、横断的な論点にまとめ直す必要がある
つまり、議事録の量が増えたこと自体は良いことです。ただ、人が読む単位と、報告に使う単位がズレてくる。
このズレを埋めるために、日報用・週報用・管理資料用のSkillを用意し、Codex CLIを定期実行する構成にします。
全体像
構成はシンプルです。
minutes/
20260502(土)/
0900_1on1_A.md
1000_1on1_B.md
1100_team_sync.md
.agents/
skills/
daily-report/
SKILL.md
weekly-report/
SKILL.md
management-report/
SKILL.md
reports/
daily/
20260502(土).md
weekly/
2026-W18.md
management/
2026-05.md
scripts/
run-daily-report.ps1
run-weekly-report.ps1
議事録は minutes/ にためます。Codex CLIは、Skillを読みながら reports/ 配下に日報や週報を書きます。
その後、生成物をGitにcommitしてpushする。これで、日々の報告が履歴として残ります。
議事録.md
-> codex exec + $daily-report
-> 日報.md
-> git commit / git push
-> codex exec + $weekly-report
-> 週報.md
-> codex exec + $management-report
-> management向け資料.md
この構成の良いところは、すべてがMarkdownとGitで扱えることです。あとから差分も追えるし、過去の週報から月次の傾向も拾いやすい。
手順1:日報作成Skillを置く
CodexのSkillは、SKILL.md を持つディレクトリとして配置します。
リポジトリ直下に置くなら、たとえばこうです。
New-Item -ItemType Directory -Force .agents\skills\daily-report
@'
---
name: daily-report
description: Use for generating a daily report from meeting minutes in this repository.
---
# Daily report skill
You generate a daily report from meeting minutes.
## Inputs
- Read meeting minutes under `minutes/YYYYMMDD(aaa)/`.
- Treat 1on1 details carefully.
- Do not expose personal or sensitive details directly.
## Output
Write a concise Markdown report to `reports/daily/YYYYMMDD(aaa).md`.
## Report structure
- Summary
- Decisions
- Risks and blockers
- Follow-up actions
- Topics to escalate
## Style
- Focus on facts, decisions, risks, and next actions.
- Merge duplicated topics across meetings.
- Keep the report suitable for sharing with managers.
'@ | Set-Content -Encoding UTF8 .agents\skills\daily-report\SKILL.md
ここでは、日報に何を入れるかをSkill側に寄せています。毎回promptに細かく書くのではなく、「この種類の仕事では、いつもこの観点でまとめる」をSkillとして保存しておくイメージです。
手順2:codex execで日報を作る
codex exec は、Codexを非対話モードで実行するためのコマンドです。スクリプトやCI、定期実行に向いています。
PowerShellでは、prompt内の $daily-report が変数展開されないように、シングルクォートで囲むのが安全です。
codex exec --sandbox workspace-write `
'$daily-report を使って、今日の議事録から reports/daily/YYYYMMDD(aaa).md を作成してください。'
日付やパスを動的に入れるなら、promptを変数に分けたほうが扱いやすいと思います。
ここでの YYYYMMDD(aaa) は記事上の表記です。PowerShellでは、そのまま Get-Date -Format 'YYYYMMDD(aaa)' と書くのではなく、20260502(土) のようなラベルを組み立てます。
$today = Get-Date
$weekday = @('日','月','火','水','木','金','土')[$today.DayOfWeek.value__]
$dateLabel = '{0:yyyyMMdd}({1})' -f $today, $weekday
$prompt = @"
`$daily-report を使ってください。
目的:
- 今日の議事録を読み、日報Markdownを作成する
- 個人が特定される1on1の詳細は出さない
- 意思決定、リスク、次アクション、上位報告すべき論点を整理する
対象日: $dateLabel
入力: minutes/$dateLabel/
出力: reports/daily/$dateLabel.md
"@
codex exec --sandbox workspace-write $prompt
--sandbox workspace-write は、Codexにファイル作成・編集を許可するために付けます。読み取りだけなら不要ですが、日報ファイルを作らせるなら必要です。
手順3:長いpromptはstdinから渡す
promptが長くなる場合は、ファイルにしてstdinから渡すほうが管理しやすいです。
たとえば prompts/daily-report.txt を作ります。
$daily-report を使ってください。
目的:
- 指定日の議事録を読み、日報Markdownを作成する
- 議事録ごとの細かい話ではなく、横断的な論点にまとめる
- 上位報告に使えるよう、リスク・意思決定・次アクションを明確にする
注意:
- 1on1の個別事情はそのまま出さない
- 個人名が必要ない場合は、チーム・役割・テーマ単位に丸める
- 不明点は「確認事項」として残す
実行時に、日付などの追加情報を付けて渡します。
$today = Get-Date
$weekday = @('日','月','火','水','木','金','土')[$today.DayOfWeek.value__]
$dateLabel = '{0:yyyyMMdd}({1})' -f $today, $weekday
@"
対象日: $dateLabel
入力: minutes/$dateLabel/
出力: reports/daily/$dateLabel.md
"@ | codex exec --sandbox workspace-write "$(Get-Content .\prompts\daily-report.txt -Raw)"
標準入力をそのままpromptにするなら、codex exec - も使えます。
Get-Content .\prompts\daily-report.txt -Raw |
codex exec --sandbox workspace-write -
日付や入力パスを毎回変えたいなら、スクリプト側でpromptを組み立てる形が扱いやすいです。
手順4:JSONLログを残す
自動実行するなら、実行ログも残したくなります。
--json を付けると、Codexの実行イベントをJSON Linesで出せます。
$today = Get-Date
$weekday = @('日','月','火','水','木','金','土')[$today.DayOfWeek.value__]
$dateLabel = '{0:yyyyMMdd}({1})' -f $today, $weekday
$logDir = "logs/codex/$dateLabel"
New-Item -ItemType Directory -Force $logDir | Out-Null
codex exec --json --sandbox workspace-write `
'$daily-report を使って、今日の議事録から日報を作成してください。' `
> "$logDir/daily-report.jsonl"
最終メッセージだけ別ファイルにしたい場合は、-o も使えます。
$today = Get-Date
$weekday = @('日','月','火','水','木','金','土')[$today.DayOfWeek.value__]
$dateLabel = '{0:yyyyMMdd}({1})' -f $today, $weekday
codex exec --sandbox workspace-write `
-o "logs/codex/$dateLabel/daily-report-summary.txt" `
'$daily-report を使って、今日の議事録から日報を作成してください。'
ログを残しておくと、あとから「なぜこの日報になったのか」を追いやすくなります。Gitの差分とCodexの実行ログをセットで見ると、かなり運用しやすいです。
手順5:Git pushまで自動化する
日報を作ったら、Gitにためます。
最低限のスクリプトなら、こんな形です。
$today = Get-Date
$weekday = @('日','月','火','水','木','金','土')[$today.DayOfWeek.value__]
$dateLabel = '{0:yyyyMMdd}({1})' -f $today, $weekday
$prompt = @"
`$daily-report を使ってください。
対象日: $dateLabel
入力: minutes/$dateLabel/
出力: reports/daily/$dateLabel.md
要件:
- 議事録を横断して要約する
- 意思決定、リスク、次アクション、上位報告論点を整理する
- 1on1の個別事情はそのまま出さない
"@
codex exec --sandbox workspace-write $prompt
git add "reports/daily/$dateLabel.md"
git diff --cached --quiet
if ($LASTEXITCODE -ne 0) {
git commit -m "Add daily report $dateLabel"
git push
}
これを scripts/run-daily-report.ps1 として置き、WindowsのタスクスケジューラやCIから定期実行します。
最初は完全自動にしすぎず、日報生成後に人がレビューしてからpushする運用でも良いです。慣れてきたら、commitまでは自動、pushや共有だけ手動、という段階的な運用にできます。
手順6:週報とmanagement向け資料につなげる
日報がGitにたまると、次は週報を作れます。
週報用Skillを置きます。
New-Item -ItemType Directory -Force .agents\skills\weekly-report
@'
---
name: weekly-report
description: Use for generating a weekly report from daily reports in this repository.
---
# Weekly report skill
You generate a weekly report from daily reports.
## Inputs
- Read reports under `reports/daily/`.
- Group topics by project, risk, decision, and action.
## Output
Write a concise Markdown report to `reports/weekly/YYYY-Wxx.md`.
## Report structure
- Weekly summary
- Major decisions
- Progress
- Risks and blockers
- Management attention items
- Next week actions
'@ | Set-Content -Encoding UTF8 .agents\skills\weekly-report\SKILL.md
実行は同じです。
$today = Get-Date
$week = '{0:yyyy}-W{1:D2}' -f $today, (Get-Culture).Calendar.GetWeekOfYear(
$today,
[System.Globalization.CalendarWeekRule]::FirstFourDayWeek,
[DayOfWeek]::Monday
)
$prompt = @"
`$weekly-report を使ってください。
入力: reports/daily/ の直近1週間分
出力: reports/weekly/$week.md
"@
codex exec --sandbox workspace-write $prompt
management向け資料も、考え方は同じです。
日報: 現場の事実と日々の動き
週報: 週単位の進捗、リスク、意思決定
管理資料: 上位層が判断すべき論点、支援が必要な点、傾向
議事録からいきなり管理資料を作るより、日報・週報という中間生成物を挟んだほうが、粒度が安定しやすいです。
最終形
最終的には、こういう運用を目指します。
毎日:
1. LLMで議事録を作る
2. minutes/YYYYMMDD(aaa)/ に保存する
3. codex exec + $daily-report を定期実行する
4. reports/daily/YYYYMMDD(aaa).md を生成する
5. Gitにcommit / pushする
毎週:
1. reports/daily/ の1週間分を読む
2. codex exec + $weekly-report を実行する
3. reports/weekly/YYYY-Wxx.md を生成する
4. Gitにcommit / pushする
必要に応じて:
1. 週報や日報をもとにmanagement向け資料を作る
2. 判断が必要な論点だけに絞る
この形にすると、議事録が増えることを怖がらなくてよくなります。
むしろ、議事録が増えるほど、日報・週報・管理資料の材料が増える。現場の細かい情報を消さずに残しつつ、報告時には必要な粒度へ変換できる。
これは、LLM議事録とCodex CLIのかなり相性が良い使い方だと思っています。
まとめ
LLMで議事録が量産されるようになると、情報は豊かになります。
ただし、そのままだと分散します。特に1on1や細かいチーム内会話が1日に10〜15本あると、上位報告の材料としては扱いづらい。
そこで、Codex CLIの codex exec とAgent Skillsを使い、議事録を日報・週報・管理資料へ段階的に変換する。
Gitにためておけば、履歴も差分も残ります。あとから振り返れるし、報告資料の根拠も追いやすい。
議事録を「保存されたテキスト」ではなく、「報告や意思決定に変換できる資産」として扱う。そこに落ち着きました。