claude-recall 0.18.2 → 0.18.4
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/.claude/skills/auto-corrections/SKILL.md +1 -7
- package/.claude/skills/auto-corrections/manifest.json +5 -11
- package/.claude/skills/auto-failure-lessons/SKILL.md +2 -3
- package/.claude/skills/auto-failure-lessons/manifest.json +4 -5
- package/.claude/skills/auto-preferences/SKILL.md +11 -98
- package/.claude/skills/auto-preferences/manifest.json +14 -101
- package/dist/cli/claude-recall-cli.js +2 -1
- package/dist/mcp/tools/memory-tools.js +19 -5
- package/package.json +1 -1
|
@@ -8,7 +8,7 @@ source: claude-recall
|
|
|
8
8
|
|
|
9
9
|
# Corrections
|
|
10
10
|
|
|
11
|
-
Auto-generated from
|
|
11
|
+
Auto-generated from 17 memories. Last updated: 2026-03-21.
|
|
12
12
|
|
|
13
13
|
## Rules
|
|
14
14
|
|
|
@@ -22,12 +22,6 @@ Auto-generated from 23 memories. Last updated: 2026-03-20.
|
|
|
22
22
|
- CORRECTION: Memory with complex metadata
|
|
23
23
|
- CORRECTION: Memory with complex metadata
|
|
24
24
|
- CORRECTION: Memory with complex metadata
|
|
25
|
-
- CORRECTION: Memory with complex metadata
|
|
26
|
-
- CORRECTION: Memory with complex metadata
|
|
27
|
-
- CORRECTION: Memory with complex metadata
|
|
28
|
-
- CORRECTION: Memory with complex metadata
|
|
29
|
-
- CORRECTION: Memory with complex metadata
|
|
30
|
-
- CORRECTION: Memory with complex metadata
|
|
31
25
|
- CORRECTION: Replace expired access token with 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
|
|
32
26
|
- CORRECTION: use spaces not tabs for indentation
|
|
33
27
|
- CORRECTION: cited (loaded 5+ times): 19
|
|
@@ -1,18 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"topicId": "corrections",
|
|
3
|
-
"sourceHash": "
|
|
4
|
-
"memoryCount":
|
|
5
|
-
"generatedAt": "2026-03-
|
|
3
|
+
"sourceHash": "2c220ace8666e38374662c19a60f76118e125327cc273019414c6e8383e5e120",
|
|
4
|
+
"memoryCount": 17,
|
|
5
|
+
"generatedAt": "2026-03-21T15:18:51.279Z",
|
|
6
6
|
"memoryKeys": [
|
|
7
|
+
"memory_1774106331272_kg5w7ztfj",
|
|
8
|
+
"memory_1774104588311_65kg08e05",
|
|
7
9
|
"memory_1774020789453_x9xkjhbug",
|
|
8
|
-
"memory_1773999187635_v9sxfphej",
|
|
9
|
-
"memory_1773740608781_ae2bn7zos",
|
|
10
|
-
"memory_1773659723317_o738xfbyw",
|
|
11
|
-
"memory_1773656489899_l75d50pxo",
|
|
12
|
-
"memory_1773654956776_7mffm1tp2",
|
|
13
|
-
"memory_1773410782442_mnfvdml5n",
|
|
14
|
-
"memory_1773409168373_t4lqoqpiv",
|
|
15
|
-
"memory_1773220863163_q8k0ewti8",
|
|
16
10
|
"memory_1773140547102_2wmy0cfga",
|
|
17
11
|
"memory_1773065886725_rscm7v2qx",
|
|
18
12
|
"memory_1773063478046_x0ryr9bk4",
|
|
@@ -8,15 +8,14 @@ source: claude-recall
|
|
|
8
8
|
|
|
9
9
|
# Failure Lessons
|
|
10
10
|
|
|
11
|
-
Auto-generated from
|
|
11
|
+
Auto-generated from 26 memories. Last updated: 2026-03-21.
|
|
12
12
|
|
|
13
13
|
## Rules
|
|
14
14
|
|
|
15
15
|
- Check command syntax, file paths, and prerequisites before running
|
|
16
16
|
- SQLite query syntax error: LIKE clause requires single quotes around string literal, not double quotes
|
|
17
|
+
- Avoid: Command failed: claude-recall outcomes 2>&1 → Instead: Check command syntax, file paths, and prerequisites before running
|
|
17
18
|
- Avoid: Command failed: npx jest tests/unit/outcome-storage.test.ts tests/unit/promotion-engine.test.ts tests/unit/memory... → Instead: Check command syntax, file paths, and prerequisites before running
|
|
18
|
-
- Avoid: Command failed: npx jest tests/unit/bash-failure-watcher.test.ts 2>&1 → Instead: Check command syntax, file paths, and prerequisites before running
|
|
19
|
-
- Avoid: Command failed: npx jest tests/unit/memory-sync-hook.test.ts 2>&1 → Instead: Check command syntax, file paths, and prerequisites before running
|
|
20
19
|
- Avoid: Command failed: npm whoami 2>&1 && npm config get registry 2>&1 → Instead: Check command syntax, file paths, and prerequisites before running
|
|
21
20
|
- npm install -g claude-recall@0.15.36 failed with notarget error
|
|
22
21
|
- claude-recall@0.15.36 does not exist on npm registry (ETARGET error)
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"topicId": "failure-lessons",
|
|
3
|
-
"sourceHash": "
|
|
4
|
-
"memoryCount":
|
|
5
|
-
"generatedAt": "2026-03-
|
|
3
|
+
"sourceHash": "577fce05d7ff95d6661cf78c93b84ce7a8ff54d22964456ca73c045bac9c0986",
|
|
4
|
+
"memoryCount": 26,
|
|
5
|
+
"generatedAt": "2026-03-21T15:18:51.248Z",
|
|
6
6
|
"memoryKeys": [
|
|
7
7
|
"promoted_1774019382782_acm9j0h8u",
|
|
8
8
|
"hook_failure_1772637584921_0tj4rrxnt",
|
|
9
|
+
"hook_failure_non-zero-exit_1774020949485_6ubuoswae",
|
|
9
10
|
"hook_failure_non-zero-exit_1773999564001_82kcdp0ag",
|
|
10
|
-
"hook_failure_non-zero-exit_1773784543398_siidzp55g",
|
|
11
|
-
"hook_failure_non-zero-exit_1773669669860_9mcdbx51y",
|
|
12
11
|
"hook_failure_non-zero-exit_1773409269877_ful451241",
|
|
13
12
|
"hook_failure_1773410916808_5k1r6zo4u",
|
|
14
13
|
"hook_failure_1773410916789_xtrb8j9nw",
|
|
@@ -8,113 +8,26 @@ source: claude-recall
|
|
|
8
8
|
|
|
9
9
|
# Preferences
|
|
10
10
|
|
|
11
|
-
Auto-generated from
|
|
11
|
+
Auto-generated from 16 memories. Last updated: 2026-03-21.
|
|
12
12
|
|
|
13
13
|
## Rules
|
|
14
14
|
|
|
15
|
+
- Session test preference 1774106331339
|
|
16
|
+
- Test preference 1774106331283-2
|
|
17
|
+
- Test preference 1774106331283-1
|
|
18
|
+
- Test preference 1774106331283-0
|
|
19
|
+
- Test memory content
|
|
20
|
+
- Session test preference 1774104588383
|
|
21
|
+
- Test preference 1774104588325-2
|
|
22
|
+
- Test preference 1774104588325-1
|
|
23
|
+
- Test preference 1774104588325-0
|
|
24
|
+
- Test memory content
|
|
15
25
|
- Session test preference 1774020789925
|
|
16
26
|
- Test preference 1774020789520-2
|
|
17
27
|
- Test preference 1774020789520-1
|
|
18
28
|
- Test preference 1774020789520-0
|
|
19
29
|
- Test memory content
|
|
20
30
|
- Session test preference 1773999187736
|
|
21
|
-
- Test preference 1773999187658-2
|
|
22
|
-
- Test preference 1773999187658-1
|
|
23
|
-
- Test preference 1773999187658-0
|
|
24
|
-
- Test memory content
|
|
25
|
-
- Session test preference 1773740608856
|
|
26
|
-
- Test preference 1773740608797-2
|
|
27
|
-
- Test preference 1773740608797-1
|
|
28
|
-
- Test preference 1773740608797-0
|
|
29
|
-
- Test memory content
|
|
30
|
-
- Session test preference 1773659723404
|
|
31
|
-
- Test preference 1773659723333-2
|
|
32
|
-
- Test preference 1773659723333-1
|
|
33
|
-
- Test preference 1773659723333-0
|
|
34
|
-
- Test memory content
|
|
35
|
-
- Session test preference 1773656489963
|
|
36
|
-
- Test preference 1773656489911-2
|
|
37
|
-
- Test preference 1773656489911-1
|
|
38
|
-
- Test preference 1773656489911-0
|
|
39
|
-
- Test memory content
|
|
40
|
-
- Session test preference 1773654956838
|
|
41
|
-
- Test preference 1773654956788-2
|
|
42
|
-
- Test preference 1773654956788-1
|
|
43
|
-
- Test preference 1773654956788-0
|
|
44
|
-
- Test memory content
|
|
45
|
-
- Session test preference 1773410782522
|
|
46
|
-
- Test preference 1773410782456-2
|
|
47
|
-
- Test preference 1773410782456-1
|
|
48
|
-
- Test preference 1773410782456-0
|
|
49
|
-
- Test memory content
|
|
50
|
-
- Session test preference 1773409168447
|
|
51
|
-
- Test preference 1773409168387-2
|
|
52
|
-
- Test preference 1773409168387-1
|
|
53
|
-
- Test preference 1773409168387-0
|
|
54
|
-
- Test memory content
|
|
55
|
-
- Session test preference 1773220863220
|
|
56
|
-
- Test preference 1773220863174-2
|
|
57
|
-
- Test preference 1773220863174-1
|
|
58
|
-
- Test preference 1773220863174-0
|
|
59
|
-
- Test memory content
|
|
60
|
-
- Session test preference 1773140547204
|
|
61
|
-
- Test preference 1773140547121-2
|
|
62
|
-
- Test preference 1773140547121-1
|
|
63
|
-
- Test preference 1773140547121-0
|
|
64
|
-
- Test memory content
|
|
65
|
-
- Session test preference 1773065886791
|
|
66
|
-
- Test preference 1773065886739-2
|
|
67
|
-
- Test preference 1773065886739-1
|
|
68
|
-
- Test preference 1773065886739-0
|
|
69
|
-
- Test memory content
|
|
70
|
-
- Session test preference 1773063478118
|
|
71
|
-
- Test preference 1773063478060-2
|
|
72
|
-
- Test preference 1773063478060-1
|
|
73
|
-
- Test preference 1773063478060-0
|
|
74
|
-
- Test memory content
|
|
75
|
-
- Session test preference 1773063446014
|
|
76
|
-
- Test preference 1773063445964-2
|
|
77
|
-
- Test preference 1773063445964-1
|
|
78
|
-
- Test preference 1773063445964-0
|
|
79
|
-
- Test memory content
|
|
80
|
-
- Session test preference 1772641994220
|
|
81
|
-
- Test preference 1772641994155-2
|
|
82
|
-
- Test preference 1772641994155-1
|
|
83
|
-
- Test preference 1772641994155-0
|
|
84
|
-
- Test memory content
|
|
85
|
-
- Session test preference 1772641570600
|
|
86
|
-
- Test preference 1772641570532-2
|
|
87
|
-
- Test preference 1772641570532-1
|
|
88
|
-
- Test preference 1772641570532-0
|
|
89
|
-
- Test memory content
|
|
90
|
-
- Session test preference 1772641027019
|
|
91
|
-
- Test preference 1772641026972-2
|
|
92
|
-
- Test preference 1772641026972-1
|
|
93
|
-
- Test preference 1772641026972-0
|
|
94
|
-
- Test memory content
|
|
95
|
-
- {"value":"the","raw":"Create a new test file in the tests directory","confidence":0.7,"isOverride":false,"overrideSignals":[],"source":"automatic-extraction"}
|
|
96
|
-
- Test memory 1770503281864-4
|
|
97
|
-
- Test memory 1770503281864-3
|
|
98
|
-
- Test memory 1770503281864-2
|
|
99
|
-
- Test memory 1770503281864-1
|
|
100
|
-
- Test memory 1770503281864-0
|
|
101
|
-
- Test memory 1770503266492-4
|
|
102
|
-
- Test memory 1770503266492-3
|
|
103
|
-
- Test memory 1770503266492-2
|
|
104
|
-
- Test memory 1770503266492-1
|
|
105
|
-
- Test memory 1770503266492-0
|
|
106
|
-
- Do not bump version numbers without asking first
|
|
107
|
-
- Use local node_modules/.bin/claude-recall path in setup --install hook commands instead of npx to avoid registry hits
|
|
108
|
-
- Use YYYYMMDD_descriptive_name.md naming convention for markdown files
|
|
109
|
-
- When user says 'jam', it means 'just answer me' — a shorthand directive to provide direct answers without elaboration
|
|
110
|
-
- When user says 'jam', they mean 'just answer me' — respond directly without explanation
|
|
111
|
-
- Use YYYYMMDD_descriptive_name.md naming convention for files
|
|
112
|
-
- always use tabs for indentation
|
|
113
|
-
- always use tabs
|
|
114
|
-
- always use tabs
|
|
115
|
-
- Do not change TTL settings—current configuration was deliberately chosen for a reason
|
|
116
|
-
- Do not change TTL settings; current configuration is intentional and should be preserved
|
|
117
|
-
- you to replace existing install instructions on project readme with the above
|
|
118
31
|
|
|
119
32
|
---
|
|
120
33
|
*Auto-generated by Claude Recall. Regenerate: `npx claude-recall skills generate`*
|
|
@@ -1,111 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"topicId": "preferences",
|
|
3
|
-
"sourceHash": "
|
|
4
|
-
"memoryCount":
|
|
5
|
-
"generatedAt": "2026-03-
|
|
3
|
+
"sourceHash": "7123394f8e4ec18013e3a3c3d5f2a4761f1a0c14c20401f566541901de6f797c",
|
|
4
|
+
"memoryCount": 16,
|
|
5
|
+
"generatedAt": "2026-03-21T15:18:51.351Z",
|
|
6
6
|
"memoryKeys": [
|
|
7
|
+
"memory_1774106331340_cwt88yhle",
|
|
8
|
+
"memory_1774106331311_491hg2a21",
|
|
9
|
+
"memory_1774106331297_0b6bvacd7",
|
|
10
|
+
"memory_1774106331284_ai62szr9y",
|
|
11
|
+
"memory_1774106331222_zjfz8zu59",
|
|
12
|
+
"memory_1774104588384_hy5yej2pk",
|
|
13
|
+
"memory_1774104588351_whsk5rvw3",
|
|
14
|
+
"memory_1774104588338_80cx2o3jv",
|
|
15
|
+
"memory_1774104588325_g4o5ksubl",
|
|
16
|
+
"memory_1774104588255_fy0wv845g",
|
|
7
17
|
"memory_1774020789927_g99mrubvu",
|
|
8
18
|
"memory_1774020789705_xhubujrxv",
|
|
9
19
|
"memory_1774020789618_m1p55yhtz",
|
|
10
20
|
"memory_1774020789521_saryqj7kw",
|
|
11
21
|
"memory_1774020789257_wla5q38wq",
|
|
12
|
-
"memory_1773999187737_qrdwbas47"
|
|
13
|
-
"memory_1773999187696_gymxhasno",
|
|
14
|
-
"memory_1773999187680_p6rxtp38v",
|
|
15
|
-
"memory_1773999187660_0at06kilq",
|
|
16
|
-
"memory_1773999187564_d7j4ivfjo",
|
|
17
|
-
"memory_1773740608857_7954nxhke",
|
|
18
|
-
"memory_1773740608828_pkci7qhtt",
|
|
19
|
-
"memory_1773740608815_k3tj4psf1",
|
|
20
|
-
"memory_1773740608798_287hs9q7h",
|
|
21
|
-
"memory_1773740608717_3wy6inv8q",
|
|
22
|
-
"memory_1773659723405_v31rp5h3e",
|
|
23
|
-
"memory_1773659723371_xhh4zlbuh",
|
|
24
|
-
"memory_1773659723354_y2ohkszjc",
|
|
25
|
-
"memory_1773659723334_0s9ajoyzw",
|
|
26
|
-
"memory_1773659723257_3fn8u7isl",
|
|
27
|
-
"memory_1773656489964_tpm4ycfc1",
|
|
28
|
-
"memory_1773656489936_29pvxu7ni",
|
|
29
|
-
"memory_1773656489924_ick7951wj",
|
|
30
|
-
"memory_1773656489912_w54afewzm",
|
|
31
|
-
"memory_1773656489839_ij3r3sg2s",
|
|
32
|
-
"memory_1773654956839_pluovrk77",
|
|
33
|
-
"memory_1773654956815_ofh9by5rb",
|
|
34
|
-
"memory_1773654956802_24y27xjux",
|
|
35
|
-
"memory_1773654956790_pnrio2ihb",
|
|
36
|
-
"memory_1773654956712_hnjabccni",
|
|
37
|
-
"memory_1773410782523_k5hjje6pt",
|
|
38
|
-
"memory_1773410782491_zbm4dcqvl",
|
|
39
|
-
"memory_1773410782472_t0nrgizx2",
|
|
40
|
-
"memory_1773410782457_eca2hxqcs",
|
|
41
|
-
"memory_1773410782389_ehwhx4mov",
|
|
42
|
-
"memory_1773409168448_lp6jbcq6o",
|
|
43
|
-
"memory_1773409168422_x97lwordj",
|
|
44
|
-
"memory_1773409168407_gjxhfjl1u",
|
|
45
|
-
"memory_1773409168388_98ks3u4k3",
|
|
46
|
-
"memory_1773409168308_zjbd31cbp",
|
|
47
|
-
"memory_1773220863221_ggnocokf8",
|
|
48
|
-
"memory_1773220863198_rv1353oto",
|
|
49
|
-
"memory_1773220863187_9r4z9dwpv",
|
|
50
|
-
"memory_1773220863175_jni0m5kzy",
|
|
51
|
-
"memory_1773220863131_hmj0hfcp5",
|
|
52
|
-
"memory_1773140547206_8cbbkefpx",
|
|
53
|
-
"memory_1773140547162_eksnqi34n",
|
|
54
|
-
"memory_1773140547143_w1ufbuash",
|
|
55
|
-
"memory_1773140547123_uoyitjwhj",
|
|
56
|
-
"memory_1773140547027_ckax4bx7l",
|
|
57
|
-
"memory_1773065886792_fpwpp53q1",
|
|
58
|
-
"memory_1773065886768_j9hss5jvk",
|
|
59
|
-
"memory_1773065886755_mlkpvl15c",
|
|
60
|
-
"memory_1773065886740_cfpbgv7xa",
|
|
61
|
-
"memory_1773065886660_kepguw7v5",
|
|
62
|
-
"memory_1773063478119_f5s8sac1g",
|
|
63
|
-
"memory_1773063478088_riw645v9v",
|
|
64
|
-
"memory_1773063478075_sotna438z",
|
|
65
|
-
"memory_1773063478061_qie30hhrd",
|
|
66
|
-
"memory_1773063478002_xfk9uosur",
|
|
67
|
-
"memory_1773063446016_yrypv3hpg",
|
|
68
|
-
"memory_1773063445993_cy74lmf6l",
|
|
69
|
-
"memory_1773063445981_l7y0uh7gi",
|
|
70
|
-
"memory_1773063445965_211kprcio",
|
|
71
|
-
"memory_1773063445889_vzmr6lcy8",
|
|
72
|
-
"memory_1772641994221_cctqm7vd4",
|
|
73
|
-
"memory_1772641994194_763rlkhhz",
|
|
74
|
-
"memory_1772641994179_zs0rpz3zr",
|
|
75
|
-
"memory_1772641994158_vadq15tec",
|
|
76
|
-
"memory_1772641994099_xrwpeeakk",
|
|
77
|
-
"memory_1772641570601_xvf8npg4u",
|
|
78
|
-
"memory_1772641570568_82uovwj87",
|
|
79
|
-
"memory_1772641570553_x5pqxh0i5",
|
|
80
|
-
"memory_1772641570534_lcj6gabjh",
|
|
81
|
-
"memory_1772641570475_9dly40az7",
|
|
82
|
-
"memory_1772641027021_1dd26eqko",
|
|
83
|
-
"memory_1772641027000_bkioeyv90",
|
|
84
|
-
"memory_1772641026988_qcl3agwiv",
|
|
85
|
-
"memory_1772641026973_3wwzozcu8",
|
|
86
|
-
"memory_1772641026924_g7idzqyvz",
|
|
87
|
-
"test_location",
|
|
88
|
-
"memory_1770503281954_abo811a30",
|
|
89
|
-
"memory_1770503281930_zu6z96vpp",
|
|
90
|
-
"memory_1770503281903_djro844nj",
|
|
91
|
-
"memory_1770503281884_tgw9eoio2",
|
|
92
|
-
"memory_1770503281865_tln4jdqqd",
|
|
93
|
-
"memory_1770503266599_2p944ykku",
|
|
94
|
-
"memory_1770503266570_ar7s4w401",
|
|
95
|
-
"memory_1770503266534_iq6pvjqj6",
|
|
96
|
-
"memory_1770503266513_a1nxjz4j2",
|
|
97
|
-
"memory_1770503266494_f3p8e15xv",
|
|
98
|
-
"hook_preference_1773743105207_791mk6w14",
|
|
99
|
-
"hook_preference_1772641938714_ucidifq0v",
|
|
100
|
-
"hook_preference_1772633980785_n9bwj39q4",
|
|
101
|
-
"hook_preference_1771934420257_l4pawjgn5",
|
|
102
|
-
"hook_preference_1771934405021_mnhek0x7b",
|
|
103
|
-
"hook_preference_1772633967192_pwhu84pfo",
|
|
104
|
-
"hook_preference_1771112119815_z02zal3z6",
|
|
105
|
-
"hook_preference_1771112104493_d3nz1o2ye",
|
|
106
|
-
"hook_preference_1771112075356_3gh724ucm",
|
|
107
|
-
"hook_preference_1773220761159_igi8x4tax",
|
|
108
|
-
"hook_preference_1773220748369_qpl2lvvpd",
|
|
109
|
-
"hook_preference_1773784604998_geftlce1x"
|
|
22
|
+
"memory_1773999187737_qrdwbas47"
|
|
110
23
|
]
|
|
111
24
|
}
|
|
@@ -334,7 +334,8 @@ class ClaudeRecallCLI {
|
|
|
334
334
|
if (memStats.length > 0) {
|
|
335
335
|
console.log(`── Memory Stats — Top Retrieved (${memStats.length}) ──\n`);
|
|
336
336
|
for (const s of memStats) {
|
|
337
|
-
const
|
|
337
|
+
const total = Math.max(s.times_retrieved, s.times_helpful + s.times_unhelpful);
|
|
338
|
+
const ratio = total > 0 ? Math.min((s.times_helpful / total) * 100, 100).toFixed(0) : '0';
|
|
338
339
|
console.log(` ${s.memory_key}`);
|
|
339
340
|
console.log(` retrieved: ${s.times_retrieved} helpful: ${s.times_helpful} unhelpful: ${s.times_unhelpful} (${ratio}% helpful)`);
|
|
340
341
|
}
|
|
@@ -262,14 +262,28 @@ class MemoryTools {
|
|
|
262
262
|
if (rules.corrections.length > 0) {
|
|
263
263
|
sections.push('## Corrections\n' + rules.corrections.map(m => {
|
|
264
264
|
const val = typeof m.value === 'object' ? (m.value.content || m.value.value || JSON.stringify(m.value)) : m.value;
|
|
265
|
-
|
|
265
|
+
const isPromoted = m.key.startsWith('promoted_') || m.value?.source === 'promotion-engine';
|
|
266
|
+
const evidence = isPromoted && m.value?.evidence_count ? ` (learned from ${m.value.evidence_count} observations)` : '';
|
|
267
|
+
return isPromoted ? `- [promoted lesson] ${val}${evidence}` : `- ${val}`;
|
|
266
268
|
}).join('\n'));
|
|
267
269
|
}
|
|
268
270
|
if (rules.failures.length > 0) {
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
271
|
+
// Separate promoted lessons from regular failures
|
|
272
|
+
const promotedLessons = rules.failures.filter(m => m.key.startsWith('promoted_') || m.value?.source === 'promotion-engine');
|
|
273
|
+
const regularFailures = rules.failures.filter(m => !m.key.startsWith('promoted_') && m.value?.source !== 'promotion-engine');
|
|
274
|
+
if (promotedLessons.length > 0) {
|
|
275
|
+
sections.push('## Promoted Lessons (learned from repeated outcomes)\n' + promotedLessons.map(m => {
|
|
276
|
+
const val = typeof m.value === 'object' ? (m.value.content || m.value.value || JSON.stringify(m.value)) : m.value;
|
|
277
|
+
const evidence = m.value?.evidence_count ? ` (seen ${m.value.evidence_count}x)` : '';
|
|
278
|
+
return `- ${val}${evidence}`;
|
|
279
|
+
}).join('\n'));
|
|
280
|
+
}
|
|
281
|
+
if (regularFailures.length > 0) {
|
|
282
|
+
sections.push('## Failures\n' + regularFailures.map(m => {
|
|
283
|
+
const val = typeof m.value === 'object' ? (m.value.content || m.value.value || JSON.stringify(m.value)) : m.value;
|
|
284
|
+
return `- ${val}`;
|
|
285
|
+
}).join('\n'));
|
|
286
|
+
}
|
|
273
287
|
}
|
|
274
288
|
if (rules.devops.length > 0) {
|
|
275
289
|
sections.push('## DevOps Rules\n' + rules.devops.map(m => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-recall",
|
|
3
|
-
"version": "0.18.
|
|
3
|
+
"version": "0.18.4",
|
|
4
4
|
"description": "Persistent memory for Claude Code with native Skills integration, automatic capture, failure learning, and project scoping via MCP server",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|