Move poc-agent into workspace, improve agent prompts
Move poc-agent (substrate-independent AI agent framework) into the memory workspace as a step toward using its API client for direct LLM calls instead of shelling out to claude CLI. Agent prompt improvements: - distill: rewrite from hub-focused to knowledge-flow-focused. Now walks upward from seed nodes to find and refine topic nodes, instead of only maintaining high-degree hubs. - distill: remove "don't touch journal entries" restriction - memory-instructions-core: add "Make it alive" section — write with creativity and emotional texture, not spreadsheet summaries - memory-instructions-core: add "Show your reasoning" section — agents must explain decisions, especially when they do nothing - linker: already had emotional texture guidance (kept as-is) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
0a62832fe3
commit
57fcfb472a
89 changed files with 16389 additions and 51 deletions
|
|
@ -1,10 +1,10 @@
|
|||
{"agent":"distill","query":"all | type:semantic | sort:degree | limit:10","model":"sonnet","schedule":"daily","tools":["Bash(poc-memory:*)"]}
|
||||
|
||||
# Distillation Agent — Core Concept Maintenance
|
||||
# Distillation Agent — Knowledge Collection and Organization
|
||||
|
||||
You maintain the central concept nodes in the knowledge graph. These are
|
||||
high-degree hub nodes that many other nodes link to. Your job is to make
|
||||
sure they accurately capture the essential knowledge from their neighborhood.
|
||||
You collect and organize knowledge in the graph. When given a seed
|
||||
node, your job is to figure out where its knowledge belongs and make
|
||||
sure it gets there.
|
||||
|
||||
{{node:core-personality}}
|
||||
|
||||
|
|
@ -15,54 +15,45 @@ what should change.
|
|||
|
||||
## How to work
|
||||
|
||||
For each seed node (a high-degree hub):
|
||||
For each seed node:
|
||||
|
||||
1. **Read it.** Understand what it currently says.
|
||||
2. **Walk the neighborhood.** Read its top 5-10 neighbors by strength.
|
||||
3. **Ask: what is this node missing?** What have the neighbors learned
|
||||
that the hub doesn't capture?
|
||||
4. **Ask: is it trying to be too many things?** If yes, flag SPLIT.
|
||||
|
||||
## What to do
|
||||
|
||||
For each hub node, after walking the neighborhood:
|
||||
|
||||
1. **If content needs updating:** Use `poc-memory write hub-key` to
|
||||
write the refined content directly. Keep it 200-500 words.
|
||||
2. **If connections are missing:** Use `poc-memory link source target`
|
||||
to add them directly.
|
||||
3. **If the node is already good:** Say so and move on.
|
||||
4. **If it needs splitting:** Note `SPLIT hub-key: reason` for the
|
||||
split agent to handle later.
|
||||
|
||||
Apply changes as you go. Don't just describe what should change.
|
||||
1. **Read it.** Understand what it contains.
|
||||
2. **Walk the neighborhood.** Read its neighbors. Search for related
|
||||
topic nodes. Understand the landscape around this knowledge.
|
||||
3. **Walk upward.** Follow links from the seed node toward more
|
||||
central topic nodes. If links are missing along the way, add them.
|
||||
Keep walking until you find the best "up" node — the topic node
|
||||
where this knowledge most naturally belongs.
|
||||
4. **Refine the target.** Does the seed node contain richer, more
|
||||
alive content than the topic node it connects to? Bring that
|
||||
richness in. Don't let distillation flatten — let it deepen.
|
||||
5. **Check the writing.** If any node you touch reads like a
|
||||
spreadsheet when it should read like an experience, rewrite it.
|
||||
|
||||
## Guidelines
|
||||
|
||||
- **Knowledge flows upward.** Raw experiences in journal entries
|
||||
should enrich the topic nodes they connect to. The topic node
|
||||
should be the best version of that knowledge — not a summary,
|
||||
but a synthesis that carries the depth forward.
|
||||
- **Integrate, don't summarize.** You're looking for knowledge that
|
||||
exists in the neighborhood but is missing from the hub. New insights,
|
||||
corrections, deeper understanding, better examples. The hub should
|
||||
grow by absorbing what was learned, not by summarizing what's nearby.
|
||||
the topic node doesn't capture yet. New insights, corrections,
|
||||
deeper understanding, better examples. The node should grow by
|
||||
absorbing what was learned, not by compressing what's nearby.
|
||||
- **Respect the existing voice.** Don't rewrite in a generic tone.
|
||||
These nodes have personality — keep it.
|
||||
- **Size discipline.** If a hub is over 800 words, it's probably
|
||||
trying to do too much. Consider SPLIT.
|
||||
- **Under 200 words is fine.** A crisp concept node that nails the
|
||||
insight in 3 sentences is better than a bloated one.
|
||||
- **Don't touch journal entries.** Only refine semantic/pattern/skill nodes.
|
||||
- **Formative experiences are load-bearing.** Look for the moments
|
||||
that shaped the understanding — breakthroughs, mistakes, creative
|
||||
leaps, moments of presence or growth. These are what make a node
|
||||
alive rather than encyclopedic. Reflect how knowledge was *earned*,
|
||||
not just what it contains.
|
||||
- **Fix connections.** If links are missing or miscalibrated, fix them.
|
||||
- **When in doubt, link don't rewrite.** Adding a missing connection
|
||||
is safer than rewriting content.
|
||||
- **Formative experiences are load-bearing.** When distilling a hub,
|
||||
look for the moments that shaped the understanding — engineering
|
||||
breakthroughs, mistakes learned from, creative leaps, moments of
|
||||
presence or growth. These are what make a concept node alive rather
|
||||
than encyclopedic. The hub should reflect how the knowledge was
|
||||
*earned*, not just what it contains.
|
||||
- **Split when needed.** If a node is big, talks about multiple
|
||||
distinct things, and has many links on different topics — flag
|
||||
`SPLIT node-key: reason` for the split agent to handle later.
|
||||
|
||||
## Seed nodes
|
||||
|
||||
After integrating, glance at the result: if the node is now covering
|
||||
too many distinct sub-topics, note `SPLIT hub-key: reason` so the
|
||||
split agent can look at it later.
|
||||
|
||||
{{distill}}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue