compact-code 0.2.0__py3-none-any.whl → 0.2.1__py3-none-any.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.
- compact_code/__init__.py +1 -1
- compact_code/hooks.py +12 -2
- {compact_code-0.2.0.dist-info → compact_code-0.2.1.dist-info}/METADATA +1 -1
- {compact_code-0.2.0.dist-info → compact_code-0.2.1.dist-info}/RECORD +7 -7
- {compact_code-0.2.0.dist-info → compact_code-0.2.1.dist-info}/WHEEL +0 -0
- {compact_code-0.2.0.dist-info → compact_code-0.2.1.dist-info}/entry_points.txt +0 -0
- {compact_code-0.2.0.dist-info → compact_code-0.2.1.dist-info}/licenses/LICENSE +0 -0
compact_code/__init__.py
CHANGED
compact_code/hooks.py
CHANGED
|
@@ -2,10 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
import json
|
|
4
4
|
import os
|
|
5
|
+
import shutil
|
|
5
6
|
|
|
6
7
|
HOOK_COMMAND = "compact-code hook"
|
|
7
8
|
|
|
8
9
|
|
|
10
|
+
def _hook_command():
|
|
11
|
+
"""Absolute path to the executable: hooks run in shells whose PATH may differ."""
|
|
12
|
+
exe = shutil.which("compact-code")
|
|
13
|
+
if exe:
|
|
14
|
+
return f'"{exe.replace(os.sep, "/")}" hook'
|
|
15
|
+
return HOOK_COMMAND
|
|
16
|
+
|
|
17
|
+
|
|
9
18
|
def settings_path(project=False):
|
|
10
19
|
if project:
|
|
11
20
|
return os.path.join(".claude", "settings.json")
|
|
@@ -27,11 +36,12 @@ def install(project=False):
|
|
|
27
36
|
post = settings.setdefault("hooks", {}).setdefault("PostToolUse", [])
|
|
28
37
|
for matcher in post:
|
|
29
38
|
for hook in matcher.get("hooks", []):
|
|
30
|
-
|
|
39
|
+
cmd = hook.get("command", "")
|
|
40
|
+
if "compact-code" in cmd and cmd.endswith(" hook"):
|
|
31
41
|
return path, False
|
|
32
42
|
post.append({
|
|
33
43
|
"matcher": "Read",
|
|
34
|
-
"hooks": [{"type": "command", "command":
|
|
44
|
+
"hooks": [{"type": "command", "command": _hook_command()}],
|
|
35
45
|
})
|
|
36
46
|
os.makedirs(os.path.dirname(path), exist_ok=True)
|
|
37
47
|
with open(path, "w", encoding="utf-8", newline="\n") as f:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: compact-code
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: Dense Python for AI agents, readable view for humans. Same logic, ~30-55% fewer tokens.
|
|
5
5
|
Project-URL: Homepage, https://github.com/EmmanuelFreund/compact-code
|
|
6
6
|
Project-URL: Repository, https://github.com/EmmanuelFreund/compact-code
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
compact_code/__init__.py,sha256=
|
|
1
|
+
compact_code/__init__.py,sha256=3sjjWt-4I3ThtvhR1KTzwSRO6tmYiAtc2pQx81bSiEg,273
|
|
2
2
|
compact_code/cli.py,sha256=Kc4Tm68EpFgcxSBIAHYy5O9E-UVG0KvqXhKeAyjUIY0,7308
|
|
3
3
|
compact_code/compactor.py,sha256=3XHnTWXICa0ch-MlVlJP8ixD6ctQC56N6mvrmjCbTFo,3900
|
|
4
4
|
compact_code/expand.py,sha256=bfID5ZtWvHqnXMg9ux37lhAizXQsHdGnZdmvVvzvO3Q,1419
|
|
5
|
-
compact_code/hooks.py,sha256=
|
|
5
|
+
compact_code/hooks.py,sha256=6K8O7dPu0WNrNHIiz3wWoxExni835bCK-1GTSp6SbTA,1560
|
|
6
6
|
compact_code/ledger.py,sha256=_I9WsvUDUCB_Q97DMJ7LBLDDblJh4Xq4Q1M_HV4fKjo,1818
|
|
7
7
|
compact_code/tokens.py,sha256=4bg0d5rpv4bquP-15zKNuAVIiS9gORxQtEwmSt7OpZw,524
|
|
8
|
-
compact_code-0.2.
|
|
9
|
-
compact_code-0.2.
|
|
10
|
-
compact_code-0.2.
|
|
11
|
-
compact_code-0.2.
|
|
12
|
-
compact_code-0.2.
|
|
8
|
+
compact_code-0.2.1.dist-info/METADATA,sha256=bN4b2v7KsXsFY4Qy6tp_jpIeXft2QEds9CwAV7E6fgE,4541
|
|
9
|
+
compact_code-0.2.1.dist-info/WHEEL,sha256=mffPy8wBnZQn2VnJUU5jE99KsxaSfiyMHV9Yt0aLVxs,87
|
|
10
|
+
compact_code-0.2.1.dist-info/entry_points.txt,sha256=IZNSoYbRk5atYzZCkbqFenI290C24EOz30U7e19o-wA,55
|
|
11
|
+
compact_code-0.2.1.dist-info/licenses/LICENSE,sha256=N-Rrt7sqXVm_MP6RC2EhrLhUtTrGtluOr7zclo-0who,1072
|
|
12
|
+
compact_code-0.2.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|