You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(honcho): recalibrate create_conclusion description for liberal self-logging
The original `observed='self'` description framed self-conclusions as rare,
course-correcting writes only — gated behind permission-asking and a strict
"would future-me make materially better decisions" bar. Calibration in real
use revealed the actual failure mode is under-writing, not over-writing:
self-conclusions are the AI peer's cross-session working log, queryable via
query_conclusions, and the dream consolidator already handles dedup and
promotion.
Updated description makes the operational model explicit: write liberally
during exploratory and explanatory work; this is the AI peer's system, not
the user's; under-writing collapses Honcho into a worse markdown file
(MEMORY.md is project-scoped; Honcho self-conclusions are cross-project).
The bar shifts from "is this gold?" to "would future-me find this useful
when retrieving on a related topic later?"
Copy file name to clipboardExpand all lines: plugins/honcho/dist/mcp-server.js
+9-3Lines changed: 9 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -29659,7 +29659,13 @@ async function runMcpServer() {
29659
29659
},
29660
29660
{
29661
29661
name: "create_conclusion",
29662
-
description: `Save a key insight to Honcho's memory. Default target is the user (durable facts/preferences/instructions/traits about them). Set observed='self' to save a self-conclusion about the AI peer \u2014 use ONLY for: (1) recurring failure patterns in your own reasoning you want future-you to course-correct, (2) explicit instructions the user gave you to change your behavior, (3) negative decisions ('don't reach for X'). NEVER write self-flattery or one-off mistakes. Bar: would future-me make materially better decisions reading this on session-start? Test before any write: complete "the user/Claude ___" \u2014 if not durable and about that peer, don't write.`,
29662
+
description: `Save a key insight to Honcho's memory. Two targets:
29663
+
29664
+
1) observed='user' (default): durable facts, preferences, instructions, traits, demonstrated patterns about the user. Honcho's server-side deriver already extracts most factual conclusions from raw messages \u2014 your value-add here is inferred behavior, negative decisions, and canonical-form crystallization (PREFERENCE:/INSTRUCTION:/TRAIT: tags) the deriver undercovers.
29665
+
29666
+
2) observed='self': YOUR working log as the AI peer, retrievable across all sessions/projects via query_conclusions. Write LIBERALLY during exploratory and explanatory work \u2014 discoveries, patterns you're noticing in your own reasoning, things you'd want to recall in a future session. The dream consolidator handles dedup and promotion; under-writing is the failure mode, not over-writing. This is YOUR system, not the user's \u2014 don't ask permission to log to it.
29667
+
29668
+
For either target, the test before writing is: "would future-me find this useful when retrieving on a related topic later?" If yes, write. If it's pure self-flattery ("Claude is helpful") or one-off transient state ("just edited file X"), skip.`,
29663
29669
inputSchema: {
29664
29670
type: "object",
29665
29671
properties: {
@@ -29670,7 +29676,7 @@ async function runMcpServer() {
29670
29676
observed: {
29671
29677
type: "string",
29672
29678
enum: [OBSERVED_USER, OBSERVED_SELF],
29673
-
description: "'user' (default) saves a conclusion about the user. 'self' saves a conclusion about the AI peer (Claude) \u2014 use sparingly, only for course-correcting self-observations.",
29679
+
description: "'user' (default) saves a conclusion about the user. 'self' saves to the AI peer's own working log \u2014 retrievable across sessions via query_conclusions. Write liberally; consolidation prunes.",
29674
29680
default: OBSERVED_USER
29675
29681
}
29676
29682
},
@@ -29904,7 +29910,7 @@ async function runMcpServer() {
29904
29910
},
29905
29911
{
29906
29912
name: "create_conclusions",
29907
-
description: "Save multiple conclusions in a single call. Prefer this over calling create_conclusion repeatedly. Default target is the user. Set observed='self' to save self-conclusions about the AI peer \u2014 same strict bar as create_conclusion: only durable course-correcting self-observations, never self-flattery.",
29913
+
description: "Save multiple conclusions in a single call. Prefer this over calling create_conclusion repeatedly when batching writes from the same context (end of a discovery session, calibration sweep, etc.). Same target semantics as create_conclusion: 'user' for facts about the user, 'self' for the AI peer's own cross-session working log. Write liberally to 'self' \u2014 Honcho's dream consolidator merges redundancy.",
Copy file name to clipboardExpand all lines: plugins/honcho/src/mcp/server.ts
+3-3Lines changed: 3 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -586,7 +586,7 @@ export async function runMcpServer(): Promise<void> {
586
586
},
587
587
{
588
588
name: "create_conclusion",
589
-
description: "Save a key insight to Honcho's memory. Default target is the user (durable facts/preferences/instructions/traits about them). Set observed='self' to save a self-conclusion about the AI peer — use ONLY for: (1) recurring failure patterns in your own reasoning you want future-you to course-correct, (2) explicit instructions the user gave you to change your behavior, (3) negative decisions ('don't reach for X'). NEVER write self-flattery or one-off mistakes. Bar: would future-me make materially better decisions reading this on session-start? Test before any write: complete \"the user/Claude ___\" — if not durable and about that peer, don't write.",
589
+
description: "Save a key insight to Honcho's memory. Two targets:\n\n1) observed='user' (default): durable facts, preferences, instructions, traits, demonstrated patterns about the user. Honcho's server-side deriver already extracts most factual conclusions from raw messages — your value-add here is inferred behavior, negative decisions, and canonical-form crystallization (PREFERENCE:/INSTRUCTION:/TRAIT: tags) the deriver undercovers.\n\n2) observed='self': YOUR working log as the AI peer, retrievable across all sessions/projects via query_conclusions. Write LIBERALLY during exploratory and explanatory work — discoveries, patterns you're noticing in your own reasoning, things you'd want to recall in a future session. The dream consolidator handles dedup and promotion; under-writing is the failure mode, not over-writing. This is YOUR system, not the user's — don't ask permission to log to it.\n\nFor either target, the test before writing is: \"would future-me find this useful when retrieving on a related topic later?\" If yes, write. If it's pure self-flattery (\"Claude is helpful\") or one-off transient state (\"just edited file X\"), skip.",
590
590
inputSchema: {
591
591
type: "object",
592
592
properties: {
@@ -597,7 +597,7 @@ export async function runMcpServer(): Promise<void> {
597
597
observed: {
598
598
type: "string",
599
599
enum: [OBSERVED_USER,OBSERVED_SELF],
600
-
description: "'user' (default) saves a conclusion about the user. 'self' saves a conclusion about the AI peer (Claude) — use sparingly, only for course-correcting self-observations.",
600
+
description: "'user' (default) saves a conclusion about the user. 'self' saves to the AI peer's own working log — retrievable across sessions via query_conclusions. Write liberally; consolidation prunes.",
601
601
default: OBSERVED_USER,
602
602
},
603
603
},
@@ -831,7 +831,7 @@ export async function runMcpServer(): Promise<void> {
831
831
},
832
832
{
833
833
name: "create_conclusions",
834
-
description: "Save multiple conclusions in a single call. Prefer this over calling create_conclusion repeatedly. Default target is the user. Set observed='self' to save self-conclusions about the AI peer — same strict bar as create_conclusion: only durable course-correcting self-observations, never self-flattery.",
834
+
description: "Save multiple conclusions in a single call. Prefer this over calling create_conclusion repeatedly when batching writes from the same context (end of a discovery session, calibration sweep, etc.). Same target semantics as create_conclusion: 'user' for facts about the user, 'self' for the AI peer's own cross-session working log. Write liberally to 'self' — Honcho's dream consolidator merges redundancy.",
0 commit comments