Token导航 LogoToken导航TokenDH.com
Kiro Total Recall logo
搜索检索stdio官方级别未说明来源级核验

Kiro Total Recall

MCP Server

Kiro Total Recall 是一款为 Kiro 提供对话记忆和语义搜索功能的工具,能够跨会话和项目索引并搜索历史对话内容。

工具数

4

提示词数

0

GitHub Stars

1

资源数

0
搜索Python开发工具

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

danilop

提供方

danilop

最后核验

2026/5/17 20:19

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uvx kiro-total-recall

详细介绍

Kiro全面召回

曾经告诉Kiro“就像我们昨天讨论的那样”,但后来才意识到。..它不知道吗?

全面回忆 给了基洛它所缺失的记忆。

问题

  1. 会话是隔离的:每次Kiro课程都会重新开始。昨天的架构讨论?跑了。
  2. 项目不共享知识:您的偏好(测试风格、包管理器、模式)在项目中不会被记住。
  3. CLI和IDE是分开的:Kiro CLI中的对话无法连接到Kiro IDE。

Total Recall索引每个Kiro对话并提供语义搜索。 按以下方式查找讨论 *意义*不仅仅是关键词。

快速入门

作为Kiro Power(推荐,仅限IDE)

  1. 在Kiro IDE中:电源面板→ 从GitHub添加电源
  2. 输入: https://github.com/danilop/kiro-total-recall
  3. 当你提到“回忆”、“记住”或“过去的对话”时,电源会自动激活

手动MCP设置(CLI和IDE)

添加到 ~/.kiro/settings/mcp.json (此配置由CLI和IDE共享):

{
  "mcpServers": {
    "total-recall": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/danilop/kiro-total-recall", "kiro-total-recall"]
    }
  }
}

重新启动Kiro CLI/IDE 添加后。MCP服务器仅在启动时加载。

验证安装

在Kiro CLI中: /mcp 应列出 total-recall

在Kiro IDE中:检查MCP服务器面板

运作原理

┌─────────────────────────────────────────────────────────────────────────┐
│                         Kiro CLI & IDE                                  │
│  ┌──────────────────────────┐    ┌──────────────────────────────────┐   │
│  │  CLI: SQLite DB          │    │  IDE: .chat JSON files           │   │
│  │  ~/Library/App Support/  │    │  ~/Library/App Support/Kiro/     │   │
│  │  kiro-cli/data.sqlite3   │    │  User/globalStorage/.../*.chat   │   │
│  └────────────┬─────────────┘    └─────────────┬────────────────────┘   │
│               └────────────────┬───────────────┘                        │
│                                ▼                                        │
│                    ┌───────────────────────┐                            │
│                    │   Unified Loader      │                            │
│                    └───────────┬───────────┘                            │
└────────────────────────────────┼────────────────────────────────────────┘
                                 ▼
┌─────────────────────────────────────────────────────────────────────────┐
│                      Kiro Total Recall                                  │
│  ┌─────────┐    ┌──────────┐    ┌─────────┐    ┌────────────────────┐   │
│  │ loader  │───▶│ indexer  │───▶│  query  │───▶│  MCP server        │   │
│  │ CLI+IDE │    │ 384-dim  │    │ cosine  │    │  4 search tools    │   │
│  └─────────┘    └────┬─────┘    └─────────┘    └────────────────────┘   │
│                      ▼                                                  │
│         ~/.cache/kiro-total-recall/embeddings.pkl                       │
└─────────────────────────────────────────────────────────────────────────┘

索引:快速搜索

首次搜索时,全面召回:

  1. 负载 来自CLI(SQLite)和IDE(.chat文件)的所有消息
  2. 派遣 每条消息使用 全迷你LM-L6-v2 (384维向量)
  3. 缓存 嵌入到 ~/.cache/kiro-total-recall/embeddings.pkl

后续搜索速度很快,因为:

  • 指纹识别:仅在对话发生变化时重建
  • 增量更新:嵌入新消息;从缓存加载的现有嵌入
  • 基于哈希的重复数据删除:相同的文本=相同的嵌入(无需重新计算)

特性

  • 语义搜索:按含义查找,而不仅仅是关键字
  • 双源:搜索CLI和IDE对话
  • 上下文窗口:查看每场比赛的周边消息
  • 日期筛选:按时间范围过滤(ISO 8601)
  • 增量索引:仅处理新对话
  • 内存限制:可配置的RAM使用率(默认值:RAM的1/3)

MCP工具

工具范围用例
search_project_history当前工作区中的错误、决策 *这* 代码库
search_global_history所有工作区首选项、模式 *全部* 工作
search_cli_history仅限CLIKiro CLI对话
search_ide_history仅限IDEKiro IDE对话

参数

所有工具均接受:

参数默认值说明
query必填要搜索的关键字或句子
afternone筛选到此日期(含)当天/之后的邮件。ISO 8601格式。
beforenone筛选到此日期之前的邮件(不包括)。ISO 8601格式。
context_size3每场比赛前后的消息
threshold0.2最小相似性(0-1,较高=更严格)
max_results10返回的最大结果
offset0跳过结果(用于分页)

日期筛选示例

# Messages from a specific day
search_project_history(query="auth bug", after="2025-01-15", before="2025-01-16")

# Messages from the past week
search_project_history(query="refactoring", after="2025-01-25")

# Messages in January
search_project_history(query="database", after="2025-01-01", before="2025-02-01")

响应结构

{
  "results": [
    {
      "matched_message": {
        "role": "assistant",
        "content": "To fix the authentication bug...",
        "timestamp": "2025-01-15T10:30:00",
        "workspace": "/Users/dev/myproject",
        "session_id": "abc123",
        "uuid": "msg-456",
        "source": "cli"
      },
      "score": 0.8542,
      "context": [
        {"role": "user", "content": "How do I fix this auth bug?", "timestamp": "...", "is_match": false},
        {"role": "assistant", "content": "To fix the authentication bug...", "timestamp": "...", "is_match": true}
      ]
    }
  ],
  "query": "authentication bug fix",
  "total_matches": 25,
  "offset": 0,
  "has_more": true,
  "hint": "Showing 1-10 of 25 matches. Use offset: 10 for more."
}

用法示例

自然地问:

"How did we fix that auth bug?"
"What did we discuss about the database schema?"
"What's my usual approach to error handling?"
"Find our React component discussions from last week"

或者直接使用工具:

search_project_history(query="authentication bug fix")
search_global_history(query="React component patterns")
search_cli_history(query="deployment", after="2025-01-01")

配置

创建 ~/.config/kiro-total-recall/config.toml 自定义:

[sources.cli]
enabled = true
paths = [
    "~/Library/Application Support/kiro-cli/data.sqlite3",
    "~/.local/share/kiro-cli/data.sqlite3",
    "~/AppData/Roaming/kiro-cli/data.sqlite3",
]

[sources.ide]
enabled = true
patterns = [
    "~/Library/Application Support/Kiro/User/globalStorage/kiro.kiroagent/*/*.chat",
    "~/.config/Kiro/User/globalStorage/kiro.kiroagent/*/*.chat",
    "~/AppData/Roaming/Kiro/User/globalStorage/kiro.kiroagent/*/*.chat",
]

