prjct-cli 2.43.2 → 2.43.3

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/CHANGELOG.md CHANGED
@@ -3,7 +3,20 @@
3
3
  ## [Unreleased]
4
4
 
5
5
  ### Fixed
6
- - **CRITICAL: the memory cap no longer deletes knowledge.** `capEntries` (runs on every `prjct sync`) counted ALL `memory.%` events against the 500-row cap high-churn telemetry (`memory.post_edit` fires on every file edit) inflated the total and the age-ordered delete silently destroyed the OLDEST remembered decisions/gotchas/learnings while keeping hundreds of newer telemetry rows. `memory.remember.*` is now invisible to the cap (count and delete); knowledge leaves the log only via `prjct forget`. The delete is also exact-id based instead of an id-range sweep. If a past sync capped your project: the `memories` mirror table still holds the rows with their original ids — restorable.
6
+ - **CRITICAL: Codex support actually works now.** The bin shim self-healed the ~9.5KB Claude skill baseline into `~/.codex/skills/prjct/SKILL.md` over Codex's HARD ~1024-byte cap, so Codex silently rejected the entire skill. The shim now installs the Codex-specific template (and only when Codex is present); the skill metadata marker was compacted and a size guard + tests keep the built artifact under the cap with headroom.
7
+ - `prjct init` no longer logs `Generated: AGENTS.md` (and friends) for files it never wrote — it reports only what it actually writes.
8
+
9
+ ### Added
10
+ - **Codex MCP wiring.** Setup and sync now ensure `[mcp_servers.prjct]` in `~/.codex/config.toml` (marker-managed TOML block; user-managed entries are never touched) — the `prjct_*` tools finally exist for Codex sessions.
11
+ - **AGENTS.md generation.** `prjct init` writes a vendor-neutral prjct routing block to the project's `AGENTS.md` (marker-merged, user content preserved) when Codex is detected or wizard-selected — Codex has no hooks, so this block is its session-start context.
12
+ - `prjct doctor` now checks the `codex` binary and the installed Claude hooks count.
13
+
14
+ ## [2.43.3] - 2026-06-11
15
+
16
+ ### Bug Fixes
17
+
18
+ - Codex first-class — skill under 1KB cap, MCP wiring, real AGENTS.md, doctor checks (#427)
19
+
7
20
 
8
21
  ## [2.43.2] - 2026-06-11
9
22
 
package/README.md CHANGED
@@ -509,6 +509,14 @@ Codex is detected by the `codex` CLI on PATH (context file `AGENTS.md`). The
509
509
  sandbox is non-interactive/non-TTY, so prjct-cli emits the same static, prompt-free
510
510
  status line as any agent; add `--md` for fully markdown-structured output.
511
511
 
512
+ **What does Codex get from prjct?**
513
+ Three surfaces, all installed/healed automatically: a compact skill at
514
+ `~/.codex/skills/prjct/SKILL.md` (kept under Codex's ~1KB skill cap), the
515
+ prjct MCP server wired into `~/.codex/config.toml` (`prjct_*` tools), and a
516
+ vendor-neutral routing block in the project's `AGENTS.md` written by
517
+ `prjct init`. Codex has no lifecycle hooks, so AGENTS.md + MCP are its
518
+ session-start context and live tool surface.
519
+
512
520
  **How do I quickly find the local `.prjct/` directory?**
513
521
  It's in your **project repo root** (created by `prjct init` / first `prjct`
514
522
  command) and is `.gitignore`d — that's why `git status` never shows it. Find it:
package/bin/prjct CHANGED
@@ -91,15 +91,19 @@ ensure_setup() {
91
91
  # postinstall is unreliable (--ignore-scripts, npm policies), so the
92
92
  # bin shim self-heals on every invocation. mtime-based: source newer
93
93
  # than dest → overwrite. Common case (skill up-to-date) = two stats.
94
- SKILL_SRC="$ROOT_DIR/templates/skills/prjct/SKILL.md"
95
- if [ -f "$SKILL_SRC" ]; then
96
- for SKILL_DEST in "$HOME/.claude/skills/prjct/SKILL.md" "$HOME/.codex/skills/prjct/SKILL.md"; do
97
- SKILL_DIR=$(dirname "$SKILL_DEST")
98
- if [ ! -f "$SKILL_DEST" ] || [ "$SKILL_SRC" -nt "$SKILL_DEST" ]; then
99
- mkdir -p "$SKILL_DIR" 2>/dev/null
100
- cp "$SKILL_SRC" "$SKILL_DEST" 2>/dev/null
101
- fi
102
- done
94
+ # Each agent gets ITS OWN template: Codex enforces a hard ~1KB limit
95
+ # on the whole SKILL.md and silently rejects the entire skill when
96
+ # the (much larger) Claude baseline lands there.
97
+ install_skill() {
98
+ if [ -f "$1" ] && { [ ! -f "$2" ] || [ "$1" -nt "$2" ]; }; then
99
+ mkdir -p "$(dirname "$2")" 2>/dev/null
100
+ cp "$1" "$2" 2>/dev/null
101
+ fi
102
+ }
103
+ install_skill "$ROOT_DIR/templates/skills/prjct/SKILL.md" "$HOME/.claude/skills/prjct/SKILL.md"
104
+ # Codex only if present — don't create ~/.codex on machines without it
105
+ if [ -d "$HOME/.codex" ] || command -v codex >/dev/null 2>&1; then
106
+ install_skill "$ROOT_DIR/templates/codex/SKILL.md" "$HOME/.codex/skills/prjct/SKILL.md"
103
107
  fi
104
108
  }
105
109