pi-beyin 0.1.4 → 0.1.6

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
@@ -10,7 +10,7 @@ Codex/Claude/OpenCode hooks, plus a CommandCode classifier bridge and the projec
10
10
  | `extensions/context.ts` | Injects relevant vault notes into every request and reminds the agent to write a receipt when a turn edited files without recording. Registers the `beyin_jev_memory` / `beyin_jev_review` / `beyin_jev_answer` advisor tools. |
11
11
  | `extensions/damitma.ts` | At the end of a turn, if the vault was written but nothing was distilled into `knowledge/`, offers **distillation candidates** (never writes on its own). `/damitma`. |
12
12
  | `extensions/jev.ts` | Registers CommandCode's `typesafe/jev` decision model as a pi classifier. `/jev-test`. |
13
- | `skills/` | `experiment-record`, `journal`, `literature`, `maintenance` — project-memory procedures driven by `<project>/.pi/beyin-project.json` (see [`skills/_shared/project-profile.md`](skills/_shared/project-profile.md)). |
13
+ | `skills/` | `brain` (vault memory work), `brain-doctor` (health), `brain-update` (upgrades), `source-distillation` (external sources → concept notes), and the project-memory procedures `experiment-record`, `journal`, `literature`, `maintenance` driven by `<project>/.pi/beyin-project.json` (see [`skills/_shared/project-profile.md`](skills/_shared/project-profile.md)). |
14
14
  | `tools/pi-harness-patch.py` | Makes a beyin vault treat `pi` as a first-class harness (`receipt --harness pi`). Idempotent; the extension re-applies it after beyin updates. |
15
15
 
16
16
  Everything is **fail-open**: an error never breaks the turn, that turn's contribution is just
