このレポジトリでは、実際に AI に配布するドキュメントを codex/ と claude/ 配下に配置します。
docs/ 配下は設計や運用方針など、レポジトリ自体の補助ドキュメントを置く場所です。
deploy.json の items に、コピー元とコピー先を設定します。
{
"items": [
{
"source": "codex/skills",
"destination": "~/.codex/skills",
"replace": true,
"exclude": [
"**/.DS_Store",
"**/*.tmp"
]
}
]
}sourceがファイルの場合、destinationを配置先ファイルパスとしてコピーします。sourceがディレクトリの場合、ディレクトリの中身をdestinationディレクトリ配下へコピーします。sourceの相対パスは deploy コマンドを実行したカレントディレクトリから解決します。destinationの相対パスは設定ファイルのあるディレクトリから解決します。- コピー先に既存のファイルまたはディレクトリがある場合、コピー前にバックアップします。
- バックアップ先は設定ファイルと同じディレクトリ配下の
.deploy-backups/<timestamp>/です。 - バックアップは 1 回の実行につき 1 つのタイムスタンプ付きディレクトリにまとめ、
destinationの絶対パス構造を再現します。 - 実行時には
backup: <backup path>を出力します。 replaceは省略可能で、trueの場合はコピー前にdestinationを削除します。replaceがfalseまたは未指定の場合、コピー先にある余分なファイルは残します。excludeは省略可能で、sourceからの相対パスに対する glob として評価します。excludeでは*/?/**を指定できます。- dry-run では実際にはコピーせず、item ごとの予定と件数サマリを出力します。
- 通常の出力は ANSI カラーで色分けされます。色を無効化する場合は
-no-colorを指定します。
replace はコピー先を洗い替えするかどうかを item ごとに指定するフラグです。
{
"items": [
{
"source": "codex/agents",
"destination": "~/.codex/agents",
"replace": true
},
{
"source": "codex/config.toml",
"destination": "~/.codex/config.toml",
"replace": false
}
]
}replace: trueの場合、コピー前にdestinationをRemoveAll相当で削除します。sourceがディレクトリの場合、destinationディレクトリを削除してから、sourceの中身を配置します。sourceがファイルの場合、destinationファイルを削除してからコピーします。replace: falseまたは未指定の場合、コピー先の余分なファイルやディレクトリは削除されません。excludeはreplace後のコピー対象に対して適用されます。replace: trueの場合、除外されたファイルはコピーされませんが、既存のdestinationは先に削除されます。
dry-run では削除は実行されず、削除予定として REMOVE が出力されます。
[DRY-RUN] item[0] dir
source: /repo/codex/agents
destination: /Users/me/.codex/agents
backup: /repo/.deploy-backups/20260421-142600/Users/me/.codex/agents
replace: remove existing destination
summary: 8 copied, 4 dirs, 0 skipped