skillxp 0.1.0__py3-none-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
skillxp/__init__.py ADDED
@@ -0,0 +1,54 @@
1
+ """Python wrapper around the skillxp Go CLI, which observes how agent
2
+ harnesses (Antigravity CLI, Claude Code, Codex CLI) load and activate
3
+ Agent Skills.
4
+
5
+ The wheel bundles the real binary; the ``skillxp`` console script is a
6
+ transparent passthrough. The CLI writes its results to disk
7
+ (``observation.json``, ``session.json``, archived transcripts) rather
8
+ than printing a JSON envelope, so this package carries no invocation
9
+ API: run the CLI via ``subprocess`` with ``binary_path()`` and read the
10
+ bundle. Set SKILLXP_BINARY to override which binary is invoked.
11
+ """
12
+
13
+ import os
14
+ import subprocess
15
+ import sys
16
+
17
+
18
+ class NotInstalledError(RuntimeError):
19
+ """No bundled binary for this platform (and no SKILLXP_BINARY override)."""
20
+
21
+
22
+ def binary_path():
23
+ """Return the path of the skillxp binary this wrapper invokes."""
24
+ override = os.environ.get("SKILLXP_BINARY")
25
+ if override:
26
+ return override
27
+ exe = "skillxp.exe" if sys.platform == "win32" else "skillxp"
28
+ path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "bin", exe)
29
+ if not os.path.exists(path):
30
+ raise NotInstalledError(
31
+ "skillxp: no bundled binary for this platform; install the Go "
32
+ "CLI instead (https://github.com/agent-ecosystem/skillxp) and "
33
+ "set SKILLXP_BINARY"
34
+ )
35
+ # Some installers drop the exec bit on package data; restore best-effort.
36
+ if os.name == "posix" and not os.access(path, os.X_OK):
37
+ try:
38
+ os.chmod(path, 0o755)
39
+ except OSError:
40
+ pass
41
+ return path
42
+
43
+
44
+ def _main():
45
+ """Console-script entry: transparent passthrough to the binary."""
46
+ try:
47
+ binary = binary_path()
48
+ except NotInstalledError as err:
49
+ print(err, file=sys.stderr)
50
+ raise SystemExit(69) # EX_UNAVAILABLE: no usable binary
51
+ argv = [binary] + sys.argv[1:]
52
+ if os.name == "posix":
53
+ os.execv(binary, argv)
54
+ raise SystemExit(subprocess.call(argv))
Binary file
@@ -0,0 +1,53 @@
1
+ Metadata-Version: 2.4
2
+ Name: skillxp
3
+ Version: 0.1.0
4
+ Summary: Observes how agent harnesses (Antigravity CLI, Claude Code, Codex CLI) load and activate Agent Skills. Python wrapper around the skillxp Go CLI.
5
+ Author: Dachary Carey
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/agent-ecosystem/skillxp
8
+ Project-URL: Repository, https://github.com/agent-ecosystem/skillxp
9
+ Keywords: agent,skills,agent-skills,claude-code,codex,antigravity,headless
10
+ Requires-Python: >=3.9
11
+ Description-Content-Type: text/markdown
12
+
13
+ # skillxp
14
+
15
+ Python wrapper around
16
+ [skillxp](https://github.com/agent-ecosystem/skillxp), a Go CLI that
17
+ observes how agent harnesses (Antigravity CLI, Claude Code, Codex CLI)
18
+ load and activate [Agent Skills](https://agentskills.io): it installs a
19
+ skill in a fresh fixture, invokes the harness headlessly, and reports
20
+ what actually reached the model, with transcript evidence.
21
+
22
+ The wheel bundles the real Go binary for your platform.
23
+
24
+ ## CLI
25
+
26
+ ```bash
27
+ pip install skillxp
28
+ skillxp harnesses
29
+
30
+ skillxp observe -harness claude-code -install ./my-skill \
31
+ -prompt "Activate the my-skill skill and follow its instructions." \
32
+ -activation -trace "PHRASE-IN-BODY-1234" -out out/
33
+ ```
34
+
35
+ Identical to the Go CLI — see the
36
+ [project README](https://github.com/agent-ecosystem/skillxp) for the full
37
+ surface and the observation bundle layout.
38
+
39
+ ## API
40
+
41
+ The CLI writes its results to disk (`observation.json`, `session.json`,
42
+ archived transcripts) rather than printing a JSON envelope, so this
43
+ package carries no invocation API. Run the CLI via `subprocess` and read
44
+ the bundle; `binary_path()` exposes the bundled binary:
45
+
46
+ ```python
47
+ import subprocess
48
+ import skillxp
49
+
50
+ subprocess.run([skillxp.binary_path(), "observe", "-harness", "claude-code", ...])
51
+ ```
52
+
53
+ Set `SKILLXP_BINARY` to override which binary the wrapper invokes.
@@ -0,0 +1,7 @@
1
+ skillxp/__init__.py,sha256=2ULIsZrqfOOr8ZfxGOGSb0GlZ0ZhOp4lj8VQfPFHuok,1956
2
+ skillxp/bin/skillxp.exe,sha256=kubAs2JagH8D1z9b26CBnfubhJGHEjCOFt-LOLcitCk,3320320
3
+ skillxp-0.1.0.dist-info/METADATA,sha256=K7aUDfr1nvqWmGPQRGlPlmy61VClhNL3dafGVcx5MfU,1819
4
+ skillxp-0.1.0.dist-info/WHEEL,sha256=5s7VO_HUPfjwcO4LINqxGe8JSFZAGgaurQKPGA4cx_g,97
5
+ skillxp-0.1.0.dist-info/entry_points.txt,sha256=8zrZ_9CeuOdFiAudHjb6SaUsBb2fuBk5zVemCUKIfHE,42
6
+ skillxp-0.1.0.dist-info/top_level.txt,sha256=65Iy2aflfmM5WUIsUnQVbUlxO7z2PwzwwgD5-AXA7fA,8
7
+ skillxp-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (83.0.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-win_amd64
5
+
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ skillxp = skillxp:_main
@@ -0,0 +1 @@
1
+ skillxp