@pennixrv/trellis 0.7.0-beta.29 → 0.7.0-beta.31

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.
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "version": "0.7.0-beta.16",
3
- "description": "Use Hindsight for coordinator memory and isolate subnode memory hooks",
3
+ "description": "Refresh coordinator handoff and worker extension boundaries",
4
4
  "breaking": false,
5
5
  "recommendMigrate": false,
6
- "changelog": "**Workflow fixes:**\n- Subnode templates disable Hindsight hooks and MCP tools so evidence workers do not create or consume unsupervised memory.\n- Coordinator-owned Hindsight handoff remains available for explicit project memory writes.\n- The bundled handoff contract is aligned with the Hindsight-backed Pennix workflow.",
6
+ "changelog": "Refresh bundled coordinator handoff and subnode extension-isolation guidance. These release notes describe the legacy update; current behavior follows the selected workflow.",
7
7
  "migrations": [],
8
8
  "notes": "Run npm install -g @pennixrv/trellis@beta then trellis update. No --migrate required."
9
9
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "0.7.0-beta.18",
3
- "description": "Clarify Hindsight retrieval proof in the Codex subnode workflow",
3
+ "description": "Clarify formal-handoff verification in the Codex subnode workflow",
4
4
  "breaking": false,
5
5
  "recommendMigrate": false,
6
6
  "changelog": "**Handoff contract clarification:**\n- The Codex subnode workflow distinguishes same-document retrieval verification from canonical content persistence.\n- Marketplace workflow content hashes remain synchronized with the published workflow.\n- No project migration is required.",
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "version": "0.7.0-beta.21",
3
- "description": "Remove the obsolete Hindsight-only subnode environment asset",
3
+ "description": "Remove the obsolete subnode environment asset",
4
4
  "breaking": false,
5
5
  "recommendMigrate": false,
6
- "changelog": "Subnode isolation is now implemented by the Codex adapter and worker environment boundary. The generated Hindsight-only `.trellis/agents/subnode.env` is no longer part of the workflow template.",
6
+ "changelog": "Subnode isolation is now implemented by the Codex adapter and worker environment boundary. The generated `.trellis/agents/subnode.env` is no longer part of the workflow template.",
7
7
  "migrations": [
8
8
  {
9
9
  "type": "safe-file-delete",
10
10
  "from": ".trellis/agents/subnode.env",
11
- "description": "Remove the obsolete Hindsight-only subnode environment file",
11
+ "description": "Remove the obsolete subnode environment file",
12
12
  "reason": "The same child isolation contract is now enforced by the Trellis Codex adapter and environment builder; only the unmodified generated file is safe to delete.",
13
13
  "allowed_hashes": ["b34ec77e748c1fab09e96d9fd6ca4af6ab993472b9d060d89375460d9740ca1f"]
14
14
  }
@@ -3,7 +3,7 @@
3
3
  "description": "Preserve native session identity when no task is active",
4
4
  "breaking": false,
5
5
  "recommendMigrate": false,
6
- "changelog": "task current --json now exposes session_source independently of the task-pointer source. Taskless formal handoffs can keep their native session identity without creating a task. The Pennix Marketplace workflow uses Cognee exact retrieval proof instead of the retired Hindsight contract.",
6
+ "changelog": "task current --json now exposes session_source independently of the task-pointer source. Taskless formal handoffs can keep their native session identity without creating a task. The Pennix Marketplace workflow updates formal-handoff verification.",
7
7
  "migrations": [],
8
8
  "notes": "Run trellis update to refresh task.py. Existing source semantics and exit codes are unchanged. Explicitly refresh the selected Marketplace workflow to its approved commit."
9
9
  }
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "version": "0.7.0-beta.23",
3
- "description": "Correct the bundled subnode memory isolation guidance",
3
+ "description": "Correct the bundled subnode extension-isolation guidance",
4
4
  "breaking": false,
5
5
  "recommendMigrate": false,
6
- "changelog": "The trellis-channel worker reference now matches implemented Cognee isolation: the native Codex adapter disables the official plugin for subnodes, and no memory-specific env_file is generated.",
6
+ "changelog": "The trellis-channel worker reference now matches the native extension-isolation guidance: the Codex adapter disables the retired extension for subnodes, and no extension-specific env_file is generated.",
7
7
  "migrations": [],
8
8
  "notes": "Run trellis update to refresh the bundled trellis-channel reference. No runtime behavior or migration task changes."