[embedding]
model = "all-MiniLM-L6-v2"
cache_dir = "~/.cache/kiro-total-recall"

[search]
default_threshold = 0.2
default_max_results = 10
default_context_window = 3

[memory]
fraction = 0.33  # Use 1/3 of RAM
# limit_mb = 512  # Or set explicit limit

内存管理

内存索引大小的总召回限制,以防止内存过度使用。默认情况下,它使用1/3的物理RAM。当达到限制时,最旧的会话将被排除在索引之外(最新的会话将保留)。

变量描述默认值
KIRO_RECALL_MEMORY_LIMIT_MB覆盖内存限制(MB)1/3 RAM
KIRO_RECALL_NO_MEMORY_LIMIT设置为任何值以禁用限制-

测试

# Test server starts
uvx kiro-total-recall
# Ctrl+C to exit

# Test search directly
uv run python -c "
from kiro_total_recall.query import search_conversations
result = search_conversations(query='bug fix', max_results=3)
print(f'Found {result.total_matches} matches')
"

项目结构

kiro-total-recall/
├── POWER.md                      # Kiro Power manifest + steering
├── mcp.json                      # MCP server config for Power
├── config.default.toml           # Default configuration
├── src/kiro_total_recall/
│   ├── server.py                 # FastMCP server, tool definitions
│   ├── query.py                  # Search engine, deduplication
│   ├── indexer.py                # Embedding, caching, fingerprinting
│   ├── loader.py                 # Unified loader (CLI + IDE)
│   ├── cli_loader.py             # SQLite parsing for CLI
│   ├── ide_loader.py             # JSON parsing for IDE .chat files
│   ├── config.py                 # Configuration management
│   └── models.py                 # Pydantic data models
├── pyproject.toml
└── LICENSE

技术细节

组件技术
嵌入模型全迷你LM-L6-v2 (384个维度)
矢量搜索通过NumPy点积进行余弦相似度
缓存格式带文件锁定的Python pickle
MCP框架快速MCP
包管理器紫外线

许可证

MIT许可证

目录标签

目录标签

搜索Python开发工具语义搜索本地部署对话记忆跨会话搜索Kiro插件

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

4

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP