Multi-Pack Assistant
An AI agent that can access hundreds of tools across multiple platforms by loading integration packs on demand - keeping the active context lean and focused by only installing the tools that are needed for each task.
The Multi-Pack Assistant blueprint showcases one of the most powerful patterns in large-scale agent design: on-demand tool loading via packs.
Instead of wiring every possible tool into the agent upfront - which would flood the context window with hundreds of function definitions the model must reason over - this blueprint exposes a small set of pack-loader abilities. Each loader, when called, dynamically installs a complete suite of tools for its target service into the active conversation.
Why Packs Matter
Every tool definition added to a conversation consumes tokens and occupies space in the model's context window. An agent connected to Slack, GitHub, Google Mail, Google Drive, Todoist, Discord - simultaneously - could easily have 100+ tool definitions loaded at all times. This degrades performance: the model must parse and reason over every definition on every turn, even when most of them are irrelevant.
Packs solve this by deferring installation. At the start of a conversation only the pack-loader abilities are present. When the user asks for something requiring GitHub - "open a pull request for me" - the agent calls Install GitHub Tools, which expands the full GitHub toolset into the session. The model can then use those tools immediately. Tools for other services remain absent until explicitly needed.
This pattern enables an agent to theoretically access thousands of tools across its lifetime while never holding more than a handful in memory at any given moment.
How to Extend It
Adding a new service is a two-step process: create a secret for the service credentials, then add an ability that references the corresponding pack template. No other wiring is required - the new pack will be automatically discoverable by the model from its ability description alone.
Getting Started
- Configure secrets for each service you want to enable (Slack token, GitHub OAuth, Google Mail credentials, Google Drive credentials).
- Deploy the blueprint and open a conversation.
- Ask the agent to do something across any of the supported services - it will load the right pack automatically and complete the task.
This architecture is particularly well-suited for personal-productivity assistants and power-user bots where the range of tasks is broad but any single conversation focuses on just one or two services at a time.
Backstory
Common information about the bot's experience, skills and personality. For more information, see the Backstory documentation.
Skillset
This example uses a dedicated Skillset. Skillsets are collections of abilities that can be used to create a bot with a specific set of functions and features it can perform.
Install Slack Tools
Installs Slack tools into the conversation. You can send messages, manage channels, search content, and perform comprehensive workspace operations.Install GitHub Tools
Complete GitHub management pack with full repository, issue, pull request, branch, release, and content operations.Install Google Mail Tools
Installs Google Mail tools into the conversation to manage emails and drafts and search messages and threads.Install Google Drive Tools
Installs Google Drive tools into the conversation. You can search, list, fetch, export, and delete files.
Secrets
This example uses Secrets to store sensitive information such as API keys, passwords, and other credentials.
Slack
A secret without descriptionGitHub
A secret without descriptionGoogle Mail
A secret without descriptionGoogle Drive
A secret without description
Terraform Code
This blueprint can be deployed using Terraform, enabling infrastructure-as-code management of your ChatBotKit resources. Use the code below to recreate this example in your own environment.
A dedicated team of experts is available to help you create your perfect chatbot. Reach out via or chat for more information.