Compare commits

...

1 Commits
1.6.7 ... 1.6.8

Author SHA1 Message Date
4203cb34ef Better fact organization
All checks were successful
Publish Library / Build NPM Project (push) Successful in 45s
Publish Library / Tag Version (push) Successful in 8s
2026-09-14 12:22:49 -04:00
2 changed files with 18 additions and 10 deletions

View File

@@ -1,6 +1,6 @@
{
"name": "@ztimson/ai-utils",
"version": "1.6.7",
"version": "1.6.8",
"description": "AI Utility library",
"author": "Zak Timson",
"license": "MIT",

View File

@@ -365,15 +365,23 @@ ${m.content}
- NEVER extract greetings, pleasantries, or anything the assistant itself said
- Extract the final/end state, not deltas
Path assignment rules:
- Reuse existing node names whenever possible, including when the subject is an alias/nickname of an existing node (e.g. "Rob" referring to an existing "People/Robert")
- Documents should be grouped and named by the root subject
- Person → People/Name
- Project → Projects/Name
- Concept → Concepts/Name
- A bug report, its investigation, should be nested and attached to the same root subject node
- Tickets/one-off tasks → file under the project/name/component they belong to
- Only create a new top-level node when the fact belongs to a genuinely new subject (person/project/concept)\`
Path assignment (entity) rules:
- Use the owning entity of the fact (even if implied): "New bug on project 51 -> Projects/51"
- When multiple facts relate to the same entity, pick a primary owner and wikilink related entities
- Reuse existing entities when the owner already has a node
- Always group under consistent entity roots (always plural):
- Projects/[Name] for all initiatives
- People/[Name] for all individuals
- History/[Name] for all historical figures/events
- Science/[Name] for all scientific concepts
- Child entities nest under their parent entity:
- Projects/51/Memory System, Projects/51/Bug-XYZ, not Bugs/51
- Science/AI/Model-X, not Model-X/AI
Wikilink rules:
- Use [[WikiLinks]] to connect related entities (e.g., [[Projects/51]], [[People/Robert]])
- Only link specific, existing or implied entity paths — skip generic terms
- Don't over-link: each link should add clarity or context, not noise
Available nodes:
${this.listNodes(store.list).map(n => `- ${n.name}: ${n.description}`).join('\n') || 'None yet.'}