Token导航 LogoToken导航TokenDH.com
Pi Kota logo
AI代理未说明官方级别未说明来源级核验

Pi Kota

MCP Server

pi-kota是一款为TypeScript和JavaScript代码库提供持久化、依赖感知的智能编码助手,通过KotaDB实现依赖图查询、代码搜索和变更影响分析等功能,有效管理上下文窗口。

工具数

6

提示词数

0

GitHub Stars

0

资源数

0
上下文管理TypeScriptAI代理

安装说明

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

作者 / 组织

coctostan

提供方

coctostan

最后核验

2026/5/17 20:22

快速接入

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

详细介绍

pi-kota banner

首都

不会占用上下文窗口的代码智能。

______________________________________________________________________

✨ 它做什么

问题皮科塔的回答
代理反复读取大文件以回答“什么取决于X?”kota_deps --来自持久索引的即时依赖图
30轮会话因过时的工具输出而膨胀上下文修剪删除了旧的有效载荷,保留了意义+再水合路径
影响分析要求代理手动跟踪导入kota_impact --更改影响摘要,固定以使其在修剪后仍能存活
大型工具结果破坏了上下文预算自动截断+blob缓存——可按需恢复完整输出

简短版本

KotaDB = persistent code index (deps, symbols, usages, impact)
pi-kota = thin wrapper + context governor (bounded output, pruning, blob cache)

您可以对代码库进行快速、有界的查询,而不会在对话中积累原始文件转储。

______________________________________________________________________

🔧 工具

六个精心策划的工具,默认情况下所有输出都有限制:

工具它做什么
kota_index索引或重新索引当前存储库(无提示)
kota_search代码搜索-- paths, compact,或 snippet 输出模式
kota_deps依赖关系图查询(依赖关系、依赖关系或两者)
kota_usages查找整个仓库中某个符号的所有用法
kota_impact分析变更影响——风险面、受影响的文件、推荐的测试
kota_task_context总结一组文件的deps+影响(非常适合任务规划)

⌨️ 命令

命令描述
/kota status显示进程状态、仓库根、索引状态、配置源
/kota index触发器索引(如果启用,则要求确认)
/kota evict-blobs清除旧的/超大的blob缓存条目(尽最大努力)
/kota restart重置KotaDB连接(下一个工具调用重新连接)
/kota reload-config从磁盘重新加载配置

______________________________________________________________________

🧹 上下文治理

pi-kota通过两层防止上下文膨胀:

1.LLM上下文修剪 (context 事件)

  • 保持最后N圈不变(默认值:2)
  • 年长的 read, bash,以及 kota_search 结果被紧凑的补液指针所取代
  • 自适应模式在令牌使用率攀升时加强修剪

2.刀具结果截断 (tool_result 事件)

  • 大的 kota_* 输出被截断为 maxToolChars
  • 完整输出已保存到blob缓存(~/.pi/cache/pi-kota/blobs/)
  • 截断的恢复结果中包含Blob ID

______________________________________________________________________

📦 先决条件

pi-kota 通过 Bun 生成 KotaDB:

bun --version    # required

npm install 运行非阻塞Bun可用性检查(scripts/check-bun.js)如果Bun缺失,则打印PATH引导。

Bun PATH故障排除

如果启动失败,则:

pi-kota: 'bun' not found on PATH

安装Bun并确保您的shell PATH包含Bun的bin目录(通常 ~/.bun/bin).

______________________________________________________________________

🚀 安装

作为pi包(推荐)

# Global install (default) — available in all pi projects
pi install git:github.com/coctostan/pi-kota

# Project-local install — only for the current repo (writes to .pi/settings.json)
pi install -l git:github.com/coctostan/pi-kota

默认情况下, pi install全球 并将该包添加到 ~/.pi/agent/settings.json. 使用 -l 为了一个 项目本地 安装(将其添加到 .pi/settings.json).

对于可复制的安装,您可以选择固定到git标签(或提交SHA),例如:

pi install -l git:github.com/coctostan/pi-kota@v0.1.0

