pi-beyin 0.1.6 → 0.1.7

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
@@ -77,6 +77,21 @@ The extensions call `beyin.py` (read-only unless the agent runs a write command)
77
77
  A vault whose `beyin.py` does not accept `--harness pi` needs `tools/pi-harness-patch.py ensure
78
78
  --vault <vault>` (the extension does this on session start).
79
79
 
80
+ ## Relationship to beyin v3
81
+
82
+ `pi-beyin` is the **pi-side** adapter; the vault, `beyin.py` and the canonical skill templates belong to
83
+ beyin v3 and keep their own release cycle.
84
+
85
+ - `tools/pi-harness-patch.py` is the only thing that touches beyin's files: it adds `pi` to the harness
86
+ list in two managed modules (plus three pi-specific fixes) and re-syncs the install manifest so
87
+ `beyin.py update` plans cleanly. **A beyin update reverts these edits**; the extension calls `ensure`
88
+ on session start, so they come back by themselves. `status` is read-only.
89
+ - The skills here are **copies for pi**, not links into the vault. beyin still installs its own copies
90
+ under `.claude/skills/` for the other harnesses; pi does not read that directory.
91
+ - Notifications stay in the adapter: the injected context, the receipt reminder, the distillation
92
+ suggestion and the `beyin_jev_*` tool descriptions ship with this package. They are written in Turkish
93
+ today (the author's language); anything a *skill* writes follows the user's language.
94
+
80
95
  ## Project memory skills
81
96
 
82
97
  Skill descriptions carry bilingual trigger phrases (English + Turkish) on purpose: a description is a
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-beyin",
3
- "version": "0.1.6",
3
+ "version": "0.1.7",
4
4
  "description": "pi-native bridge for the beyin second brain: context injection, distillation reminders, and Jev advisor tools.",
5
5
  "keywords": [
6
6
  "pi-package",
@@ -57,29 +57,30 @@ EDITS = {
57
57
  "('codex', 'claude', 'antigravity', 'hermes', 'opencode', 'omp', 'pi')",
58
58
  ),
59
59
  ],
60
- # Python Jev istemcisi urllib varsayılan UA'sı ('Python-urllib/x') ile CommandCode'a gidince
61
- # Cloudflare 1010 -> HTTP 403 alıyor. openai-node UA'sı (pi-native yolun kullandığı) geçiyor.
62
- # Update sonrası 'ensure' yeniden uygular. Ayrıntı: work staj/logs/0111.
60
+ # The Python Jev client sends urllib's default UA ('Python-urllib/x') to CommandCode and gets
61
+ # Cloudflare 1010 -> HTTP 403. The openai-node UA (what the pi-native path uses) passes.
62
+ # 'ensure' re-applies this after every update. Measured 2026-10-15.
63
63
  ".claude/scripts/beyin_v3_jev_client.py": [
64
64
  (
65
65
  "headers={'Authorization':'Bearer '+key,'Content-Type':'application/json'}",
66
66
  "headers={'Authorization':'Bearer '+key,'Content-Type':'application/json','User-Agent':'openai-node/4.0.0'}",
67
67
  ),
68
68
  ],
69
- # CONTEXT_LIMIT (4000) Jev'in gerçek bağlam kapasitesinin çok altındaydı: 19943 kr bağlamla dahi
70
- # kanıt Sonda olduğu hâlde doğru verdict + yüksek confidence verdi (kırpma yok, 2026-10-15 ölçümü);
71
- # ~24424 kr'da transport sınırı devreye giriyor (`max_input_chars=24000`). 4000 iken >4000 kr notlar
72
- # `source_context_incomplete` ile doğrulanamıyordu (log 0114). 12000: her mevcut notu kapsar, güvenli bölgede.
69
+ # CONTEXT_LIMIT (4000) sat far below Jev's real context capacity: even with 19943 chars of context
70
+ # and the evidence at the very end, it returned the right verdict with high confidence (no
71
+ # truncation, measured 2026-10-15). The transport limit starts around 24424 chars
72
+ # (`max_input_chars=24000`). At 4000, notes longer than that failed as
73
+ # `source_context_incomplete`. 12000 covers every current note and stays in the safe zone.
73
74
  ".claude/scripts/beyin_v3_jev.py": [
74
75
  (
75
76
  "CONTEXT_LIMIT = 4000 # Jev; a provider with a smaller window reports context_limit",
76
77
  "CONTEXT_LIMIT = 12000 # Jev; measured >=19943 kr safe (2026-10-15); transport cap max_input_chars=24000",
77
78
  ),
78
79
  ],
79
- # memory_assessment tek istekte evidence + en fazla 4 prior gönderir; toplam gövde
80
- # max_input_chars'ı (24000) aşınca `budget_exceeded` ile tüm değerlendirme düşüyordu (log 0114).
81
- # Prior'lar opsiyonel, evidence zorunlu → bütçe yetmezse prior'ları sondan düşür. Bu,
82
- # "complete context" invariant'ını bozmaz (hiçbir kaynak özetlenmez/kırpılmaz).
80
+ # memory_assessment sends evidence plus up to 4 priors in one request; when the body exceeded
81
+ # max_input_chars (24000) the whole assessment failed with `budget_exceeded`. Priors are optional,
82
+ # evidence is required -> when the budget is tight, drop priors from the end. This does not break
83
+ # the "complete context" invariant: no source is summarized or truncated.
83
84
  ".claude/scripts/beyin_v3_memory_assessment.py": [
84
85
  (
85
86
  " try:\n"