SkillPacks
Pluggable skillsets for AI agents
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Skillpacks provide a means of fine tuning agents on tools, and the ability to hotswap learned skills at inference time.
Teach a model how to use a website | code base | API | database | application | ... then swap in that learned layer the moment you need it.
Install
pip install skillpacks
Quick Start
Create an episode to record agent events
from skillpacks import Episode
episode = Episode(remote="https://foo.bar")
Take an action
from mllm import Router, RoleThread
from skillpacks import V1Action, V1EnvState
from agentdesk import Desktop
router = Router.from_env()
desktop = Desktop.local()
thread = RoleThread()
msg = f"""
I need to open Google to search, your available action are {desktop.json_schema()}
please return your selection as {V1Action.model_json_schema()}
"""
thread.post(role="user", msg=msg)
response = router.chat(thread, expect=V1Action)
v1action = response.parsed
action = desktop.find_action(name=v1action.name)
result = desktop.use(action, **v1action.parameters)
Record the action in the episode
event = episode.record(
state=V1EnvState(),
prompt=response.prompt,
action=v1action,
tool=desktop.ref(),
result=result,
)
Mark actions as approved
# approve one
episode.approve_one(event.id)
# approve the event and all actions prior to it
episode.approve_prior(event.id)
# approve all
episode.approve_all()
Get all approved actions in an episode
episode = Episode.find(id="123")[0]
actions = episode.approved_actions()
Get all approved actions in a namespace
from skillpacks import ActionEvent
actions = ActionEvent.find(namespace="foo", approved=True)
Get all approved actions for a tool
actions = ActionEvent.find(tool=desktop.ref(), approved=True)
Tune a model on the actions (In progress)
from skillpacks.model import InternVLChat
from skillpacks.runtime import KubernetesRuntime
runtime = KubernetesRuntime()
model = InternVLChat(runtime=runtime)
result = model.train(actions=actions, follow=True, publish=True)
Integrations
Skillpacks is integrated with:
- MLLM A prompt management, routing, and schema validation library for multimodal LLMs
- Taskara A task management library for AI agents
- Surfkit A platform for AI agents
- Threadmem A thread management library for AI agents
Community
Come join us on Discord.
Backends
Thread and prompt storage can be backed by:
- Sqlite
- Postgresql
Sqlite will be used by default. To use postgres simply configure the env vars:
DB_TYPE=postgres
DB_NAME=skills
DB_HOST=localhost
DB_USER=postgres
DB_PASS=abc123
Metadata
Release files for skillpacks 0.1.128
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| skillpacks-0.1.128.tar.gz | 44.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| skillpacks-0.1.128-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 101.6 kB
Release files / skillpacks-0.1.128.tar.gz
| Download URL | skillpacks-0.1.128.tar.gz |
|---|---|
| Size | 44.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
80a54390002bf81337e60b089921f985125c374ba374bc73a2144fc1eca148ec
|
|
BLAKE2b-256 checksum How to use checksums |
c695f624b491d57f6ce633522be2172e8d616f24c8080f7ddd179700364decfe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.10.1 Darwin/24.3.0
|
Release files / skillpacks-0.1.128-py3-none-any.whl
| Download URL | skillpacks-0.1.128-py3-none-any.whl |
|---|---|
| Size | 57.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a0ce4e7cceacc53fd17e7b4136d064fb655e0e366e4520c5a49d0e76205d8ea1
|
|
BLAKE2b-256 checksum How to use checksums |
d8c366cdeb7cca288f81e546fe304da361feb235a8ca30bd3b2ee890930dc232
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.10.1 Darwin/24.3.0
|