9
9
  }
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "version": "0.7.0-beta.27",
3
- "description": "Adopt the official Cognee memory contract and isolate subnode access",
3
+ "description": "Align coordinator handoff and subnode extension boundaries",
4
4
  "breaking": false,
5
5
  "recommendMigrate": false,
6
- "changelog": "The Codex channel now uses the official Cognee plugin contract for coordinator memory, verifies formal handoffs through authenticated dataset/data UUID and raw-content proof, and disables the plugin plus COGNEE_* environment inheritance for subnodes.",
6
+ "changelog": "Align the coordinator formal-handoff verification contract with the selected workflow and isolate child extension configuration and environment inheritance.",
7
7
  "migrations": [],
8
8
  "notes": "Run trellis update to refresh the selected workflow and bundled worker guidance. No task or ownership migration is required."
9
9
  }
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "version": "0.7.0-beta.28",
3
- "description": "Apply the native Codex Cognee plugin override correctly",
3
+ "description": "Apply the native Codex extension override correctly",
4
4
  "breaking": false,
5
5
  "recommendMigrate": false,
6
- "changelog": "Codex subnodes now pass the unquoted dotted plugin key that the native -c parser recognizes, so the official Cognee plugin is actually disabled for the child process.",
6
+ "changelog": "Codex subnodes now pass the unquoted dotted plugin key that the native -c parser recognizes, so the retired extension is actually disabled for the child process.",
7
7
  "migrations": [],
8
8
  "notes": "Upgrade the CLI to receive the adapter fix. No task or ownership migration is required."
9
9
  }
@@ -0,0 +1,9 @@
1
+ {
2
+ "version": "0.7.0-beta.30",
3
+ "description": "Refresh legacy migration descriptions and retain safe cleanup",
4
+ "breaking": false,
5
+ "recommendMigrate": false,
6
+ "changelog": "Bundled legacy migration metadata uses neutral extension and handoff descriptions. Version identifiers, migration targets, hash-guarded cleanup, and native task/session behavior remain unchanged.",
7
+ "migrations": [],
8
+ "notes": "Upgrade the CLI and refresh project assets. Selected workflow sources and local task/history records are preserved. No task or ownership migration is required."
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "version": "0.7.0-beta.31",
3
+ "description": "Clarify local conversation recall and curated knowledge ownership",
4
+ "breaking": false,
5
+ "recommendMigrate": false,
6
+ "changelog": "The shared session-insight skill selects current project facts, raw local dialogue, and curated knowledge by user intent. It keeps external knowledge writes and promotions explicit, with no mandatory preload or automatic synchronization. Runtime and mem behavior are unchanged.",
7
+ "migrations": [],
8
+ "notes": "Upgrade the CLI and refresh generated project assets. Preserve selected workflows, project contracts, tasks and history; no runtime migration is required."
9
+ }
@@ -5,7 +5,7 @@ description: "Reach into past AI conversation history through the `trellis mem`
5
5
 
6
6
  # Trellis Session Insight
7
7
 
8
- This skill teaches an AI **how to call `trellis mem`** — the project's cross-session memory feedstock — and **when reaching for it is the right move**.
8
+ This skill teaches an AI **how to call `trellis mem`** for local conversation history and **when reaching for it is the right move**.
9
9
 
10
10
  It is intentionally a **capability skill, not a workflow**. There is no fixed output file, no required write-back step, no "always run after finish-work" rule. What to do with what `mem` returns is a judgement call made in the moment of the conversation. The skill exists so the AI knows the capability is there and can decide.
11
11
 
@@ -15,6 +15,14 @@ A local CLI that indexes the user's past Claude Code, Codex, Devin CLI, Grok, Op
15
15
 
16
16
  Nothing in `mem` is uploaded. All reads are local.
17
17
 
18
+ `mem` returns historical discussion, not a curated knowledge base or an automatic
19
+ preference/summary writer. Current source, task artifacts, `AGENTS.md`, and specs
20
+ own current facts. If the user asks for maintained knowledge or reusable notes,
21
+ use that environment's configured native knowledge tool instead. Select the
22
+ source by intent and add a targeted second lookup only for a specific evidence
23
+ gap; there is no required sequence through all sources. A knowledge tool's
24
+ absence or failure does not block Trellis tasks, local recall, or handoff.
25
+
18
26
  ## When to reach for it
19
27
 
20
28
  The bar is "would a senior teammate ask 'didn't we already talk about this?'" — those are the moments. Some concrete patterns:
