@335g/pi-git 0.0.3 → 0.0.4
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.ja.md +3 -3
- package/README.md +3 -3
- package/dist/commands/agg-commit.d.ts.map +1 -1
- package/dist/commands/agg-commit.js +25 -29
- package/dist/commands/agg-commit.js.map +1 -1
- package/dist/commands/auto-agg-commit.d.ts.map +1 -1
- package/dist/commands/auto-agg-commit.js +6 -31
- package/dist/commands/auto-agg-commit.js.map +1 -1
- package/dist/commands/config.d.ts +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +51 -43
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/diagnostics.d.ts +12 -0
- package/dist/commands/diagnostics.d.ts.map +1 -0
- package/dist/commands/diagnostics.js +59 -0
- package/dist/commands/diagnostics.js.map +1 -0
- package/dist/core/auto-commit-message.d.ts.map +1 -1
- package/dist/core/auto-commit-message.js +29 -73
- package/dist/core/auto-commit-message.js.map +1 -1
- package/dist/core/auto-commit.d.ts.map +1 -1
- package/dist/core/auto-commit.js +3 -4
- package/dist/core/auto-commit.js.map +1 -1
- package/dist/core/commit-message.d.ts.map +1 -1
- package/dist/core/commit-message.js +3 -0
- package/dist/core/commit-message.js.map +1 -1
- package/dist/core/diff-analyzer.d.ts.map +1 -1
- package/dist/core/diff-analyzer.js +73 -61
- package/dist/core/diff-analyzer.js.map +1 -1
- package/dist/core/git.d.ts +5 -3
- package/dist/core/git.d.ts.map +1 -1
- package/dist/core/git.js +19 -3
- package/dist/core/git.js.map +1 -1
- package/dist/i18n/messages.d.ts +107 -0
- package/dist/i18n/messages.d.ts.map +1 -0
- package/dist/i18n/messages.js +135 -0
- package/dist/i18n/messages.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -4
- package/dist/index.js.map +1 -1
- package/dist/utils/diagnostics.d.ts +33 -0
- package/dist/utils/diagnostics.d.ts.map +1 -0
- package/dist/utils/diagnostics.js +32 -0
- package/dist/utils/diagnostics.js.map +1 -0
- package/dist/utils/footer-manager.d.ts.map +1 -1
- package/dist/utils/footer-manager.js +5 -5
- package/dist/utils/footer-manager.js.map +1 -1
- package/dist/utils/lang.d.ts +13 -8
- package/dist/utils/lang.d.ts.map +1 -1
- package/dist/utils/lang.js +21 -11
- package/dist/utils/lang.js.map +1 -1
- package/dist/utils/settings.d.ts +13 -5
- package/dist/utils/settings.d.ts.map +1 -1
- package/dist/utils/settings.js +65 -13
- package/dist/utils/settings.js.map +1 -1
- package/package.json +6 -2
package/README.ja.md
CHANGED
|
@@ -19,7 +19,7 @@ pi install @335g/pi-git
|
|
|
19
19
|
```json
|
|
20
20
|
{
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@335g/pi-git": "^0.0.
|
|
22
|
+
"@335g/pi-git": "^0.0.4"
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
```
|
|
@@ -64,10 +64,10 @@ pi install /path/to/pi-git
|
|
|
64
64
|
|
|
65
65
|
### `/git-config`
|
|
66
66
|
|
|
67
|
-
pi-git の設定値を取得・設定・一覧表示します。グローバル(`~/.config/pi-git/settings.json
|
|
67
|
+
pi-git の設定値を取得・設定・一覧表示します。グローバル(`~/.config/pi-git/settings.json`)とローカル(`<リポジトリルート>/pi-git.toml`)スコープに対応しています。
|
|
68
68
|
|
|
69
69
|
```
|
|
70
|
-
/git-config <key> [value] [--global] [--list] [--show-origin]
|
|
70
|
+
/git-config <key> [value] [--global] [--list] [--show-origin] [--keys] [--models] [--help]
|
|
71
71
|
```
|
|
72
72
|
|
|
73
73
|
---
|
package/README.md
CHANGED
|
@@ -19,7 +19,7 @@ Or add to your project's package.json:
|
|
|
19
19
|
```json
|
|
20
20
|
{
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@335g/pi-git": "^0.0.
|
|
22
|
+
"@335g/pi-git": "^0.0.4"
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
```
|
|
@@ -64,10 +64,10 @@ Toggles automatic `git-agg-commit` after assistant responses. When enabled, unco
|
|
|
64
64
|
|
|
65
65
|
### `/git-config`
|
|
66
66
|
|
|
67
|
-
Gets, sets, or lists pi-git configuration values. Supports global (`~/.config/pi-git/settings.json`) and local (`<repo-root
|
|
67
|
+
Gets, sets, or lists pi-git configuration values. Supports global (`~/.config/pi-git/settings.json`) and local (`<repo-root>/pi-git.toml`) scopes.
|
|
68
68
|
|
|
69
69
|
```
|
|
70
|
-
/git-config <key> [value] [--global] [--list] [--show-origin]
|
|
70
|
+
/git-config <key> [value] [--global] [--list] [--show-origin] [--keys] [--models] [--help]
|
|
71
71
|
```
|
|
72
72
|
|
|
73
73
|
---
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agg-commit.d.ts","sourceRoot":"","sources":["../../src/commands/agg-commit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EACjB,MAAM,iCAAiC,CAAC;AAiBzC,wBAAsB,eAAe,CACnC,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,gBAAgB,EACrB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"agg-commit.d.ts","sourceRoot":"","sources":["../../src/commands/agg-commit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EACjB,MAAM,iCAAiC,CAAC;AAiBzC,wBAAsB,eAAe,CACnC,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,gBAAgB,EACrB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAqJf"}
|
|
@@ -17,19 +17,7 @@ export async function handleAggCommit(pi, ctx, args) {
|
|
|
17
17
|
const lang = getLanguage(ctx.cwd);
|
|
18
18
|
if (/--help/.test(args)) {
|
|
19
19
|
if (ctx.hasUI) {
|
|
20
|
-
ctx.ui.notify(t(lang,
|
|
21
|
-
"/git-agg-commit [--lang=<lang>] [--help]",
|
|
22
|
-
"",
|
|
23
|
-
"オプション:",
|
|
24
|
-
" --lang=<lang> 一時的に言語を上書き(保存されません)",
|
|
25
|
-
" --help このヘルプを表示",
|
|
26
|
-
].join("\n"), [
|
|
27
|
-
"/git-agg-commit [--lang=<lang>] [--help]",
|
|
28
|
-
"",
|
|
29
|
-
"Options:",
|
|
30
|
-
" --lang=<lang> Temporarily override language (not saved)",
|
|
31
|
-
" --help Show this help message",
|
|
32
|
-
].join("\n")), "info");
|
|
20
|
+
ctx.ui.notify(t(lang, "aggCommit.help"), "info");
|
|
33
21
|
}
|
|
34
22
|
return;
|
|
35
23
|
}
|
|
@@ -43,29 +31,30 @@ export async function handleAggCommit(pi, ctx, args) {
|
|
|
43
31
|
return;
|
|
44
32
|
}
|
|
45
33
|
if (footerManager.isRunning()) {
|
|
46
|
-
ctx.ui.notify(t(runLang, "
|
|
34
|
+
ctx.ui.notify(t(runLang, "aggCommit.alreadyRunning"), "warning");
|
|
47
35
|
return;
|
|
48
36
|
}
|
|
49
|
-
await footerManager.setRunning("agg-commit", "prepare", runLang);
|
|
50
37
|
try {
|
|
38
|
+
await footerManager.setRunning("agg-commit", "prepare", runLang);
|
|
51
39
|
const preCheck = await ensureReadyToCommit(pi, ctx.cwd);
|
|
52
40
|
if (preCheck) {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
: "No changes to commit",
|
|
41
|
+
const messages = {
|
|
42
|
+
not_git_repo: { text: "Not a git repository", level: "warning" },
|
|
43
|
+
merge_conflict: { text: "Merge conflicts detected. Resolve conflicts before committing.", level: "error" },
|
|
44
|
+
no_changes: { text: "No changes to commit", level: "info" },
|
|
45
|
+
};
|
|
46
|
+
const entry = messages[preCheck];
|
|
47
|
+
ctx.ui.notify(entry.text, entry.level);
|
|
57
48
|
return;
|
|
58
49
|
}
|
|
59
50
|
// Snapshot changes via stash to freeze the diff
|
|
60
51
|
await footerManager.setPhase("collectDiff", runLang);
|
|
61
52
|
const diff = await collectDiff(pi, ctx.cwd);
|
|
62
53
|
if (diff === null) {
|
|
63
|
-
await footerManager.clearRunning();
|
|
64
54
|
ctx.ui.notify("Failed to stash changes", "warning");
|
|
65
55
|
return;
|
|
66
56
|
}
|
|
67
57
|
if (!diff.trim()) {
|
|
68
|
-
await footerManager.clearRunning();
|
|
69
58
|
ctx.ui.notify("No changes to commit", "info");
|
|
70
59
|
return;
|
|
71
60
|
}
|
|
@@ -73,7 +62,6 @@ export async function handleAggCommit(pi, ctx, args) {
|
|
|
73
62
|
await footerManager.setPhase("analyze", runLang);
|
|
74
63
|
let hunks = await analyzeDiff(pi, ctx, diff, runLang);
|
|
75
64
|
if (hunks.length === 0) {
|
|
76
|
-
await footerManager.clearRunning();
|
|
77
65
|
ctx.ui.notify("No hunks found to commit", "info");
|
|
78
66
|
return;
|
|
79
67
|
}
|
|
@@ -88,6 +76,15 @@ export async function handleAggCommit(pi, ctx, args) {
|
|
|
88
76
|
for (let i = 0; i < hunks.length; i++) {
|
|
89
77
|
const hunk = hunks[i];
|
|
90
78
|
await footerManager.setCommitProgress(i + 1, hunks.length);
|
|
79
|
+
// Ensure clean staging area before each hunk
|
|
80
|
+
try {
|
|
81
|
+
await resetStaging(pi, ctx.cwd);
|
|
82
|
+
}
|
|
83
|
+
catch {
|
|
84
|
+
ctx.ui.notify("Failed to reset staging area, aborting batch", "error");
|
|
85
|
+
failedCount++;
|
|
86
|
+
break;
|
|
87
|
+
}
|
|
91
88
|
try {
|
|
92
89
|
await stageFiles(pi, hunk.files, ctx.cwd);
|
|
93
90
|
}
|
|
@@ -102,14 +99,8 @@ export async function handleAggCommit(pi, ctx, args) {
|
|
|
102
99
|
}
|
|
103
100
|
const { code: exitCode, stderr } = await pi.exec("git", ["commit", "-m", hunk.message], { cwd: ctx.cwd });
|
|
104
101
|
if (exitCode !== 0) {
|
|
105
|
-
try {
|
|
106
|
-
await resetStaging(pi, ctx.cwd);
|
|
107
|
-
}
|
|
108
|
-
catch {
|
|
109
|
-
// Ignore reset errors
|
|
110
|
-
}
|
|
111
102
|
const detail = stderr.trim() ? ` — ${stderr.trim()}` : "";
|
|
112
|
-
ctx.ui.notify(`Commit failed for "${hunk.message}" (exit code ${exitCode}).${detail}
|
|
103
|
+
ctx.ui.notify(`Commit failed for "${hunk.message}" (exit code ${exitCode}).${detail}`, "warning");
|
|
113
104
|
failedCount++;
|
|
114
105
|
continue;
|
|
115
106
|
}
|
|
@@ -133,6 +124,11 @@ export async function handleAggCommit(pi, ctx, args) {
|
|
|
133
124
|
}
|
|
134
125
|
}
|
|
135
126
|
finally {
|
|
127
|
+
// Final cleanup: ensure staging area is clean
|
|
128
|
+
try {
|
|
129
|
+
await resetStaging(pi, ctx.cwd);
|
|
130
|
+
}
|
|
131
|
+
catch { /* ignore */ }
|
|
136
132
|
await footerManager.clearRunning();
|
|
137
133
|
}
|
|
138
134
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agg-commit.js","sourceRoot":"","sources":["../../src/commands/agg-commit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,UAAU,GACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IACvD,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAgB,EAChB,GAAqB,EACrB,IAAY;IAEZ,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAElC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,CAAC,CAAC,IAAI,EACJ
|
|
1
|
+
{"version":3,"file":"agg-commit.js","sourceRoot":"","sources":["../../src/commands/agg-commit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,UAAU,GACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IACvD,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAgB,EAChB,GAAqB,EACrB,IAAY;IAEZ,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAElC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,CAAC,CAAC,IAAI,EACJ,gBAAgB,CACjB,EACD,MAAM,CACP,CAAC;QACJ,CAAC;QACD,OAAO;IACT,CAAC;IAED,8DAA8D;IAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,OAAO,IAAI,IAAI,CAAC;IAChC,IAAI,OAAO,EAAE,CAAC;QACZ,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,oBAAoB,OAAO,kBAAkB,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,IAAI,aAAa,CAAC,SAAS,EAAE,EAAE,CAAC;QAC9B,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,CAAC,CAAC,OAAO,EACP,0BAA0B,CAC3B,EACD,SAAS,CACV,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,aAAa,CAAC,UAAU,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAEjE,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,QAAQ,GAA0E;gBACtF,YAAY,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,SAAS,EAAE;gBAChE,cAAc,EAAE,EAAE,IAAI,EAAE,gEAAgE,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC1G,UAAU,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,EAAE;aAC5D,CAAC;YACF,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACjC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QAED,gDAAgD;QAChD,MAAM,aAAa,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;YACpD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACjB,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QAED,kCAAkC;QAClC,MAAM,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACjD,IAAI,KAAK,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,0BAA0B,EAAE,MAAM,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QAED,0CAA0C;QAC1C,MAAM,aAAa,CAAC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QACzD,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAE5B,6BAA6B;QAC7B,MAAM,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,aAAa,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAE3D,6CAA6C;YAC7C,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;YAAC,MAAM,CAAC;gBACP,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,8CAA8C,EAAE,OAAO,CAAC,CAAC;gBACvE,WAAW,EAAE,CAAC;gBACd,MAAM;YACR,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACP,WAAW,EAAE,CAAC;gBACd,SAAS;YACX,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC,IAAI,CAC1D,KAAK,EACL,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,EAC9B,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CACjB,CAAC;YACF,IAAI,QAAQ,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;gBACzC,YAAY,EAAE,CAAC;gBACf,SAAS;YACX,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,IAAI,CAC9C,KAAK,EACL,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,EAC9B,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CACjB,CAAC;YACF,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,sBAAsB,IAAI,CAAC,OAAO,gBAAgB,QAAQ,KAAK,MAAM,EAAE,EACvE,SAAS,CACV,CAAC;gBACF,WAAW,EAAE,CAAC;gBACd,SAAS;YACX,CAAC;YAED,cAAc,EAAE,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,cAAc,GAAG,CAAC;YACpB,KAAK,CAAC,IAAI,CACR,WAAW,cAAc,UAAU,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACnE,CAAC;QACJ,IAAI,YAAY,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,YAAY,UAAU,CAAC,CAAC;QAC5D,IAAI,WAAW,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,SAAS,CAAC,CAAC;QAEzD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;aAAM,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;YAAS,CAAC;QACT,8CAA8C;QAC9C,IAAI,CAAC;YAAC,MAAM,YAAY,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC/D,MAAM,aAAa,CAAC,YAAY,EAAE,CAAC;IACrC,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-agg-commit.d.ts","sourceRoot":"","sources":["../../src/commands/auto-agg-commit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACxB,MAAM,iCAAiC,CAAC;AAazC,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,uBAAuB,EAC5B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"auto-agg-commit.d.ts","sourceRoot":"","sources":["../../src/commands/auto-agg-commit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACxB,MAAM,iCAAiC,CAAC;AAazC,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,uBAAuB,EAC5B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CA4Ef"}
|
|
@@ -16,31 +16,7 @@ export async function handleAutoAggCommit(pi, ctx, args) {
|
|
|
16
16
|
const current = getAutoAggCommit();
|
|
17
17
|
const lang = getLanguage(ctx.cwd);
|
|
18
18
|
if (trimmed === "--help") {
|
|
19
|
-
ctx.ui.notify(t(lang,
|
|
20
|
-
"/git-auto-agg-commit [on|off|toggle] [--help]",
|
|
21
|
-
"",
|
|
22
|
-
"サブコマンド:",
|
|
23
|
-
" on 自動 git-agg-commit を有効にする",
|
|
24
|
-
" off 自動 git-agg-commit を無効にする",
|
|
25
|
-
" toggle 自動 git-agg-commit の有効/無効を切り替える",
|
|
26
|
-
"",
|
|
27
|
-
"フラグ:",
|
|
28
|
-
" --help このヘルプを表示",
|
|
29
|
-
"",
|
|
30
|
-
"引数を省略すると、現在の状態を表示します。",
|
|
31
|
-
].join("\n"), [
|
|
32
|
-
"/git-auto-agg-commit [on|off|toggle] [--help]",
|
|
33
|
-
"",
|
|
34
|
-
"Subcommands:",
|
|
35
|
-
" on Enable auto git-agg-commit",
|
|
36
|
-
" off Disable auto git-agg-commit",
|
|
37
|
-
" toggle Toggle auto git-agg-commit",
|
|
38
|
-
"",
|
|
39
|
-
"Flags:",
|
|
40
|
-
" --help Show this help message",
|
|
41
|
-
"",
|
|
42
|
-
"When called without arguments, shows the current status.",
|
|
43
|
-
].join("\n")), "info");
|
|
19
|
+
ctx.ui.notify(t(lang, "autoAggCommit.help"), "info");
|
|
44
20
|
return;
|
|
45
21
|
}
|
|
46
22
|
let next;
|
|
@@ -55,10 +31,10 @@ export async function handleAutoAggCommit(pi, ctx, args) {
|
|
|
55
31
|
next = !current;
|
|
56
32
|
break;
|
|
57
33
|
case "":
|
|
58
|
-
ctx.ui.notify(t(lang,
|
|
34
|
+
ctx.ui.notify(t(lang, "autoAggCommit.status", { status: t(lang, current ? "autoAggCommit.enabled" : "autoAggCommit.disabled") }), "info");
|
|
59
35
|
return;
|
|
60
36
|
default:
|
|
61
|
-
ctx.ui.notify(t(lang,
|
|
37
|
+
ctx.ui.notify(t(lang, "autoAggCommit.invalidArg"), "warning");
|
|
62
38
|
return;
|
|
63
39
|
}
|
|
64
40
|
const localPath = getLocalSettingsPath(ctx.cwd);
|
|
@@ -69,13 +45,12 @@ export async function handleAutoAggCommit(pi, ctx, args) {
|
|
|
69
45
|
saveGlobalSettings({ auto_agg_commit: next });
|
|
70
46
|
}
|
|
71
47
|
await footerManager.refresh();
|
|
72
|
-
const
|
|
73
|
-
const enabledEn = next ? "enabled" : "disabled";
|
|
48
|
+
const statusText = t(lang, next ? "autoAggCommit.enabled" : "autoAggCommit.disabled");
|
|
74
49
|
if (localPath) {
|
|
75
|
-
ctx.ui.notify(t(lang,
|
|
50
|
+
ctx.ui.notify(t(lang, "autoAggCommit.enabledLocal", { status: statusText }), "info");
|
|
76
51
|
}
|
|
77
52
|
else {
|
|
78
|
-
ctx.ui.notify(t(lang,
|
|
53
|
+
ctx.ui.notify(t(lang, "autoAggCommit.enabledGlobal", { status: statusText }), "info");
|
|
79
54
|
}
|
|
80
55
|
}
|
|
81
56
|
//# sourceMappingURL=auto-agg-commit.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-agg-commit.js","sourceRoot":"","sources":["../../src/commands/auto-agg-commit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AACrC,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,MAAM,CAAC,GAAG,UAAU,CAAC;AAErB,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,EAAgB,EAChB,GAA4B,EAC5B,IAAY;IAEZ,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IACnC,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAElC,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,CAAC,CAAC,IAAI,EACJ
|
|
1
|
+
{"version":3,"file":"auto-agg-commit.js","sourceRoot":"","sources":["../../src/commands/auto-agg-commit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AACrC,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,MAAM,CAAC,GAAG,UAAU,CAAC;AAErB,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,EAAgB,EAChB,GAA4B,EAC5B,IAAY;IAEZ,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IACnC,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAElC,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,CAAC,CAAC,IAAI,EACJ,oBAAoB,CACrB,EACD,MAAM,CACP,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,IAAa,CAAC;IAClB,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,IAAI;YACP,IAAI,GAAG,IAAI,CAAC;YACZ,MAAM;QACR,KAAK,KAAK;YACR,IAAI,GAAG,KAAK,CAAC;YACb,MAAM;QACR,KAAK,QAAQ;YACX,IAAI,GAAG,CAAC,OAAO,CAAC;YAChB,MAAM;QACR,KAAK,EAAE;YACL,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,CAAC,CAAC,IAAI,EACJ,sBAAsB,EACtB,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,wBAAwB,CAAC,EAAE,CAClF,EACD,MAAM,CACP,CAAC;YACF,OAAO;QACT;YACE,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,CAAC,CAAC,IAAI,EACJ,0BAA0B,CAC3B,EACD,SAAS,CACV,CAAC;YACF,OAAO;IACX,CAAC;IAED,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChD,IAAI,SAAS,EAAE,CAAC;QACd,iBAAiB,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,kBAAkB,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,aAAa,CAAC,OAAO,EAAE,CAAC;IAE9B,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;IACtF,IAAI,SAAS,EAAE,CAAC;QACd,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,CAAC,CAAC,IAAI,EACJ,4BAA4B,EAC5B,EAAE,MAAM,EAAE,UAAU,EAAE,CACvB,EACD,MAAM,CACP,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,CAAC,CAAC,IAAI,EACJ,6BAA6B,EAC7B,EAAE,MAAM,EAAE,UAAU,EAAE,CACvB,EACD,MAAM,CACP,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Get, set, and list pi-git configuration values.
|
|
5
5
|
* Supports both global (~/.config/pi-git/settings.json)
|
|
6
|
-
* and local (<repo
|
|
6
|
+
* and local (<repo>/pi-git.toml) scopes.
|
|
7
7
|
*/
|
|
8
8
|
import type { ExtensionAPI, ExtensionCommandContext } from "@earendil-works/pi-coding-agent";
|
|
9
9
|
export declare function handleConfig(_pi: ExtensionAPI, ctx: ExtensionCommandContext, args: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACxB,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACxB,MAAM,iCAAiC,CAAC;AA2CzC,wBAAsB,YAAY,CAChC,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,uBAAuB,EAC5B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAiNf"}
|
package/dist/commands/config.js
CHANGED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Get, set, and list pi-git configuration values.
|
|
5
5
|
* Supports both global (~/.config/pi-git/settings.json)
|
|
6
|
-
* and local (<repo
|
|
6
|
+
* and local (<repo>/pi-git.toml) scopes.
|
|
7
7
|
*/
|
|
8
8
|
import { existsSync } from "node:fs";
|
|
9
9
|
import { t } from "../utils/lang.js";
|
|
10
|
-
import { DEFAULT_SETTINGS, GLOBAL_SETTINGS_FILE, getLanguage, getLocalSettingsPath, getSettings, getSettingWithOrigin, saveGlobalSettings, saveLocalSettings, VALID_KEYS_META, } from "../utils/settings.js";
|
|
10
|
+
import { DEFAULT_SETTINGS, GLOBAL_SETTINGS_FILE, getLanguage, getLocalSettingsPath, getSettings, getSettingWithOrigin, initLocalSettings, saveGlobalSettings, saveLocalSettings, VALID_KEYS_META, } from "../utils/settings.js";
|
|
11
11
|
function isValidKey(key) {
|
|
12
12
|
return VALID_KEYS_META.some((meta) => meta.key === key);
|
|
13
13
|
}
|
|
@@ -42,6 +42,8 @@ export async function handleConfig(_pi, ctx, args) {
|
|
|
42
42
|
let showOrigin = false;
|
|
43
43
|
let keys = false;
|
|
44
44
|
let models = false;
|
|
45
|
+
let init = false;
|
|
46
|
+
let force = false;
|
|
45
47
|
let help = false;
|
|
46
48
|
const positional = [];
|
|
47
49
|
for (const token of tokens) {
|
|
@@ -55,46 +57,47 @@ export async function handleConfig(_pi, ctx, args) {
|
|
|
55
57
|
keys = true;
|
|
56
58
|
else if (token === "--models")
|
|
57
59
|
models = true;
|
|
60
|
+
else if (token === "--init")
|
|
61
|
+
init = true;
|
|
62
|
+
else if (token === "--force")
|
|
63
|
+
force = true;
|
|
58
64
|
else if (token === "--help")
|
|
59
65
|
help = true;
|
|
60
66
|
else
|
|
61
67
|
positional.push(token);
|
|
62
68
|
}
|
|
63
69
|
if (help) {
|
|
64
|
-
ctx.ui.notify(t(lang,
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
"",
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
"
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
"
|
|
89
|
-
|
|
90
|
-
" --models Show available models for analysis_model",
|
|
91
|
-
" --help Show this help message",
|
|
92
|
-
].join("\n")), "info");
|
|
70
|
+
ctx.ui.notify(t(lang, "config.help"), "info");
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
if (init) {
|
|
74
|
+
const localPath = getLocalSettingsPath(ctx.cwd);
|
|
75
|
+
if (!localPath) {
|
|
76
|
+
ctx.ui.notify(t(lang, "config.initNotInRepo"), "warning");
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
// existsSync must be evaluated before initLocalSettings —
|
|
80
|
+
// after write it's always true.
|
|
81
|
+
const existed = existsSync(localPath);
|
|
82
|
+
if (existed && !force) {
|
|
83
|
+
ctx.ui.notify(t(lang, "config.initAlreadyExists"), "warning");
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
try {
|
|
87
|
+
// Pass the already-resolved path to avoid a redundant git rev-parse.
|
|
88
|
+
initLocalSettings(localPath);
|
|
89
|
+
ctx.ui.notify(t(lang, existed ? "config.initOverwritten" : "config.initCreated"), "info");
|
|
90
|
+
}
|
|
91
|
+
catch (err) {
|
|
92
|
+
ctx.ui.notify(t(lang, "config.saveFailed", {
|
|
93
|
+
error: err instanceof Error ? err.message : String(err),
|
|
94
|
+
}), "error");
|
|
95
|
+
}
|
|
93
96
|
return;
|
|
94
97
|
}
|
|
95
98
|
if (keys) {
|
|
96
99
|
const lines = VALID_KEYS_META.map((meta) => {
|
|
97
|
-
const desc = t(lang, meta.
|
|
100
|
+
const desc = t(lang, meta.messageKey);
|
|
98
101
|
let line = `${meta.key} (${meta.type}) — ${desc}`;
|
|
99
102
|
if (meta.valid_values) {
|
|
100
103
|
line += ` [${meta.valid_values}]`;
|
|
@@ -107,7 +110,7 @@ export async function handleConfig(_pi, ctx, args) {
|
|
|
107
110
|
if (models) {
|
|
108
111
|
const availableModels = ctx.modelRegistry.getAvailable();
|
|
109
112
|
if (availableModels.length === 0) {
|
|
110
|
-
ctx.ui.notify(t(lang, "
|
|
113
|
+
ctx.ui.notify(t(lang, "config.noModels"), "warning");
|
|
111
114
|
return;
|
|
112
115
|
}
|
|
113
116
|
const currentModel = getSettings(ctx.cwd).analysis_model;
|
|
@@ -117,7 +120,7 @@ export async function handleConfig(_pi, ctx, args) {
|
|
|
117
120
|
const marker = isCurrent ? " (current)" : "";
|
|
118
121
|
return `${modelId}${marker}`;
|
|
119
122
|
});
|
|
120
|
-
const header = t(lang, "
|
|
123
|
+
const header = t(lang, "config.modelsHeader");
|
|
121
124
|
ctx.ui.notify(`${header}\n${lines.join("\n")}`, "info");
|
|
122
125
|
return;
|
|
123
126
|
}
|
|
@@ -138,7 +141,7 @@ export async function handleConfig(_pi, ctx, args) {
|
|
|
138
141
|
}
|
|
139
142
|
}
|
|
140
143
|
if (entries.length === 0) {
|
|
141
|
-
ctx.ui.notify(t(lang, "
|
|
144
|
+
ctx.ui.notify(t(lang, "config.noSettings"), "info");
|
|
142
145
|
}
|
|
143
146
|
else {
|
|
144
147
|
ctx.ui.notify(entries.join("\n"), "info");
|
|
@@ -146,19 +149,19 @@ export async function handleConfig(_pi, ctx, args) {
|
|
|
146
149
|
return;
|
|
147
150
|
}
|
|
148
151
|
if (positional.length === 0) {
|
|
149
|
-
ctx.ui.notify(t(lang, "
|
|
152
|
+
ctx.ui.notify(t(lang, "config.usageHint"), "warning");
|
|
150
153
|
return;
|
|
151
154
|
}
|
|
152
155
|
const key = positional[0];
|
|
153
156
|
if (!isValidKey(key)) {
|
|
154
|
-
ctx.ui.notify(t(lang,
|
|
157
|
+
ctx.ui.notify(t(lang, "config.unknownKey", { key }), "warning");
|
|
155
158
|
return;
|
|
156
159
|
}
|
|
157
160
|
if (positional.length === 1) {
|
|
158
161
|
// Get single value
|
|
159
162
|
const { value, origin } = getSettingWithOrigin(key, ctx.cwd);
|
|
160
163
|
if (value === undefined) {
|
|
161
|
-
ctx.ui.notify(t(lang,
|
|
164
|
+
ctx.ui.notify(t(lang, "config.notSet", { key }), "info");
|
|
162
165
|
}
|
|
163
166
|
else {
|
|
164
167
|
ctx.ui.notify(showOrigin ? `${value} (${origin})` : String(value), "info");
|
|
@@ -179,7 +182,7 @@ export async function handleConfig(_pi, ctx, args) {
|
|
|
179
182
|
try {
|
|
180
183
|
if (showGlobal) {
|
|
181
184
|
saveGlobalSettings({ [key]: parsed });
|
|
182
|
-
ctx.ui.notify(t(lang,
|
|
185
|
+
ctx.ui.notify(t(lang, "config.savedToGlobal", { key, value: String(parsed) }), "info");
|
|
183
186
|
}
|
|
184
187
|
else {
|
|
185
188
|
// Default to local when inside a git repo
|
|
@@ -190,22 +193,27 @@ export async function handleConfig(_pi, ctx, args) {
|
|
|
190
193
|
if (!globalExists && !localExists) {
|
|
191
194
|
// グローバルもローカルもない場合:デフォルト値で初期化
|
|
192
195
|
saveLocalSettings({ ...DEFAULT_SETTINGS, [key]: parsed }, ctx.cwd);
|
|
193
|
-
ctx.ui.notify(t(lang,
|
|
196
|
+
ctx.ui.notify(t(lang, "config.savedToLocalInit", { key, value: String(parsed) }), "info");
|
|
194
197
|
}
|
|
195
198
|
else {
|
|
196
199
|
saveLocalSettings({ [key]: parsed }, ctx.cwd);
|
|
197
|
-
ctx.ui.notify(t(lang,
|
|
200
|
+
ctx.ui.notify(t(lang, "config.savedToLocal", { key, value: String(parsed) }), "info");
|
|
198
201
|
}
|
|
199
202
|
}
|
|
200
203
|
else {
|
|
201
204
|
// Fallback to global when not in a repo
|
|
202
205
|
saveGlobalSettings({ [key]: parsed });
|
|
203
|
-
ctx.ui.notify(t(lang,
|
|
206
|
+
ctx.ui.notify(t(lang, "config.savedToGlobalFallback", {
|
|
207
|
+
key,
|
|
208
|
+
value: String(parsed),
|
|
209
|
+
}), "info");
|
|
204
210
|
}
|
|
205
211
|
}
|
|
206
212
|
}
|
|
207
213
|
catch (err) {
|
|
208
|
-
ctx.ui.notify(t(lang,
|
|
214
|
+
ctx.ui.notify(t(lang, "config.saveFailed", {
|
|
215
|
+
error: err instanceof Error ? err.message : String(err),
|
|
216
|
+
}), "error");
|
|
209
217
|
}
|
|
210
218
|
}
|
|
211
219
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAKrC,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AACrC,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,WAAW,EACX,oBAAoB,EACpB,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAI9B,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,aAAa,CAAC,GAAa,EAAE,KAAa;IACjD,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,MAAM;YACT,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACrC,MAAM,IAAI,KAAK,CAAC,iBAAiB,KAAK,yBAAyB,CAAC,CAAC;YACnE,CAAC;YACD,OAAO,KAAK,CAAC;QACf,KAAK,iBAAiB;YACpB,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CACb,4BAA4B,KAAK,8BAA8B,CAChE,CAAC;YACJ,CAAC;YACD,OAAO,KAAK,KAAK,MAAM,CAAC;QAC1B,KAAK,gBAAgB;YACnB,gFAAgF;YAChF,OAAO,KAAK,CAAC;QACf;YACE,MAAM,IAAI,KAAK,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,GAAiB,EACjB,GAA4B,EAC5B,IAAY;IAEZ,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAElC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAExD,cAAc;IACd,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,UAAU;YAAE,UAAU,GAAG,IAAI,CAAC;aACvC,IAAI,KAAK,KAAK,QAAQ;YAAE,IAAI,GAAG,IAAI,CAAC;aACpC,IAAI,KAAK,KAAK,eAAe;YAAE,UAAU,GAAG,IAAI,CAAC;aACjD,IAAI,KAAK,KAAK,QAAQ;YAAE,IAAI,GAAG,IAAI,CAAC;aACpC,IAAI,KAAK,KAAK,UAAU;YAAE,MAAM,GAAG,IAAI,CAAC;aACxC,IAAI,KAAK,KAAK,QAAQ;YAAE,IAAI,GAAG,IAAI,CAAC;;YACpC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,GAAG,CAAC,EAAE,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* /git-diagnostics command
|
|
3
|
+
*
|
|
4
|
+
* Dumps P0 effectiveness measurement counters for inspection.
|
|
5
|
+
* Usage:
|
|
6
|
+
* /git-diagnostics Show all counters
|
|
7
|
+
* /git-diagnostics reset Reset all counters
|
|
8
|
+
* /git-diagnostics --help Show help
|
|
9
|
+
*/
|
|
10
|
+
import type { ExtensionAPI, ExtensionCommandContext } from "@earendil-works/pi-coding-agent";
|
|
11
|
+
export declare function handleDiagnostics(_pi: ExtensionAPI, ctx: ExtensionCommandContext, args: string): Promise<void>;
|
|
12
|
+
//# sourceMappingURL=diagnostics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/commands/diagnostics.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACxB,MAAM,iCAAiC,CAAC;AA+CzC,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,uBAAuB,EAC5B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAqBf"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* /git-diagnostics command
|
|
3
|
+
*
|
|
4
|
+
* Dumps P0 effectiveness measurement counters for inspection.
|
|
5
|
+
* Usage:
|
|
6
|
+
* /git-diagnostics Show all counters
|
|
7
|
+
* /git-diagnostics reset Reset all counters
|
|
8
|
+
* /git-diagnostics --help Show help
|
|
9
|
+
*/
|
|
10
|
+
import { diagReset, diagSnapshot } from "../utils/diagnostics.js";
|
|
11
|
+
function formatSnapshot(s) {
|
|
12
|
+
const lines = [
|
|
13
|
+
"[pi-git] Diagnostics",
|
|
14
|
+
"",
|
|
15
|
+
"── parseHunks repair layers ──",
|
|
16
|
+
` Layer 2 (direct JSON): ${s.parseLayer2_directJSON}`,
|
|
17
|
+
` Layer 3 (trailing strip): ${s.parseLayer3_trailingStrip}`,
|
|
18
|
+
` Layer 4 (regex extract): ${s.parseLayer4_regexExtract}`,
|
|
19
|
+
` Fallback (file-based): ${s.parseFallback_fileBased}`,
|
|
20
|
+
"",
|
|
21
|
+
"── auto-commit message quality ──",
|
|
22
|
+
` isGenericMessage: ${s.msgIsGeneric}`,
|
|
23
|
+
` refineTriggered: ${s.msgRefineTriggered}`,
|
|
24
|
+
` refineUsedAI: ${s.msgRefineUsedAI}`,
|
|
25
|
+
"",
|
|
26
|
+
"── commit message sanitization ──",
|
|
27
|
+
` sanitize called: ${s.msgSanitized}`,
|
|
28
|
+
` sanitize changed (invalid): ${s.msgSanitizeChanged}`,
|
|
29
|
+
];
|
|
30
|
+
const totalParses = s.parseLayer2_directJSON +
|
|
31
|
+
s.parseLayer3_trailingStrip +
|
|
32
|
+
s.parseLayer4_regexExtract +
|
|
33
|
+
s.parseFallback_fileBased;
|
|
34
|
+
if (totalParses > 0) {
|
|
35
|
+
const repairRate = ((s.parseLayer3_trailingStrip + s.parseLayer4_regexExtract) /
|
|
36
|
+
totalParses) *
|
|
37
|
+
100;
|
|
38
|
+
const fallbackRate = (s.parseFallback_fileBased / totalParses) * 100;
|
|
39
|
+
lines.push("", `── summary ──`, ` Total parse calls: ${totalParses}`, ` Repair rate (L3+L4): ${repairRate.toFixed(1)}%`, ` Fallback rate: ${fallbackRate.toFixed(1)}%`);
|
|
40
|
+
}
|
|
41
|
+
return lines.join("\n");
|
|
42
|
+
}
|
|
43
|
+
export async function handleDiagnostics(_pi, ctx, args) {
|
|
44
|
+
if (!ctx.hasUI)
|
|
45
|
+
return;
|
|
46
|
+
const trimmed = args.trim().toLowerCase();
|
|
47
|
+
if (trimmed === "--help") {
|
|
48
|
+
ctx.ui.notify("/git-diagnostics [reset] [--help]\n\nShow P0 effectiveness measurement counters.\n\nSubcommands:\n reset Reset all counters to zero", "info");
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
if (trimmed === "reset") {
|
|
52
|
+
diagReset();
|
|
53
|
+
ctx.ui.notify("[pi-git] Diagnostic counters reset.", "info");
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
const snapshot = diagSnapshot();
|
|
57
|
+
ctx.ui.notify(formatSnapshot(snapshot), "info");
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=diagnostics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../src/commands/diagnostics.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAqB,MAAM,yBAAyB,CAAC;AAErF,SAAS,cAAc,CAAC,CAAe;IACrC,MAAM,KAAK,GAAa;QACtB,sBAAsB;QACtB,EAAE;QACF,gCAAgC;QAChC,gCAAgC,CAAC,CAAC,sBAAsB,EAAE;QAC1D,gCAAgC,CAAC,CAAC,yBAAyB,EAAE;QAC7D,gCAAgC,CAAC,CAAC,wBAAwB,EAAE;QAC5D,gCAAgC,CAAC,CAAC,uBAAuB,EAAE;QAC3D,EAAE;QACF,mCAAmC;QACnC,gCAAgC,CAAC,CAAC,YAAY,EAAE;QAChD,gCAAgC,CAAC,CAAC,kBAAkB,EAAE;QACtD,gCAAgC,CAAC,CAAC,eAAe,EAAE;QACnD,EAAE;QACF,mCAAmC;QACnC,gCAAgC,CAAC,CAAC,YAAY,EAAE;QAChD,iCAAiC,CAAC,CAAC,kBAAkB,EAAE;KACxD,CAAC;IAEF,MAAM,WAAW,GACf,CAAC,CAAC,sBAAsB;QACxB,CAAC,CAAC,yBAAyB;QAC3B,CAAC,CAAC,wBAAwB;QAC1B,CAAC,CAAC,uBAAuB,CAAC;IAE5B,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,UAAU,GACd,CAAC,CAAC,CAAC,CAAC,yBAAyB,GAAG,CAAC,CAAC,wBAAwB,CAAC;YACzD,WAAW,CAAC;YACd,GAAG,CAAC;QACN,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,uBAAuB,GAAG,WAAW,CAAC,GAAG,GAAG,CAAC;QACrE,KAAK,CAAC,IAAI,CACR,EAAE,EACF,eAAe,EACf,+BAA+B,WAAW,EAAE,EAC5C,+BAA+B,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EACvD,+BAA+B,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAC1D,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAiB,EACjB,GAA4B,EAC5B,IAAY;IAEZ,IAAI,CAAC,GAAG,CAAC,KAAK;QAAE,OAAO;IAEvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE1C,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,GAAG,CAAC,EAAE,CAAC,MAAM,CACX,uIAAuI,EACvI,MAAM,CACP,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,SAAS,EAAE,CAAC;QACZ,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,qCAAqC,EAAE,MAAM,CAAC,CAAC;QAC7D,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-commit-message.d.ts","sourceRoot":"","sources":["../../src/core/auto-commit-message.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EACjB,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"auto-commit-message.d.ts","sourceRoot":"","sources":["../../src/core/auto-commit-message.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EACjB,MAAM,iCAAiC,CAAC;AAOzC,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3B;AAuSD,wBAAsB,yBAAyB,CAC7C,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,aAAa,EAAE,EACzB,YAAY,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,MAAM,CAAC,CAuEjB"}
|