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.1.tar.gz (56.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.1-py3-none-any.whl (49.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: s_skillkit-0.1.1.tar.gz
  • Upload date:
  • Size: 56.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.1.tar.gz
Algorithm Hash digest
SHA256 678d155e0f3b2a2cb109c2f2f94e375df93a25bfe8edb842abea4d502d4a573e
MD5 1ce7fa1f2101c3b158f978963d311541
BLAKE2b-256 df8716d5d3b0e07b22d4f18520689f21535bb8f34d90a2d4acb66de42aa2c6f2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: s_skillkit-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 49.0 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bf60fd1e60ecef9efdb49a7806966cb2fdb303aa6d838e56bd7e755581261362
MD5 cb0fde518f824f55eeeae5d822d2457b
BLAKE2b-256 34e910f200235ca54c4898e1ee20b08e574f7fc77bc0bfcae7459b39f02c0160

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