Skip to main content

Локальное ядро управления навыками: install из git/локальной папки, junction/symlink-линковка в scope агента, .skillignore-фильтр, build manifest, project-манифест. 0 завязок на сеть/auth — stdlib + tomli-w + pathspec + platformdirs.

Project description

s-skillkit

Локальное ядро управления навыками (skills) — SIBLING librarykit (не зависит от него, от httpx, auth или сети). Только локальная ФС-механика.

Что внутри

  • SkillStore (skillkit.installer) — материализация навыка в центральный стор и линковка (junction на Windows / symlink на POSIX) в scope агента:
    • install_from_git / install_from_path / install / materialize
    • update (инкрементальный sha-diff), link_existing, migrate_scope
    • remove (keep-local / purge)
    • P0 stub-would-clobber guard (stub не затирает живой контент).
  • targetsIAgentTarget + detect_agent / get_target (Claude Code, Codex, Antigravity).
  • manifestbuild_manifest для publish + ридеры frontmatter / _skill_meta.toml.
  • filter.skillignore / files-allowlist фильтр (pathspec).
  • project — проектный манифест .skills-hub/skills.toml.
  • Paths — инъекция каталогов (store_dir / config_dir / bin_dir). Paths.default() — нативная раскладка через platformdirs.

Инъекция вместо завязки на конфиг

Кит НЕ читает env/config. Каталоги передаются явным Paths; git-учётка — инъектируемым credential_resolver (callable url -> url). Потребитель (CLI) читает env-токен и собирает резолвер:

from skillkit import SkillStore, Paths, get_target

paths = Paths.default()  # или из ClientConfig

def resolver(url: str) -> str:
    token = os.environ.get("SKILLS_HUB_GIT_TOKEN")
    if token and url.startswith("https://") and "@" not in url:
        return url.replace("https://", f"https://oauth2:{token}@", 1)
    return url

store = SkillStore(get_target(None), paths.store_dir, credential_resolver=resolver)

Зависимости

tomli-w, pathspec, platformdirs. requires-python >=3.11. MIT.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

s_skillkit-0.1.2.tar.gz (61.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

s_skillkit-0.1.2-py3-none-any.whl (49.8 kB view details)

Uploaded Python 3

File details

Details for the file s_skillkit-0.1.2.tar.gz.

File metadata

  • Download URL: s_skillkit-0.1.2.tar.gz
  • Upload date:
  • Size: 61.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for s_skillkit-0.1.2.tar.gz
Algorithm Hash digest
SHA256 e6ad4eb28586ea7269e3397d329c00ef3999eb87c045ce9a1a6a120fc2cddfcc
MD5 150c76eb5f6707a1ecd69056b536278b
BLAKE2b-256 640875047c290bdfbcc0ad5048ad6dda8bd7f15b90433e1d7ae826def7601d89

See more details on using hashes here.

File details

Details for the file s_skillkit-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: s_skillkit-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 49.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for s_skillkit-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e2fdea27fea954e9ee01509f92532e162aeb783b7ca2910b6f81bc4ddc6b759c
MD5 0712105ff8107385797ef8cf0c960cae
BLAKE2b-256 5fde77223f732a50b88efe50da50deaca6256c2ea9090064d92280115bd8c917

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page