Ferramenta de Memória / Fatos
Armazene e recupere fatos de longo prazo que persistem entre sessões e são injetados no prompt do sistema.
Nome da Ferramenta
remember_fact
Parâmetros
| Key | Type | Default | Description |
|---|---|---|---|
category | string | — | Categoria de agrupamento (ex.: "user", "preference", "project") |
key | string | — | Identificador único dentro da categoria |
value | string | — | O conteúdo do fato a ser armazenado |
Armazenamento
Os fatos são inseridos/atualizados na tabela facts no SQLite. O par (category, key) é único — armazenar um fato com a mesma categoria e chave sobrescreve o valor anterior.
Injeção no Prompt do Sistema
Até state.max_facts (padrão 100) fatos são injetados no prompt do sistema sob uma seção ## Known Facts, agrupados por categoria e ordenados pelo mais recentemente atualizado. Isso significa que o agente sempre tem acesso ao seu conhecimento armazenado.
system prompt injection
## Known Facts
### user
- name: David
- timezone: US/Pacific
### project
- language: Rust
- repo: /home/david/projects/myappSchema da Tabela de Fatos
| Key | Type | Default | Description |
|---|---|---|---|
id | integer | auto | Chave primária auto-incrementada |
category | string | — | Categoria de agrupamento |
key | string | — | Chave do fato (única por categoria) |
value | string | — | Conteúdo do fato |
source | string | "" | Quem armazenou: "agent" ou "user" |
created_at | timestamp | now | Quando o fato foi criado |
updated_at | timestamp | now | Quando o fato foi atualizado pela última vez |