git-coco 0.48.0 → 0.50.0
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 +3 -2
- package/dist/index.d.ts +75 -1
- package/dist/index.esm.mjs +6582 -745
- package/dist/index.js +6561 -732
- package/dist/tree-sitter/tree-sitter-tsx.wasm +0 -0
- package/dist/tree-sitter/tree-sitter-typescript.wasm +0 -0
- package/dist/tree-sitter/web-tree-sitter.wasm +0 -0
- package/package.json +10 -4
package/README.md
CHANGED
|
@@ -15,10 +15,11 @@ An AI-powered git assistant that generates meaningful commit messages, creates c
|
|
|
15
15
|
**✨ Key Features:**
|
|
16
16
|
|
|
17
17
|
- 🤖 **AI-Powered Commit Messages** - Generate contextual commits from your staged changes
|
|
18
|
-
- 📋 **Conventional Commits** - Full support with automatic validation and formatting
|
|
18
|
+
- 📋 **Conventional Commits** - Full support with automatic validation and formatting (extends to `coco commit --split` too — every group's title respects the spec)
|
|
19
19
|
- 🔧 **Commitlint Integration** - Seamless integration with your existing commitlint configuration
|
|
20
20
|
- 🏠 **Local AI Support** - Run completely offline with Ollama (no API costs, full privacy)
|
|
21
|
-
- 🖥️ **Coco UI Git Workstation** -
|
|
21
|
+
- 🖥️ **Coco UI Git Workstation** - Thirteen top-level views (history, status, diff, compose, branches, tags, stash, worktrees, pull-request, conflicts, reflog, bisect, changelog) reachable via `g`-prefixed chords, with an interactive command palette (`:`), global search (`/`), and one-keystroke workflows: `S` split staged changes, `L` generate a changelog, `C` create a PR seeded from changelog, `E` open the commit draft in `$EDITOR`
|
|
22
|
+
- 🎯 **`--repo <dir>` global flag** - Drive any coco command against any repository without `cd`-ing first
|
|
22
23
|
- 📦 **Package Manager Friendly** - Works with npm, yarn, and pnpm
|
|
23
24
|
- 👥 **Team Ready** - Shared configurations and enterprise deployment
|
|
24
25
|
|
package/dist/index.d.ts
CHANGED
|
@@ -127,6 +127,38 @@ type BaseLLMService = {
|
|
|
127
127
|
* @default false
|
|
128
128
|
*/
|
|
129
129
|
markdown?: boolean;
|
|
130
|
+
/**
|
|
131
|
+
* Language-aware structural fast path (#883). Replace the LLM
|
|
132
|
+
* summary with a symbol-level extract ("added parseRequest();
|
|
133
|
+
* removed legacyParse()") for source files in the listed
|
|
134
|
+
* languages. Off by default; quality is harder to validate than
|
|
135
|
+
* the markdown fast path so we don't enable it without opt-in.
|
|
136
|
+
*
|
|
137
|
+
* Diffs without top-level structural signals (paragraph-only
|
|
138
|
+
* body edits, formatting changes) still go to the LLM regardless
|
|
139
|
+
* of this flag.
|
|
140
|
+
*
|
|
141
|
+
* Currently supports:
|
|
142
|
+
* - 'ts' : `.ts` / `.tsx` / `.mts` / `.cts`
|
|
143
|
+
* - 'js' : `.js` / `.jsx` / `.mjs` / `.cjs`
|
|
144
|
+
* - 'py' : `.py` / `.pyi`
|
|
145
|
+
* - 'rs' : `.rs`
|
|
146
|
+
* - 'go' : `.go`
|
|
147
|
+
*/
|
|
148
|
+
languageAware?: {
|
|
149
|
+
/**
|
|
150
|
+
* Master switch. When false (default) the languageAware path
|
|
151
|
+
* is skipped entirely regardless of `languages`.
|
|
152
|
+
*
|
|
153
|
+
* @default false
|
|
154
|
+
*/
|
|
155
|
+
enabled?: boolean;
|
|
156
|
+
/**
|
|
157
|
+
* Languages to opt in. Omit / empty to enable all supported
|
|
158
|
+
* languages.
|
|
159
|
+
*/
|
|
160
|
+
languages?: ('ts' | 'js' | 'py' | 'rs' | 'go')[];
|
|
161
|
+
};
|
|
130
162
|
};
|
|
131
163
|
};
|
|
132
164
|
type Authentication = {
|
|
@@ -284,11 +316,33 @@ interface BaseArgvOptions {
|
|
|
284
316
|
verbose: boolean;
|
|
285
317
|
version: boolean;
|
|
286
318
|
help: boolean;
|
|
319
|
+
/**
|
|
320
|
+
* Repository directory to operate against. When set, the command
|
|
321
|
+
* chdir's to this path before loading config / opening a git
|
|
322
|
+
* instance, so every downstream read (config lookup, simple-git
|
|
323
|
+
* baseDir, commitlint discovery, etc.) sees the same root.
|
|
324
|
+
*
|
|
325
|
+
* `--cwd` is an alias.
|
|
326
|
+
*
|
|
327
|
+
* Inherited by every coco subcommand so scripts / editor wrappers
|
|
328
|
+
* / scenario tests can target arbitrary repos without `cd`-ing
|
|
329
|
+
* first. Defaults to `process.cwd()` when omitted (unchanged
|
|
330
|
+
* behavior for users who launch via the regular `cd && coco ...`
|
|
331
|
+
* path).
|
|
332
|
+
*/
|
|
333
|
+
repo?: string;
|
|
287
334
|
}
|
|
288
335
|
interface BaseCommandOptions extends BaseArgvOptions {
|
|
289
336
|
}
|
|
290
337
|
|
|
291
338
|
interface CacheOptions extends BaseCommandOptions {
|
|
339
|
+
/**
|
|
340
|
+
* Positional list of language identifiers / aliases for the
|
|
341
|
+
* `prefetch` subcommand. Empty → interactive checkbox picker.
|
|
342
|
+
* Recognized values mirror the `COCO_PREFETCH` env-var grammar:
|
|
343
|
+
* `py`, `python`, `rs`, `rust`, `go`, `golang`, `all`.
|
|
344
|
+
*/
|
|
345
|
+
languages?: string[];
|
|
292
346
|
}
|
|
293
347
|
type CacheArgv = Arguments<CacheOptions>;
|
|
294
348
|
|
|
@@ -296,7 +350,9 @@ declare const _default$7: {
|
|
|
296
350
|
command: string;
|
|
297
351
|
desc: string;
|
|
298
352
|
builder: (yargs: yargs.Argv) => yargs.Argv<{
|
|
299
|
-
subcommand: "clear" | "info" | undefined;
|
|
353
|
+
subcommand: "clear" | "info" | "parsers" | "prefetch" | "clear-parsers" | undefined;
|
|
354
|
+
} & {
|
|
355
|
+
languages: string[] | undefined;
|
|
300
356
|
}>;
|
|
301
357
|
handler: (argv: CacheArgv) => Promise<void>;
|
|
302
358
|
};
|
|
@@ -370,6 +426,7 @@ declare const _default$3: {
|
|
|
370
426
|
verbose: boolean;
|
|
371
427
|
version: boolean;
|
|
372
428
|
help: boolean;
|
|
429
|
+
repo?: string | undefined;
|
|
373
430
|
_: (string | number)[];
|
|
374
431
|
$0: string;
|
|
375
432
|
} | Promise<{
|
|
@@ -380,6 +437,7 @@ declare const _default$3: {
|
|
|
380
437
|
verbose: boolean;
|
|
381
438
|
version: boolean;
|
|
382
439
|
help: boolean;
|
|
440
|
+
repo?: string | undefined;
|
|
383
441
|
_: (string | number)[];
|
|
384
442
|
$0: string;
|
|
385
443
|
}>) => Promise<void>;
|
|
@@ -575,6 +633,22 @@ interface BaseParserOptions {
|
|
|
575
633
|
* @default false
|
|
576
634
|
*/
|
|
577
635
|
markdown?: boolean;
|
|
636
|
+
/**
|
|
637
|
+
* Language-aware structural fast path (#883). Replaces the LLM
|
|
638
|
+
* summary with a symbol-level extract ("added parseRequest();
|
|
639
|
+
* removed legacyParse()") for source files in the listed
|
|
640
|
+
* languages. Off by default — lossy by design, and quality is
|
|
641
|
+
* harder to validate than the markdown fast path.
|
|
642
|
+
*/
|
|
643
|
+
languageAware?: {
|
|
644
|
+
enabled?: boolean;
|
|
645
|
+
/**
|
|
646
|
+
* Languages to opt in. Omit / empty to enable all currently
|
|
647
|
+
* supported languages. Today: 'ts' (covers .ts/.tsx/.mts/.cts),
|
|
648
|
+
* 'js' (covers .js/.jsx/.mjs/.cjs).
|
|
649
|
+
*/
|
|
650
|
+
languages?: ('ts' | 'js' | 'py' | 'rs' | 'go')[];
|
|
651
|
+
};
|
|
578
652
|
};
|
|
579
653
|
metadata?: Partial<LlmCallMetadata>;
|
|
580
654
|
}
|