npm发布后,您还可以按包名安装:

pi install pi-kota

您还可以手动编辑设置文件:

{
  "packages": ["git:github.com/coctostan/pi-kota"]
}

本地开发

克隆仓库并安装依赖项:

git clone https://github.com/coctostan/pi-kota.git
cd pi-kota
npm install

然后将pi指向项目中要使用它的扩展入口点(例如在 .pi/settings.json):

{
  "extensions": ["../pi-kota/src/index.ts"]
}

______________________________________________________________________

⚙️ 配置

配置文件是分层的——全局默认值,然后是项目覆盖:

范围路径
全球~/.pi/agent/pi-kota.json
项目.pi/pi-kota.json

默认配置

{
  "kota": {
    "toolset": "core",
    "autoContext": "off",
    "confirmIndex": true,
    "connectTimeoutMs": 10000,
    "command": "bun",
    "args": ["x", "kotadb@next", "--stdio", "--toolset", "core"]
  },
  "prune": {
    "enabled": true,
    "keepRecentTurns": 2,
    "maxToolChars": 1200,
    "adaptive": true
  },
  "blobs": {
    "enabled": true,
    "dir": "~/.pi/cache/pi-kota/blobs",
    "maxAgeDays": 7,
    "maxSizeBytes": 52428800
  },
  "log": {
    "enabled": false,
    "path": "~/.pi/cache/pi-kota/debug.jsonl"
  }
}

关键选项

选项默认值描述
kota.autoContext"off"自动注入任务上下文: "off", "onPaths" (提示中有1-3个文件路径), "always"
kota.confirmIndextrue运行时索引前提示 /kota index (以及其他基于确认的流程)。注: kota_index 工具不提示。
kota.connectTimeoutMs10000Kota MCP启动的连接超时(毫秒)
prune.keepRecentTurns2在修剪之前保持完好无损
prune.maxToolChars1200截断前每个工具结果的最大字符数
prune.adaptivetrue当上下文使用率高时,加强修剪
blobs.enabledtrue将完整截断的输出保存到blob缓存
blobs.dir"~/.pi/cache/pi-kota/blobs"Blob缓存目录
blobs.maxAgeDays7清除比此旧的斑点(由使用 /kota evict-blobs)
blobs.maxSizeBytes52428800清除最旧的blob,直到缓存小于此大小(由使用 /kota evict-blobs)
log.enabledfalse启用调试JSONL日志记录(尽最大努力,永远不会使扩展崩溃)
log.path"~/.pi/cache/pi-kota/debug.jsonl"调试日志文件路径

______________________________________________________________________

🛠️ 发展

npm install
npm test
npm run test:e2e
npm run typecheck

建筑

src/
├── index.ts          # Extension entry — events, commands, tool registration
├── runtime.ts        # Runtime state + path normalization
├── config.ts         # Layered config loading (global + project)
├── prune.ts          # Context pruning logic + adaptive settings
├── autocontext.ts    # Auto task-context injection rules
├── blobs.ts          # Blob cache writes
├── paths.ts          # File path extraction from prompts
├── text.ts           # Text truncation utilities
├── toolResult.ts     # Tool result truncation decisions
└── kota/
    ├── mcp.ts        # MCP stdio client (KotaDB connection)
    ├── tools.ts      # Budgeted tool calls + name mapping
    ├── schemas.ts    # TypeBox schemas for kota_* tool params
    └── ensure.ts     # Index confirmation flow

设计参考

docs/design.md 设计背景(草稿;README+ src/* 是出货行为的真实来源)。

______________________________________________________________________

🙏 归因

pi kota建在 城市 数据 库,由创建 尼科·贝隆非常感谢Nico设计和维护为该扩展提供动力的代码智能引擎。

______________________________________________________________________

📄 许可证

麻省理工学院——见 许可证 了解详情。

目录标签

目录标签

上下文管理TypeScriptAI代理代码智能本地部署依赖分析TypeScript工具JavaScript工具

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP