v1.1.0
Released: March 21, 2026
Highlights
- Level-based logger — standard log levels (
error,warn,info,debug,trace) controlled byTOOLPACK_SDK_LOG_LEVELorlogging.level; deprecatedTOOLPACK_SDK_LOG_VERBOSEremoved PersistentKnowledgeProvider— disk-backed knowledge storage withreSyncflag to skip re-embedding when cached chunks exist- Configurable tool result truncation —
tools.resultMaxCharsintoolpack.config.json(default 20k chars) - Knowledge embedding progress —
onEmbeddingProgresscallback with 10% milestones during sync
Breaking changes
TOOLPACK_SDK_LOG_VERBOSEenv var removed — switch toTOOLPACK_SDK_LOG_LEVELorlogging.levellogging.verboseoption removed fromToolpackConfigTOOLPACK_SDK_TOOL_RESULT_MAX_CHARSenv var removed — usetools.resultMaxCharsin config instead
toolpack-sdk
Level-based logger
import { logInfo, logDebug, logWarn, logError } from 'toolpack-sdk';
// Or configure via env
process.env.TOOLPACK_SDK_LOG_LEVEL = 'debug'; // error | warn | info | debug | trace
Tool result truncation
// toolpack.config.json
{
"tools": {
"resultMaxChars": 20000
}
}
Web search improvements
web.search Tavily/Brave/DuckDuckGo diagnostics now route through the level-based logger. Fixed numeric freshness mapping so Tavily receives valid days values, restoring "latest results" support.
@toolpack-sdk/knowledge (embedded, pre-extraction)
PersistentKnowledgeProvider
const kb = await Knowledge.create({
provider: new PersistentKnowledgeProvider({ namespace: 'my-kb' }),
sources: [...],
embedder,
description: 'My KB',
reSync: false, // skip re-embedding if cached chunks exist
});
Embedding progress
await Knowledge.create({
// ...
onEmbeddingProgress: (e) => {
console.log(`${e.percent}% — ${e.current}/${e.total} chunks`);
},
});
Install
npm install toolpack-sdk@1.1.0