@@ -40,13 +48,21 @@ If none of these apply, don't call `mem`. It is a tool, not a ceremony.
40
48
  Treat the output as **raw material**, not a deliverable. Once you have it, decide based on the live conversation:
41
49
 
42
50
  - **Quote inline in your reply** if a specific past exchange answers the user's current question — and cite the session-id / phase so the user can verify.
43
- - **Update `<task>/prd.md` or `<task>/design.md`** if `mem` surfaced a load-bearing decision that should have been written down but wasn't. Surface the proposed edit to the user first.
51
+ - **Update `<task>/prd.md` or `<task>/design.md`** if `mem` surfaced a load-bearing decision that should have been written down but wasn't. Verify against current facts and follow the active task's authorization; material changes return to its planning gate.
44
52
  - **Append to a task-local notes file** (e.g. `<task>/notes.md` or extending an existing one) if the finding belongs to the current task's record but doesn't fit the PRD.
45
53
  - **Update `.trellis/spec/`** if the finding is a project-wide convention or gotcha that would help future tasks. Run the `trellis-update-spec` skill for that — `session-insight` ends at the discovery.
46
54
  - **Just absorb it** for the next few turns and answer better, without writing anything. This is often the right move for one-off recall.
47
55
 
48
56
  Trellis does not prescribe a single destination. Forcing every recall into a fixed file makes the file grow into noise. Let the situation decide.
49
57
 
58
+ Reusable experience can be proposed for a user-maintained knowledge tool;
59
+ executable project contracts go through `trellis-update-spec`, stable methods
60
+ through the source Skill owner, and cross-project rules require an explicit
61
+ common scope. External knowledge writes or new promotions require concrete user
62
+ intent, including any minimal source-note status/version/target-link update.
63
+ Existing authorized task/spec duties do not acquire an extra confirmation gate.
64
+ Verify each target independently; do not introduce automatic synchronization.
65
+
50
66
  ## How to call it
51
67
 
52
68
  Full CLI reference is in `references/cli-quick-reference.md`. The 80% case is one of:
@@ -1,6 +1,8 @@
1
1
  # Triggering Patterns
2
2
 
3
- Verbatim user phrasings that should make an AI reach for `trellis mem`. Calibrate instinct against these — if a user message hits one of these patterns and you do not reach for `mem`, you probably missed an obvious recall.
3
+ Verbatim user phrasings that suggest local conversation recall. Check the intent
4
+ and available current evidence before calling `trellis mem`; these examples do
5
+ not require an unconditional history search.
4
6
 
5
7
  Patterns are grouped by the *intent* behind the phrasing, not the surface words. The same intent shows up in different languages and registers.
6
8
 
@@ -32,7 +34,8 @@ Reach: `trellis mem search "<decision keyword>"` to find the session, then `extr
32
34
 
33
35
  ## Cross-session continuation
34
36
 
35
- The user resumed work after a gap and the context is implicit.
37
+ The user resumed work after a gap and the context is implicit. Read the active
38
+ task and current files first; use raw history only for missing discussion.
36
39
 
37
40
  - "Where were we?"
38
41
  - "Continue from last time."
@@ -84,6 +87,11 @@ Reach: identify the current task's session id (from `.trellis/.runtime/sessions/
84
87
 
85
88
  ## Anti-patterns: do NOT reach for `mem` here
86
89
 
90
+ - "Find our maintained deployment notes" → the configured native knowledge tool.
91
+ - "Save this reusable result to my notebook" → explicit knowledge write through its owner.
92
+ - "Promote this method into a Skill" → verify the evidence, then the source Skill owner.
93
+ - Current task artifacts already answer the question → use those artifacts.
94
+
87
95
  - "What does this function do?" → read the file.
88
96
  - "Why is this test failing?" → read the test output and the file.
89
97
  - "What's the right pattern for X in our codebase?" → grep / read spec files.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pennixrv/trellis",
3
- "version": "0.7.0-beta.29",
3
+ "version": "0.7.0-beta.31",
4
4
  "description": "AI capabilities grow like ivy — Trellis provides the structure to guide them along a disciplined path",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -34,7 +34,7 @@
34
34
  "inquirer": "^9.3.7",
35
35
  "undici": "^6.21.0",
36
36
  "zod": "^4.4.2",
37
- "@pennixrv/trellis-core": "0.7.0-beta.29"
37
+ "@pennixrv/trellis-core": "0.7.0-beta.31"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@eslint/js": "^9.18.0",