SuperAPI AI Directory

memorizer

Office & productivity

View repository

Updated 10-16 07:24

About this skill

A three-layer memory system that provides context for the current task and consolidates knowledge.

Memory Layers

Layer File Content Format Capacity
User Preferences ~/.talos/profile.md Cross-project coding style and collaboration habits Plain text bullet points ≤50 lines
Project Hot Memory wiki/hot.md Key constraints, major pitfalls, strong preferences Plain text bullet points ≤100 lines
Project Knowledge Base wiki/<category>/<name>.md Domain knowledge, reusable patterns, technology choices Obsidian markdown([[wikilinks]]) Unlimited
Change Log wiki/log.md Timeline record of memory changes `## [YYYY-MM-DD] Operation Title`

When full, delete the unimportant ones to make room for new content.

Reading Memory

Read the following files in order (skip if they do not exist):

  1. ~/.talos/profile.md
  2. wiki/hot.md
  3. wiki/INDEX.md — Scan the full index text, locate entries relevant to the current task, and if necessary read the corresponding wiki/<type>/<name>.md pages in depth

Extract context relevant to the current task and refer to it during work.

Writing Memory

After completing a relatively complete task,explicitly determinewhether memory needs to be written (the conclusion may be "no need to write"). Write only if one of the following conditions is met:

  • Involves non-obvious architectural decisions or constraints (the why is not intuitive)
  • Discovered pitfalls / anti-patterns / landmines that were stepped on (others will step on them again)
  • Project-specific reusable patterns (not general best practices)
  • Preferences or corrections explicitly expressed by the user
  • Key changes in project structure
  • Valuable analysis or synthesis of existing knowledge in the wiki (query backflow)

After writing, append an entry to wiki/log.md。

INDEX.md Maintenance Rules

wiki/INDEX.md is the table of contents for the knowledge base. Each entry: link + one-line summary + optional metadata (date, number of sources).

The index is grouped by semantic type, and each type corresponds to a subdirectory under the wiki directory:

Type Directory Content
entities wiki/entities/ Concrete entities such as people, tools, libraries, systems, etc.
concepts wiki/concepts/ Abstract concepts, patterns, methodologies, design principles
decisions wiki/decisions/ Architecture Decision Records (ADRs) and rationale for technology choices
sources wiki/sources/ Summaries of external sources such as documents, articles, papers, etc.

When writing/updating knowledge base pages, maintain INDEX.md at the same time:

  • Add page → insert an entry under the corresponding type group
  • Update page → update the summary (if changed)
  • Delete page → remove the corresponding entry

What Should Not Be Recorded

  • Routine implementation details that any competent developer knows
  • Content that can be inferred from code / git history
  • One-off debugging details (unless they reveal a systemic problem)
  • General knowledge unrelated to the project
  • Pure factual statements (without why or lessons learned)

Lint (periodic maintenance)

When the user requests it or after a long interval, check the knowledge base health:

  • Whether there are contradictions between pages (different pages record conflicting information)
  • Outdated content (conclusions that have been overturned by code changes)
  • Orphan pages (no other pages link to them)
  • Pages missing from INDEX.md or links pointing to deleted pages
  • Important concepts mentioned multiple times but lacking a standalone page

When problems are found, fix them and append a lint entry to wiki/log.md。