@costrict/cosknow
v1.0.1
Published
Knowledge base command toolkit for AI agents
Downloads
414
Readme
CosKnow
CosKnow 是一个面向 AI Agent 的知识库命令工具包。它把知识库生成流程拆成可复用的 Markdown 命令、提示词模板和本地工具,支持用 CLI 查看、渲染、安装和校验这些资源。
当前仓库主要提供两类能力:
- 命令仓库:
commands/下维护知识库生成相关命令模板 - 运行工具:
src/下提供 CLI、安装器、模板渲染和文档 lint 能力
适用场景
- 为 AI Agent 准备一套可安装的知识库命令集
- 在本地查看某个命令的描述、参数和依赖关系
- 预渲染 prompt 或命令模板,减少手工替换变量
- 将命令集安装到 Roo Code 或自定义目录
- 对生成后的知识库文档做基础 lint 检查
内置命令
| 命令 | 说明 |
| --- | --- |
| kb-pre | 项目预分析 |
| kb-init | 知识库完整生成(多Agent协调) |
| kb-eval | 知识库质量评估(多Agent协调模式) |
| kb-optimize | 知识库质量修复(基于评估报告) |
| kb-gen | 一键流水线(kb-pre -> kb-init -> kb-eval -> kb-optimize) |
| kb-update | 基于 Git 差异的知识库增量更新 |
目录结构
CosKnow/
├── commands/ # 知识库命令模板
├── prompts/ # 可独立渲染的提示词模板
├── linter/ # 知识库文档校验脚本
├── src/ # CLI 与库代码
├── scripts/ # 发布脚本
├── test/ # bun:test 测试
└── docs/ # 计划与排障记录环境要求
- Node.js 18+
- Bun 1.3+(开发、测试、构建时需要)
- 一个支持 npm 协议的包源
发布后的 CLI 会优先使用 Bun;如果本机没有 Bun,则回退到 Node.js 执行
dist/下的编译产物。
快速开始
1. 安装依赖
bun install2. 查看可用命令
bun run dev list3. 查看某个命令详情
bun run dev show kb-gen4. 渲染命令模板
bun run dev render kb-gen --输入目录 ./src --输出目录 ./doc/kb5. 渲染 prompt 模板
bun run dev prompt "01-仓库概览.md" --输出目录 ./doc/kb6. 安装命令集到 Roo Code
bun run dev install --target roo-commands7. 安装命令集到自定义目录
bun run dev install --path ./.cosknow/commands --only kb-gen,kb-pre8. 校验生成后的知识库文档
bun run dev lint ./doc/kb/仓库概览.md --project-dir .CLI 用法
cosknow list
cosknow show <name>
cosknow render <name> [--key value...]
cosknow prompt <template> [--key value...]
cosknow lint <file> --project-dir <dir>
cosknow install --path <dir> [--only cmd1,cmd2]
cosknow install --target roo-commands
cosknow uninstall --path <dir>
cosknow installed子命令说明
list:列出全部命令模板show:查看命令元数据,包括参数、依赖和关联 promptsrender:渲染命令正文中的占位符prompt:渲染prompts/下的模板lint:检查文档中的路径、Mermaid 片段等常见问题install:把命令模板和资源复制到指定目录uninstall:按安装清单删除 CosKnow 管理的文件installed:显示已检测到的安装位置
作为库使用
import { createRegistry, install } from '@costrict/cosknow'
const registry = createRegistry()
console.log(registry.listCommands().map((command) => command.name))
const rendered = registry.renderPrompt('01-仓库概览.md', {
输出目录: './doc/kb',
})
console.log(rendered)
await install({
target: 'custom',
output: './.cosknow/commands',
only: ['kb-gen'],
})当前导出的主要 API 包括:
createRegistry()/clearCache()install()/uninstall()render()resolveTarget()/BUILT_IN_TARGETSloadCommand()/loadPrompt()
安装目标
内置安装目标定义在 src/targets.ts:
roo-commands:安装到~/.roo/commandscustom:安装到调用时传入的目录
安装时还会一起复制:
prompts/下的 Markdown 模板linter/kb-linter.js.cosknow-manifest.json安装清单
开发命令
bun run dev # 运行 CLI
bun test # 运行测试
bun run build # 构建 dist/
npm run release # 选择版本号、生成 changelog、构建、发布、打 tag、推送注意事项
render和prompt的变量替换基于模板里的占位符名,而不是命令展示出来的参数名。例如kb-gen模板里要传--输入目录和--输出目录,不是--input和--output。install --target roo-commands会把资源写入用户目录下的~/.roo/commands。npm run release会执行git add -A、提交、打 tag 并推送,运行前应确认工作区内容可发布。
License
仓库内暂未声明独立许可证文件;如需对外发布,请先补充明确的 License 策略。
