kimetsu-pi 0.1.4 → 0.1.5
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 +9 -1
- package/extensions/kimetsu.ts +6 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -33,7 +33,15 @@ This package connects Kimetsu through Pi's native extension and skill interfaces
|
|
|
33
33
|
to reuse injected context, correct outdated memories, and cite memories that
|
|
34
34
|
actually helped during a task.
|
|
35
35
|
|
|
36
|
-
## What's new in 0.1.
|
|
36
|
+
## What's new in 0.1.5
|
|
37
|
+
|
|
38
|
+
- Pi 1.2.0 compatibility: custom-triggered turns expire old memory without
|
|
39
|
+
treating background notifications as user prompts.
|
|
40
|
+
- Integration tests exercise Pi's real loader, event runner, model-message
|
|
41
|
+
conversion, and session saving with the Kimetsu 2.8.0 CLI in isolated fixtures.
|
|
42
|
+
- Refreshed development dependencies and removed the source-map-js advisory.
|
|
43
|
+
|
|
44
|
+
## Previously in 0.1.4
|
|
37
45
|
|
|
38
46
|
- Fresh memory per task: older raw injections are excluded from model requests
|
|
39
47
|
and new summaries, including after corrections, queued user messages, and
|
package/extensions/kimetsu.ts
CHANGED
|
@@ -172,12 +172,17 @@ export default function (pi: ExtensionAPI) {
|
|
|
172
172
|
// --warm-on-first-prompt folds the repo digest and episodic resume into the
|
|
173
173
|
// first turn of each session.
|
|
174
174
|
pi.on("before_agent_start", async (event, ctx) => {
|
|
175
|
+
// Pi 1.x also starts turns from custom messages. Those are not user
|
|
176
|
+
// prompts: expire earlier evidence without retrieving for an empty task.
|
|
177
|
+
// Checking the prompt field also preserves pre-1.x user events.
|
|
178
|
+
activeContext = undefined;
|
|
179
|
+
if (!("prompt" in event) || typeof event.prompt !== "string") return;
|
|
175
180
|
const request = { id: randomUUID(), sessionId: sessionIdOf(ctx) };
|
|
176
181
|
// Expire the last task immediately, even if retrieval is empty or fails.
|
|
177
182
|
activeContext = request;
|
|
178
183
|
const payload = JSON.stringify({
|
|
179
184
|
session_id: request.sessionId,
|
|
180
|
-
prompt:
|
|
185
|
+
prompt: event.prompt,
|
|
181
186
|
});
|
|
182
187
|
const stdout = await kimetsuRun(
|
|
183
188
|
["brain", "context-hook", "--warm-on-first-prompt", ...workspaceArgs(ctx)],
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kimetsu-pi",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"description": "Kimetsu brain as a Pi.dev package — local-first, cross-session memory for the Pi coding agent that gets sharper every run.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pi-package",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"test:integration": "node scripts/test-integration.mjs"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@earendil-works/pi-coding-agent": "
|
|
47
|
+
"@earendil-works/pi-coding-agent": "1.2.0",
|
|
48
48
|
"@types/node": "^26.0.0",
|
|
49
49
|
"typescript": "^7.0.0",
|
|
50
50
|
"vitest": "5.0.0"
|