@iamdevlinph/codex-kit 1.1.3 → 1.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -132,8 +132,9 @@ codex-kit project sync
132
132
  `project sync` never edits `AGENTS.md` or project skills. The reconciliation skill
133
133
  compares the refreshed template with the project's guidance and merges only
134
134
  applicable rules while preserving local organization and adaptations. If
135
- `TEMPLATE_AGENTS.md` was modified locally, sync preserves it for review instead
136
- of overwriting it.
135
+ `TEMPLATE_AGENTS.md` was modified locally, sync overwrites it with the packaged
136
+ template. Keep durable local rules in `AGENTS.md`; recover overwritten template
137
+ edits through Git history when needed.
137
138
 
138
139
  After reconciliation and validation, Codex runs:
139
140
 
@@ -151,9 +152,8 @@ template still needs reconciliation.
151
152
  `CODEX_HOME` or `~/.codex`.
152
153
  - `--cwd PATH` selects a project directory for project commands instead of the
153
154
  current directory.
154
- - `--force` lets `global install`, `global configure`, `project init`, or
155
- `project sync` replace modified files they manage. Use it only when you intend
156
- to discard those local changes.
155
+ - `--force` lets global commands replace modified files they manage. Use it only
156
+ when you intend to discard those local changes.
157
157
 
158
158
  Examples:
159
159
 
@@ -141,16 +141,20 @@ conditional procedures into validated project skills.
141
141
  - Avoid broad commands. After changes, run the smallest targeted verification
142
142
  that meaningfully validates them when practical, then report the command and
143
143
  result. Use the repository's documented package manager and scripts.
144
- - For behavior changes and bug fixes, add or update the smallest focused
145
- automated tests that meaningfully prevent regression when the repository has
146
- an established test setup.
144
+ - Select tests for regression value rather than exhaustive coverage. When the
145
+ repository has an established test setup, cover changed observable contracts,
146
+ reported regressions, meaningful boundaries, and plausible costly failures,
147
+ especially security, trust-boundary, or data-loss risks.
148
+ - Use one representative case per equivalent behavior class. Skip redundant
149
+ permutations, implementation-detail assertions, and contrived or unreachable
150
+ states unless a requirement or past defect justifies them.
147
151
  - Treat existing tests as regression contracts. Preserve their assertions unless
148
152
  the requested behavior intentionally changes. When behavior changes, update
149
153
  only the affected tests and add coverage for the new contract; never weaken or
150
154
  delete tests merely to make the suite pass.
151
- - Do not introduce a test framework or create low-value tests solely to satisfy
152
- this rule. If automated coverage is impractical, explain why and perform the
153
- strongest targeted verification available.
155
+ - Do not introduce a test framework solely to satisfy this rule. If automated
156
+ coverage is impractical, explain why and perform the strongest targeted
157
+ verification available.
154
158
  - Run the relevant focused tests after changing tested behavior.
155
159
  - When adding or updating dependencies, pin exact versions rather than ranges.
156
160
  With pnpm, use `pnpm add -E` (`--save-exact`).
@@ -9,9 +9,7 @@ description: Reconcile a refreshed TEMPLATE_AGENTS.md with a project's AGENTS.md
9
9
 
10
10
  1. Inspect `AGENTS.md`, `TEMPLATE_AGENTS.md`, `.codex-kit-state.json`, the
11
11
  project's existing `.agents/skills`, and `codex-kit project status`. Record
12
- the initial status before making changes. If a codex-kit template backup
13
- exists, compare it with the refreshed template to isolate the actual template
14
- change.
12
+ the initial status before making changes.
15
13
  2. Preserve the existing `AGENTS.md` organization and all project-specific
16
14
  adaptations. Merge only reusable template guidance that applies to this
17
15
  repository; report conflicts between local and template rules, and do not
package/bin/codex-kit.js CHANGED
@@ -645,19 +645,8 @@ function syncProject(options) {
645
645
  const state = loadProjectState(cwd);
646
646
  if (existsSync6(stagedTemplate)) {
647
647
  const currentHash = sha256(read(stagedTemplate));
648
- const locallyModified = currentHash !== sourceHash && (!state.template.availableHash || currentHash !== state.template.availableHash);
649
- if (locallyModified && !options.force) {
650
- console.warn(
651
- `preserved locally modified template: ${stagedTemplate} (use --force to replace)`
652
- );
653
- console.log(
654
- `The installed kit has template ${PACKAGE.version}; review the local change before syncing.`
655
- );
656
- return;
657
- }
658
648
  if (currentHash === sourceHash) console.log(`unchanged: ${stagedTemplate}`);
659
649
  else {
660
- backup(stagedTemplate);
661
650
  write(stagedTemplate, desired);
662
651
  console.log(`refreshed template reference: ${stagedTemplate}`);
663
652
  }
@@ -893,7 +882,6 @@ Options by command:
893
882
 
894
883
  project init, project sync
895
884
  --cwd PATH Use a project directory other than the current directory.
896
- --force Replace modified files managed by codex-kit.
897
885
 
898
886
  project status, project mark-applied
899
887
  --cwd PATH Use a project directory other than the current directory.
@@ -901,7 +889,7 @@ Options by command:
901
889
  Examples:
902
890
  codex-kit global install --force
903
891
  codex-kit global configure --reasoning-effort low --plan-reasoning-effort high
904
- codex-kit project sync --cwd /path/to/project --force
892
+ codex-kit project sync --cwd /path/to/project
905
893
  codex-kit project status --cwd /path/to/project`);
906
894
  }
907
895
  async function main(argv = process.argv.slice(2)) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iamdevlinph/codex-kit",
3
- "version": "1.1.3",
3
+ "version": "1.1.5",
4
4
  "description": "Portable Codex subagents and project AGENTS.md defaults.",
5
5
  "type": "module",
6
6
  "bin": {