@@ -79,8 +79,14 @@ A vault whose `beyin.py` does not accept `--harness pi` needs `tools/pi-harness-
79
79
 
80
80
  ## Project memory skills
81
81
 
82
- The four skills read `<project>/.pi/beyin-project.json` for paths and scopes; without a profile they
83
- fall back to `logs/`, `journal/`, `literature/`. The profile schema and the safety rules (source ≠
82
+ Skill descriptions carry bilingual trigger phrases (English + Turkish) on purpose: a description is a
83
+ **routing surface**, not output — it is the text the model uses to pick the skill, so it quotes how the
84
+ user actually speaks. Keep the lists short: every description is in the system prompt on every turn.
85
+
86
+ The skills are written in English; what they produce is not. Every skill writes in the user's language
87
+ and reuses the target file's headings — existing headings are never translated. The project-memory skills
88
+ read `<project>/.pi/beyin-project.json` for paths and scopes; without a profile they fall back to `logs/`,
89
+ `journal/`, `literature/`. The profile schema and the safety rules (source ≠
84
90
  derived report, never delete, secrets are never read or copied) are in
85
91
  [`skills/_shared/project-profile.md`](skills/_shared/project-profile.md).
86
92
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-beyin",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
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",
@@ -1,6 +1,6 @@
1
1
  # Project Profile Schema (`<project>/.pi/beyin-project.json`)
2
2
 
3
- The portable skills (`experiment-record`, `journal`, `literature`, `maintenance`) read their paths from this file, so the
3
+ The portable skills (`experiment-record`, `journal`, `literature`, `maintenance`, and the beyin workflow skills) read their paths from this file, so the
4
4
  same skill writes into each project's own directories.
5
5
 
6
6
  ## Schema
@@ -1,6 +1,6 @@
1
1
  ---
2
- name: beyin
3
- description: Vault memory procedure — find knowledge, write notes and tasks, record finished work with its sources, and keep companion notes current. Use for requests like "hatırla", "bunu kaydet", "not al", "hafızama bak", "görevi güncelle", "ne yapmıştık", "oturumu kapat", "beyne yaz", "remember this", "save this to memory", "note this down", "update the task", "what did we do", "close the session". Runs against the vault root that holds beyin.py. Also covers the optional Jev advisor and the consumption/auto-check preferences.
2
+ name: brain
3
+ description: Vault memory procedure — find knowledge, write notes and tasks, record finished work with its sources, and keep companion notes current. Use for requests like "hatırla", "bunu kaydet", "ne yapmıştık", "remember this", "save this to memory", "what did we do". Runs against the vault root that holds beyin.py. Also covers the Jev advisor and the consumption/auto-check preferences.
4
4
  ---
5
5
 
6
6
  # Beyin
@@ -245,7 +245,7 @@ model runner or a new dependency without being asked.
245
245
 
246
246
  V3.1: the `updates` section inside `doctor` shows the latest version check; a network error does not prove being
247
247
  up to date. Use `beyin.py update --check --metadata-only` only for a version question. Route an update request to
248
- the `beyin-update` skill.
248
+ the `brain-update` skill.
249
249
 
250
250
  ## Optional Jev and source-backed decision review
251
251
 
@@ -1,6 +1,6 @@
1
1
  ---
2
- name: beyin-doctor
3
- description: Health check for the beyin installation — does memory actually work, are sources indexed, are hook/worker, skills and updates healthy. Use for requests like "beyin doktor", "hafıza çalışıyor mu", "sağlık kontrolü", "doctor çalıştır", "neden hatırlamıyor", "hook çalışmıyor", "skill çakışması", "run a health check", "is the memory working", "why doesn't it remember", "check the hook". Never turns an indicator green by deleting data.
2
+ name: brain-doctor
3
+ description: Health check for the beyin installation — is memory indexed, are sources synced, are skills and updates healthy. Use for requests like "beyin doktor", "hafıza çalışıyor mu", "neden hatırlamıyor", "run a health check", "why doesn't it remember". Never turns an indicator green by deleting data.
4
4
  ---
5
5
 
6
6
  # Beyin doctor
@@ -16,7 +16,7 @@ logs or private notes into the chat, explain the fault and the smallest fix.
16
16
 
17
17
  If a source change isn't indexed, `python3 beyin.py sync`; if skill files differ, reconcile deliberately with
18
18
  `python3 beyin.py skill-sync`. If both sides changed, keep the files and say which version has to be chosen. If an
19
- update was left half-done, use the `beyin-update` path; never turn a health indicator green by deleting the runtime
19
+ update was left half-done, use the `brain-update` path; never turn a health indicator green by deleting the runtime
20
20
  database or the user's files.
21
21
 
22
22
  When the client connection has to be verified, use a probe note that contains no private data. In a new real
@@ -66,7 +66,7 @@ ask again for nothing.
66
66
 
67
67
  V3.1: the `updates` section inside `doctor` shows the latest version check; a network error does not prove being up
68
68
  to date. Use `beyin.py update --check --metadata-only` only for a version question. Route an update request to the
69
- `beyin-update` skill.
69
+ `brain-update` skill.
70
70
 
71
71
  **Structural auditing is not `doctor`'s job.** Note/task/link graph, single-ownership violations, broken links,
72
72
  traces of dead claims → delegate to a read-only vault-audit sub-agent: it returns evidenced findings plus a
@@ -1,6 +1,6 @@
1
1
  ---
2
- name: beyin-update
3
- description: Update an existing beyin installation to the new official version, check the version, or roll back a failed upgrade. Use for requests like "beynimi güncelle", "yeni sürüm var mı", "sürümü kontrol et", "güncelleme kaldı", "geri dön", "rollback", "update beyin", "is there a new version", "check the version", "undo the update". One tool only — beyin.py update.
2
+ name: brain-update
3
+ description: Update an existing beyin installation to the new official version, check the version, or roll back a failed upgrade. Use for requests like "beynimi güncelle", "yeni sürüm var mı", "geri dön", "update beyin", "rollback". One tool only — beyin.py update.
4
4
  ---
5
5
 
6
6
  # Update beyin
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: experiment-record
3
- description: Experiment and decision record standard (project memory). Use for requests like "memory", "deney kaydet", "log tut", "bu denemeyi yaz", "record this run", "sonuçları kaydet", "config/seed not al", "note the config/seed", "deney geçmişine bak", "ne denemiştim", "logs'a bak", "check the logs". Records model training, fine-tuning, ablations, dataset experiments and debugging sessions, plus decisions that must persist, in a reproducible form. Paths and scope come from the project profile (.pi/beyin-project.json).
3
+ description: Experiment and decision record standard (project memory). Use for requests like "deney kaydet", "bu denemeyi yaz", "logs'a bak", "record this run", "check the logs". Records training, fine-tuning, ablations, dataset experiments, debugging sessions and decisions that must persist, in a reproducible form. Paths and scope come from .pi/beyin-project.json.
4
4
  ---
5
5
 
6
6
  # Experiment Record — Experiment and Decision Log
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: journal
3
- description: Daily journal (raw narrative) recording procedure. Use for requests like "günlük", "bugün ne yaptık", "günlüğe ekle", "bugünü kaydet", "gün sonu", "oturumu yaz", "dün ne yapmıştık", "günlüklerime bak", "journal this", "log today", "what did we do yesterday". Detects the system date, opens `YYYY-MM-DD.md` in the journal directory (creating it if absent) and adds what was done that day — including work done through conversation — as prose. The journal is the raw narrative layer; reports/summaries are derived from it. Path and scope come from the project profile.
3
+ description: Daily journal (raw narrative) procedure. Use for requests like "günlüğe ekle", "gün sonu", "dün ne yapmıştık", "journal this", "what did we do yesterday". Opens YYYY-MM-DD.md in the journal directory (creating it if absent) and adds that day's work — including work done through conversation — as prose. The journal is the raw layer; reports derive from it. Path from the project profile.
4
4
  ---
5
5
 
6
6
  # Journal — Raw Narrative Layer
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: literature
3
- description: Literature/paper reading-task assignment and note-taking procedure. Use for requests like "literatür", "makale oku", "paper oku", "şu makaleyi oku", "okuma görevi ver", "not ekle", "şunu okudum anlatayım", "teori çalış", "read this paper", "give me a reading task", "add a note". Assigns reading tasks with focus questions; when the user explains what they read, writes an ordered note into the literature directory. Applies the "concept before tool" principle. Paths come from the project profile.
3
+ description: Literature/paper reading-task assignment and note-taking procedure. Use for requests like "makale oku", "okuma görevi ver", "şunu okudum anlatayım", "read this paper", "give me a reading task". Assigns reading tasks with focus questions; writes an ordered note when the user explains what they read. Concept before tool. Paths from the project profile.
4
4
  ---
5
5
 
6
6
  # Literature — Task Assignment and Note-Taking
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: maintenance
3
- description: System maintenance / garbage-collection PROPOSAL procedure. Use for requests like "temizlik", "bakım", "sistemi toparla", "çöplükleri temizle", "clean up", "tidy the repo", "oturumu kapat", "yeni oturuma geçmeden temizle", "kompakte et", "compact the state". Also PROPOSE maintenance to the user at natural moments such as session close or phase transition. IMPORTANT — never runs on its own or on a schedule; it only proposes, and acts after user approval. Paths come from the project profile.
3
+ description: System maintenance / garbage-collection PROPOSAL procedure. Use for requests like "temizlik", "sistemi toparla", "kompakte et", "clean up", "compact the state". Also propose maintenance at natural moments such as session close. IMPORTANT — never runs on its own or on a schedule; it only proposes, and acts after user approval. Paths from the project profile.
4
4
  ---
5
5
 
6
6
  # Maintenance — Garbage Collection PROPOSAL (runs on approval)
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: source-distillation
3
- description: Capture an external source (web doc, arXiv/paper, local PDF archive, bookmark export) and distill it into a high-quality concept note in the vault. Use for requests like "şu siteyi vault'a al", "dokümanları damıt", "makale arşivini işle", "pdf'lerden not çıkar", "bookmarklarımı damıt", "şu URL'leri tara", "distill these docs", "turn this into notes", "process the paper archive". The quality wall and the secret/privacy gate are mandatory. Raw source paths come from the project profile.
3
+ description: Capture an external source (web doc, arXiv/paper, local PDF archive, bookmark export) and distill it into a source-linked concept note in the vault. Use for requests like "dokümanları damıt", "makale arşivini işle", "bookmarklarımı damıt", "distill these docs", "process the paper archive". The quality wall and the secret/privacy gate are mandatory. Raw source paths come from the project profile.
4
4
  ---
5
5
 
6
6
  # Source distillation (external source → vault)
@@ -9,7 +9,7 @@ Language: write in the user's language and reuse the target file's headings —
9
9
 
10
10
  Distill transferable knowledge from an **external source** the user gives (web, paper, local PDF, bookmark) into
11
11
  the vault. Not copying raw text: **source ≠ derived**. The raw source stays outside the vault; the vault holds only
12
- the distilled, source-linked note. Related: `../beyin/SKILL.md`.
12
+ the distilled, source-linked note. Related: `../brain/SKILL.md`.
13
13
 
14
14
  ## Paths (from the project profile)
15
15
  `<project root>/.pi/beyin-project.json` → `sources` (optional; fallback `sources/` under the project root),