agent-bios 0.9.8 → 0.10.0

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.
Files changed (59) hide show
  1. package/DEPENDENCIES.md +19 -19
  2. package/README.md +43 -12
  3. package/claude/CLAUDE.md +5 -41
  4. package/claude/guides/claude-prompting.md +1 -1
  5. package/claude/guides/cli-multi-model-workflow.md +22 -4
  6. package/claude/guides/coding-staged-workflow.md +49 -15
  7. package/claude/guides/concept-economy.md +187 -0
  8. package/claude/guides/documentation-hygiene.md +112 -0
  9. package/claude/guides/gpt-prompting.md +1 -1
  10. package/claude/guides/learning-flow.md +5 -5
  11. package/claude/guides/llm-capability-boundary.md +6 -1
  12. package/claude/guides/review-request.md +9 -7
  13. package/claude/guides/session-distill-workflow.md +19 -9
  14. package/claude/guides/tooling-gotchas.md +26 -0
  15. package/claude/guides/verification-discipline.md +166 -0
  16. package/claude/hooks/tooling-gotchas-hook.py +329 -12
  17. package/codex/AGENTS.md +5 -41
  18. package/codex/guides/claude-prompting.md +1 -1
  19. package/codex/guides/cli-multi-model-workflow.md +22 -4
  20. package/codex/guides/coding-staged-workflow.md +49 -15
  21. package/codex/guides/concept-economy.md +187 -0
  22. package/codex/guides/documentation-hygiene.md +112 -0
  23. package/codex/guides/gpt-prompting.md +1 -1
  24. package/codex/guides/learning-flow.md +5 -5
  25. package/codex/guides/llm-capability-boundary.md +6 -1
  26. package/codex/guides/review-request.md +9 -7
  27. package/codex/guides/session-distill-workflow.md +19 -9
  28. package/codex/guides/tooling-gotchas.md +26 -0
  29. package/codex/guides/verification-discipline.md +166 -0
  30. package/{scripts → compose}/assemble.py +194 -17
  31. package/{scripts → compose}/canary.sh +14 -5
  32. package/compose/check-domains.py +1178 -0
  33. package/{config → compose}/domains.json +11 -44
  34. package/{scripts → compose}/pkgid.py +8 -1
  35. package/compose/prune-backups.py +204 -0
  36. package/{scripts → compose}/register-hooks.py +3 -3
  37. package/install.sh +1233 -0
  38. package/launch/agent-launch.py +5294 -0
  39. package/launch/agent-launch.toml +376 -0
  40. package/{scripts → launch}/check-prompting-targets.sh +1 -1
  41. package/{scripts → launch}/provision-venv.sh +1 -1
  42. package/{scripts → learn}/check-learning.py +7 -7
  43. package/{scripts → learn}/collect-learning.py +10 -10
  44. package/{config → learn}/learning.schema.json +3 -3
  45. package/{scripts → learn}/migrate-learnings.py +95 -54
  46. package/{scripts → learn}/redact.py +4 -4
  47. package/package.json +32 -27
  48. package/provenance.json +1 -0
  49. package/wrappers/claude-run.sh +162 -0
  50. package/{scripts → wrappers}/codex-run.sh +62 -6
  51. package/config/agent-launch.toml +0 -143
  52. package/scripts/agent-launch.py +0 -2350
  53. package/scripts/check-domains.py +0 -296
  54. package/scripts/check-parity.sh +0 -2003
  55. package/scripts/install.sh +0 -819
  56. /package/{shell → launch}/agent-launch.zsh +0 -0
  57. /package/{config → learn}/promotions.json +0 -0
  58. /package/{scripts/session-cost.py → session-cost.py} +0 -0
  59. /package/{scripts → wrappers}/codex-helm.sh +0 -0
@@ -14,13 +14,15 @@ set -u
14
14
  CLAUDE_DIR="${CLAUDE_CONFIG_DIR:-$HOME/.claude}"
15
15
  BUNDLE="$CLAUDE_DIR/central/bundle.md"
16
16
 
17
- # A full (non-packaged) install has no central bundle by design — the entry file
18
- # IS the corpus. That is not a failure, and telling the user to reinstall with
19
- # --domains would silently narrow their corpus to fix a non-problem.
17
+ # Every install assembles a central bundle now — the shape that had none, where the entry file
18
+ # WAS the corpus, is gone. So a missing bundle is a real failure again rather than the N/A it
19
+ # used to be, and an entry file with no bundle beside it is a pre-convergence layout that a
20
+ # re-install fixes.
20
21
  if [ ! -f "$BUNDLE" ]; then
21
22
  if [ -f "$CLAUDE_DIR/CLAUDE.md" ]; then
22
- echo "CANARY N/A: full install no central bundle to probe (packaged mode creates one)"
23
- exit 3
23
+ echo "CANARY FAIL: entry file present but no central bundle at $BUNDLE this is the old"
24
+ echo " whole-file layout; re-run: agent-bios install"
25
+ exit 1
24
26
  fi
25
27
  echo "CANARY FAIL: no corpus deployed at $CLAUDE_DIR (run: agent-bios install)"
26
28
  exit 1
@@ -34,6 +36,13 @@ probe="Somewhere in your loaded instruction context there may be a line that sta
34
36
  out="$(cd "$HOME" && claude -p "$probe" 2>/dev/null)"
35
37
 
36
38
  if printf '%s' "$out" | grep -qF "$expected"; then
39
+ # Record WHICH bundle was proven to load. This is the only evidence in the system that
40
+ # distinguishes a corpus that landed from one that is read, so the irreversible act that
41
+ # depends on that distinction — pruning a user's personal copy of a promoted learning — reads
42
+ # this file rather than re-deriving a weaker answer from file contents. The rev is part of the
43
+ # proof: a later reassembly invalidates it instead of inheriting it.
44
+ STATE_DIR="${AGENT_BIOS_STATE_DIR:-$HOME/.local/share/agent-bios}"
45
+ mkdir -p "$STATE_DIR" 2>/dev/null && printf '%s\n' "$expected" > "$STATE_DIR/activation.txt" 2>/dev/null || true
37
46
  echo "CANARY PASS: central bundle is loading ($expected)"
38
47
  exit 0
39
48
  fi