@m2015agg/git-skill 0.2.1 → 0.2.2
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.
- package/README.md +4 -0
- package/dist/util/hooks.js +11 -3
- package/dist/util/hooks.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -214,6 +214,10 @@ Claude can read the config, run the commands, and interpret the results. When in
|
|
|
214
214
|
- [`@m2015agg/context7-skill`](https://github.com/m2015agg/context7-skill) — Library docs cache
|
|
215
215
|
- `@m2015agg/git-skill` — Git history intelligence
|
|
216
216
|
|
|
217
|
+
## Known Gaps
|
|
218
|
+
|
|
219
|
+
- **Team sharing** — Enrichments and embeddings are per-user. On a team of 3, each person pays independently for identical LLM analysis. A JSONL export/import mechanism is planned to share enrichments via git. See [team-collaboration.md](docs/specs/team-collaboration.md) for the full brainstorm.
|
|
220
|
+
|
|
217
221
|
## Detailed Documentation
|
|
218
222
|
|
|
219
223
|
- [Design Spec](docs/specs/2026-03-31-git-skill-design.md) — Full architecture, schema, algorithms, and test strategy
|
package/dist/util/hooks.js
CHANGED
|
@@ -1,13 +1,21 @@
|
|
|
1
1
|
import { readFileSync, writeFileSync, existsSync, chmodSync, unlinkSync } from "fs";
|
|
2
2
|
import { join } from "path";
|
|
3
3
|
const HOOK_MARKER = "# git-skill hook";
|
|
4
|
-
const HOOK_CONTENT = `\n${HOOK_MARKER}\ngit-skill capture --hook 2>/dev/null &\n`;
|
|
4
|
+
const HOOK_CONTENT = `\n${HOOK_MARKER}\ngit-skill capture --hook 2>/dev/null &\ngit-skill context-update 2>/dev/null &\n`;
|
|
5
5
|
export function installHook(gitDir) {
|
|
6
6
|
const hookPath = join(gitDir, "hooks", "post-commit");
|
|
7
7
|
if (existsSync(hookPath)) {
|
|
8
8
|
const content = readFileSync(hookPath, "utf-8");
|
|
9
|
-
if (content.includes(HOOK_MARKER))
|
|
9
|
+
if (content.includes(HOOK_MARKER)) {
|
|
10
|
+
// Upgrade old hook that doesn't have context-update
|
|
11
|
+
if (!content.includes("context-update")) {
|
|
12
|
+
const upgraded = content.replace(/git-skill capture --hook 2>\/dev\/null &\n/, "git-skill capture --hook 2>/dev/null &\ngit-skill context-update 2>/dev/null &\n");
|
|
13
|
+
writeFileSync(hookPath, upgraded);
|
|
14
|
+
chmodSync(hookPath, 0o755);
|
|
15
|
+
return "updated";
|
|
16
|
+
}
|
|
10
17
|
return "already_installed";
|
|
18
|
+
}
|
|
11
19
|
writeFileSync(hookPath, content + HOOK_CONTENT);
|
|
12
20
|
chmodSync(hookPath, 0o755);
|
|
13
21
|
return "updated";
|
|
@@ -24,7 +32,7 @@ export function removeHook(gitDir) {
|
|
|
24
32
|
if (!content.includes(HOOK_MARKER))
|
|
25
33
|
return "not_found";
|
|
26
34
|
const lines = content.split("\n");
|
|
27
|
-
const filtered = lines.filter(line => !line.includes(HOOK_MARKER) && !line.includes("git-skill capture"));
|
|
35
|
+
const filtered = lines.filter(line => !line.includes(HOOK_MARKER) && !line.includes("git-skill capture") && !line.includes("git-skill context-update"));
|
|
28
36
|
const result = filtered.join("\n").trim();
|
|
29
37
|
if (result === "#!/bin/sh" || result === "") {
|
|
30
38
|
unlinkSync(hookPath);
|
package/dist/util/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/util/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AACpF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,MAAM,WAAW,GAAG,kBAAkB,CAAC;AACvC,MAAM,YAAY,GAAG,KAAK,WAAW,
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/util/hooks.ts"],"names":[],"mappings":"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"}
|