Skip to main content

v2.0.0

Released: May 24, 2026

v2.0.0-alpha.1 (May 2, 2026) introduced context window management, SQLiteConversationStore, OpenRouter provider, and a suite of GitHub tools. v2.0.0 is the stable release.

Highlights

  • Skills system — define reusable behavioral instructions in .skill.md files; auto-injected into agent requests via BM25 relevance search
  • Interceptors — a new ToolpackInterceptor middleware layer for transforming requests/responses in generate()
  • Skill tools — four LLM-callable tools (skill.create, skill.read, skill.update, skill.list) for runtime skill management
  • VertexAI provider — first-class Google Vertex AI provider alongside the existing Gemini adapter
  • git.clone tool — new git tool for cloning repositories
  • 20 missing barrel exports fixedfsGlob, fsBatchRead, fsBatchWrite, fsDeleteDir, five web tools, nine coding tools, slackConversationsReplies, and githubIssuesCommentsCreate are now importable from toolpack-sdk
  • Deprecated APIs removedintelligentToolDetection and log() fully removed

Breaking changes

  • intelligentToolDetection removed from ToolsConfig. Use toolSearch instead:
    // Before
    toolsConfig: { intelligentToolDetection: { enabled: true } }
    // After
    toolsConfig: { toolSearch: { enabled: true } }
  • IntelligentToolDetectionConfig interface removed — remove any type imports.
  • log() function removed from provider-logger. Use logInfo(), logDebug(), etc.

toolpack-sdk

Skills system

import { Toolpack, createSkillInterceptor, createSkillTools } from 'toolpack-sdk';

const toolpack = await Toolpack.init({
provider: 'anthropic',
interceptors: [
createSkillInterceptor({ dir: '.toolpack/skills', maxSkills: 3, minScore: 0.3 }),
],
tools: [
createSkillTools({ dir: '.toolpack/skills' }),
],
});

Skills are .skill.md files with frontmatter (name, title, description, tags, triggers) and an ## Instructions section. The interceptor runs a BM25 search on every user message and prepends matched instructions as a <skill-instructions> block. The index hot-reloads on file mtime changes.

Interceptors

import type { ToolpackInterceptor } from 'toolpack-sdk';

const myInterceptor: ToolpackInterceptor = async (request, next) => {
return next(request);
};

// Optional startup hook — called during Toolpack.init()
myInterceptor.init = async () => { /* eager validation */ };

Context window management (from alpha.1)

  • SQLiteConversationStore with optional FTS and pruning helpers
  • Reworked InMemoryConversationStore with LRU cache
  • utils/token-counter, utils/context-window-state, utils/message-pruner, utils/message-summarizer

GitHub tools (from alpha.1)

PR diffs/files, GraphQL execution, PR reviews, review replies, threads, and comment creation.


Install

npm install toolpack-sdk@2.0.0
npm install @toolpack-sdk/knowledge@2.0.0
npm install @toolpack-sdk/agents@2.0.0