githits 0.4.1 → 0.4.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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.plugin/plugin.json +1 -1
- package/dist/cli.js +48 -52
- package/dist/index.js +1 -1
- package/dist/shared/{chunk-f2ah8xnh.js → chunk-jdygt0ra.js} +1 -1
- package/dist/shared/{chunk-xzq0ecpa.js → chunk-q2mre780.js} +2 -2
- package/dist/shared/{chunk-rgvmtzjt.js → chunk-v8sths32.js} +1 -1
- package/gemini-extension.json +1 -1
- package/package.json +1 -1
- package/plugins/claude/.claude-plugin/plugin.json +1 -1
package/.plugin/plugin.json
CHANGED
package/dist/cli.js
CHANGED
|
@@ -49,11 +49,11 @@ import {
|
|
|
49
49
|
shouldRunUpdateCheck,
|
|
50
50
|
startTelemetrySpan,
|
|
51
51
|
withTelemetrySpan
|
|
52
|
-
} from "./shared/chunk-
|
|
52
|
+
} from "./shared/chunk-v8sths32.js";
|
|
53
53
|
import {
|
|
54
54
|
__require,
|
|
55
55
|
version
|
|
56
|
-
} from "./shared/chunk-
|
|
56
|
+
} from "./shared/chunk-jdygt0ra.js";
|
|
57
57
|
|
|
58
58
|
// src/cli.ts
|
|
59
59
|
import { Command } from "commander";
|
|
@@ -411,6 +411,19 @@ function dim(text, useColors) {
|
|
|
411
411
|
}
|
|
412
412
|
|
|
413
413
|
// src/shared/pkgseer-registry.ts
|
|
414
|
+
var PKGSEER_REGISTRY_ARGS = [
|
|
415
|
+
"npm",
|
|
416
|
+
"pypi",
|
|
417
|
+
"hex",
|
|
418
|
+
"crates",
|
|
419
|
+
"nuget",
|
|
420
|
+
"maven",
|
|
421
|
+
"zig",
|
|
422
|
+
"vcpkg",
|
|
423
|
+
"packagist",
|
|
424
|
+
"rubygems",
|
|
425
|
+
"go"
|
|
426
|
+
];
|
|
414
427
|
var registryMap = {
|
|
415
428
|
npm: "NPM",
|
|
416
429
|
pypi: "PYPI",
|
|
@@ -420,8 +433,11 @@ var registryMap = {
|
|
|
420
433
|
maven: "MAVEN",
|
|
421
434
|
zig: "ZIG",
|
|
422
435
|
vcpkg: "VCPKG",
|
|
423
|
-
packagist: "PACKAGIST"
|
|
436
|
+
packagist: "PACKAGIST",
|
|
437
|
+
rubygems: "RUBYGEMS",
|
|
438
|
+
go: "GO"
|
|
424
439
|
};
|
|
440
|
+
var PKGSEER_REGISTRY_LIST = PKGSEER_REGISTRY_ARGS.join(", ");
|
|
425
441
|
function toPkgseerRegistry(registry) {
|
|
426
442
|
return registryMap[registry];
|
|
427
443
|
}
|
|
@@ -688,22 +704,12 @@ function isInvalidArgumentError(error2) {
|
|
|
688
704
|
return error2.name.startsWith("Invalid") || error2.name.startsWith("Unsupported");
|
|
689
705
|
}
|
|
690
706
|
// src/shared/package-spec.ts
|
|
691
|
-
var KNOWN_REGISTRIES =
|
|
692
|
-
"npm",
|
|
693
|
-
"pypi",
|
|
694
|
-
"hex",
|
|
695
|
-
"crates",
|
|
696
|
-
"nuget",
|
|
697
|
-
"maven",
|
|
698
|
-
"zig",
|
|
699
|
-
"vcpkg",
|
|
700
|
-
"packagist"
|
|
701
|
-
];
|
|
707
|
+
var KNOWN_REGISTRIES = PKGSEER_REGISTRY_ARGS;
|
|
702
708
|
|
|
703
709
|
class UnsupportedRegistryError extends Error {
|
|
704
710
|
attempted;
|
|
705
711
|
constructor(attempted) {
|
|
706
|
-
super(`Unsupported registry "${attempted}". Supported: ${
|
|
712
|
+
super(`Unsupported registry "${attempted}". Supported: ${PKGSEER_REGISTRY_LIST}.`);
|
|
707
713
|
this.attempted = attempted;
|
|
708
714
|
this.name = "UnsupportedRegistryError";
|
|
709
715
|
}
|
|
@@ -1764,7 +1770,7 @@ function buildListPackageDocsParams(input) {
|
|
|
1764
1770
|
}
|
|
1765
1771
|
const registry = input.registry?.trim().toLowerCase() ?? "";
|
|
1766
1772
|
if (!isKnownPkgseerRegistryArg(registry)) {
|
|
1767
|
-
throw new UnsupportedRegistryError(`Unsupported registry '${input.registry}'. Supported:
|
|
1773
|
+
throw new UnsupportedRegistryError(`Unsupported registry '${input.registry}'. Supported: ${PKGSEER_REGISTRY_LIST}.`);
|
|
1768
1774
|
}
|
|
1769
1775
|
const params = {
|
|
1770
1776
|
registry: toPkgseerRegistry(registry),
|
|
@@ -2012,9 +2018,11 @@ var SUPPORTED_DEPS_REGISTRIES = new Set([
|
|
|
2012
2018
|
"HEX",
|
|
2013
2019
|
"CRATES",
|
|
2014
2020
|
"VCPKG",
|
|
2015
|
-
"ZIG"
|
|
2021
|
+
"ZIG",
|
|
2022
|
+
"RUBYGEMS",
|
|
2023
|
+
"GO"
|
|
2016
2024
|
]);
|
|
2017
|
-
var SUPPORTED_DEPS_REGISTRIES_HUMAN = "npm, pypi, hex, crates, vcpkg, and
|
|
2025
|
+
var SUPPORTED_DEPS_REGISTRIES_HUMAN = "npm, pypi, hex, crates, vcpkg, zig, rubygems, and go";
|
|
2018
2026
|
function supportsDependenciesRegistry(registry) {
|
|
2019
2027
|
return SUPPORTED_DEPS_REGISTRIES.has(registry);
|
|
2020
2028
|
}
|
|
@@ -2025,7 +2033,7 @@ function buildPackageDependenciesParams(input) {
|
|
|
2025
2033
|
}
|
|
2026
2034
|
const normalisedRegistryArg = input.registry?.trim().toLowerCase() ?? "";
|
|
2027
2035
|
if (!isKnownPkgseerRegistryArg(normalisedRegistryArg)) {
|
|
2028
|
-
throw new UnsupportedRegistryError(`Unsupported registry '${input.registry}'. Supported:
|
|
2036
|
+
throw new UnsupportedRegistryError(`Unsupported registry '${input.registry}'. Supported: ${PKGSEER_REGISTRY_LIST}.`);
|
|
2029
2037
|
}
|
|
2030
2038
|
const registry = toPkgseerRegistry(normalisedRegistryArg);
|
|
2031
2039
|
if (!supportsDependenciesRegistry(registry)) {
|
|
@@ -2831,7 +2839,7 @@ function buildPackageSummaryParams(input) {
|
|
|
2831
2839
|
}
|
|
2832
2840
|
const normalisedRegistry = input.registry?.trim().toLowerCase() ?? "";
|
|
2833
2841
|
if (!isKnownPkgseerRegistryArg(normalisedRegistry)) {
|
|
2834
|
-
throw new UnsupportedRegistryError(`Unsupported registry '${input.registry}'. Supported:
|
|
2842
|
+
throw new UnsupportedRegistryError(`Unsupported registry '${input.registry}'. Supported: ${PKGSEER_REGISTRY_LIST}.`);
|
|
2835
2843
|
}
|
|
2836
2844
|
return {
|
|
2837
2845
|
params: {
|
|
@@ -3233,7 +3241,7 @@ function buildPackageVulnerabilitiesParams(input) {
|
|
|
3233
3241
|
}
|
|
3234
3242
|
const normalisedRegistryArg = input.registry?.trim().toLowerCase() ?? "";
|
|
3235
3243
|
if (!isKnownPkgseerRegistryArg(normalisedRegistryArg)) {
|
|
3236
|
-
throw new UnsupportedRegistryError(`Unsupported registry '${input.registry}'. Supported:
|
|
3244
|
+
throw new UnsupportedRegistryError(`Unsupported registry '${input.registry}'. Supported: ${PKGSEER_REGISTRY_LIST}.`);
|
|
3237
3245
|
}
|
|
3238
3246
|
const registry = toPkgseerRegistry(normalisedRegistryArg);
|
|
3239
3247
|
if (!supportsVulnerabilitiesRegistry(registry)) {
|
|
@@ -4328,6 +4336,7 @@ async function loginFlow(options, deps, output = stdoutLoginOutput) {
|
|
|
4328
4336
|
callback = await Promise.race([callbackServer.result, timeoutPromise]);
|
|
4329
4337
|
if (timeoutId)
|
|
4330
4338
|
clearTimeout(timeoutId);
|
|
4339
|
+
await callbackServer.close().catch(() => {});
|
|
4331
4340
|
} catch (error2) {
|
|
4332
4341
|
if (timeoutId)
|
|
4333
4342
|
clearTimeout(timeoutId);
|
|
@@ -6084,7 +6093,7 @@ function buildCliListFilesParams(input) {
|
|
|
6084
6093
|
throw new InvalidPackageSpecError(rewritten);
|
|
6085
6094
|
}
|
|
6086
6095
|
}
|
|
6087
|
-
var REGISTRY_SPEC_HINT =
|
|
6096
|
+
var REGISTRY_SPEC_HINT = new RegExp(`^(${PKGSEER_REGISTRY_ARGS.join("|")}):`, "i");
|
|
6088
6097
|
function resolvePositionals(firstArg, secondArg, hasRepoUrl) {
|
|
6089
6098
|
if (hasRepoUrl) {
|
|
6090
6099
|
if (secondArg !== undefined) {
|
|
@@ -6110,8 +6119,7 @@ and \`githits code grep\`.
|
|
|
6110
6119
|
filters intersect on top.
|
|
6111
6120
|
|
|
6112
6121
|
Addressing: <spec> (registry:name[@version]) OR --repo-url <url>
|
|
6113
|
-
--git-ref <ref>. Supported registries:
|
|
6114
|
-
vcpkg, zig, nuget, maven, packagist.
|
|
6122
|
+
--git-ref <ref>. Supported registries: ${PKGSEER_REGISTRY_LIST}.
|
|
6115
6123
|
|
|
6116
6124
|
By default each result is a bare path for easy piping; pass
|
|
6117
6125
|
--verbose to include language / file-type / size annotations.
|
|
@@ -6263,7 +6271,7 @@ grep run. --symbol-field hydrates enclosing symbol metadata (appears under each
|
|
|
6263
6271
|
match in --verbose output; full payload in --json).`;
|
|
6264
6272
|
function registerCodeGrepCommand(pkgCommand) {
|
|
6265
6273
|
return pkgCommand.command("grep").summary("Deterministic text grep over indexed dependency source").description(PKG_GREP_DESCRIPTION).argument("[spec-or-pattern]", "Spec mode: package spec (e.g. npm:express). Repo mode (with --repo-url): the pattern.").argument("[pattern-or-prefix]", "Spec mode: the pattern. Repo mode: optional path-prefix.").argument("[path-prefix]", "Spec mode only: optional path-prefix. Ignored with --repo-url.").option("--repo-url <url>", "Repository URL addressing (requires --git-ref)").option("--git-ref <ref>", "Tag, commit, branch, or HEAD. Required with --repo-url.").option("--path <path>", "Exact file path to grep").option("--glob <glob>", "Glob scope (repeatable)", collectRepeatable2, []).option("--ext <ext>", "Extension filter without leading dot (repeatable)", collectRepeatable2, []).option("--regex", "Interpret the pattern as RE2 regex").option("--case-sensitive", "Enable ASCII case-sensitive matching").option("-C, --context <n>", "Context lines before and after each match (0-10)").option("-B, --before-context <n>", "Context lines before each match (0-10)").option("-A, --after-context <n>", "Context lines after each match (0-10)").option("--exclude-docs", "Skip files classified as documentation").option("--exclude-tests", "Skip files classified as tests").option("--limit <n>", "Max matches to return on this page (1-1000, default 50)").option("--per-file-limit <n>", "Cap matches per file within this page (0-1000, 0 = unlimited)").option("--cursor <cursor>", "Opaque nextCursor from a previous grep result").option("--symbol-field <field>", `Repeatable; surfaces in --json and under each --verbose match. ${GREP_REPO_SYMBOL_FIELDS_NOTE}`, collectRepeatable2, []).option("--wait <ms>", `Indexing wait timeout (0-${MAX_WAIT_TIMEOUT_MS}, default ${DEFAULT_WAIT_TIMEOUT_MS})`).option("-v, --verbose", "Render grouped output with file headers").option("--json", "Emit the JSON envelope").action(async (arg1, arg2, arg3, options) => {
|
|
6266
|
-
const { createContainer: createContainer2 } = await import("./shared/chunk-
|
|
6274
|
+
const { createContainer: createContainer2 } = await import("./shared/chunk-q2mre780.js");
|
|
6267
6275
|
const deps = await createContainer2();
|
|
6268
6276
|
await pkgGrepAction(arg1, arg2, arg3, options, {
|
|
6269
6277
|
codeNavigationService: deps.codeNavigationService,
|
|
@@ -6797,7 +6805,7 @@ function registerExampleCommand(program) {
|
|
|
6797
6805
|
});
|
|
6798
6806
|
}
|
|
6799
6807
|
async function loadContainer() {
|
|
6800
|
-
const { createContainer: createContainer2 } = await import("./shared/chunk-
|
|
6808
|
+
const { createContainer: createContainer2 } = await import("./shared/chunk-q2mre780.js");
|
|
6801
6809
|
return createContainer2();
|
|
6802
6810
|
}
|
|
6803
6811
|
// src/commands/feedback.ts
|
|
@@ -7969,17 +7977,7 @@ import { z as z4 } from "zod";
|
|
|
7969
7977
|
// src/tools/code-navigation-shared.ts
|
|
7970
7978
|
import { z as z3 } from "zod";
|
|
7971
7979
|
var structuredCodeTargetSchema = z3.object({
|
|
7972
|
-
registry: z3.enum(
|
|
7973
|
-
"npm",
|
|
7974
|
-
"pypi",
|
|
7975
|
-
"hex",
|
|
7976
|
-
"crates",
|
|
7977
|
-
"nuget",
|
|
7978
|
-
"maven",
|
|
7979
|
-
"zig",
|
|
7980
|
-
"vcpkg",
|
|
7981
|
-
"packagist"
|
|
7982
|
-
]).optional().describe("Package registry (npm, pypi, hex, etc.). Required for package scope."),
|
|
7980
|
+
registry: z3.enum(PKGSEER_REGISTRY_ARGS).optional().describe(`Package registry (${PKGSEER_REGISTRY_LIST}). Required for package scope.`),
|
|
7983
7981
|
package_name: z3.string().max(255).optional().describe("Package name. Required for package scope."),
|
|
7984
7982
|
version: z3.string().max(100).optional().describe("Package version, e.g. '4.18.2' (defaults to latest). For package scope only."),
|
|
7985
7983
|
repo_url: z3.string().optional().describe("Repository URL (GitHub). Required for repo scope. Example: https://github.com/expressjs/express"),
|
|
@@ -8232,7 +8230,7 @@ function isTextFormat3(format) {
|
|
|
8232
8230
|
// src/tools/list-package-docs.ts
|
|
8233
8231
|
import { z as z6 } from "zod";
|
|
8234
8232
|
var schema5 = {
|
|
8235
|
-
registry: z6.string().describe(
|
|
8233
|
+
registry: z6.string().describe(`Package registry. One of: ${PKGSEER_REGISTRY_LIST}.`),
|
|
8236
8234
|
package_name: z6.string().describe("Package name (scoped names ok: @types/node)."),
|
|
8237
8235
|
version: z6.string().optional().describe("Optional package version."),
|
|
8238
8236
|
limit: z6.number().optional().describe("Max pages to return (1-500, default 100)."),
|
|
@@ -8339,7 +8337,7 @@ function resolveAddressing(input) {
|
|
|
8339
8337
|
}
|
|
8340
8338
|
const normalisedRegistryArg = input.registry?.trim().toLowerCase() ?? "";
|
|
8341
8339
|
if (!isKnownPkgseerRegistryArg(normalisedRegistryArg)) {
|
|
8342
|
-
throw new UnsupportedRegistryError(`Unsupported registry '${input.registry}'. Supported:
|
|
8340
|
+
throw new UnsupportedRegistryError(`Unsupported registry '${input.registry}'. Supported: ${PKGSEER_REGISTRY_LIST}.`);
|
|
8343
8341
|
}
|
|
8344
8342
|
const registry = toPkgseerRegistry(normalisedRegistryArg);
|
|
8345
8343
|
return { registry, packageName };
|
|
@@ -8546,7 +8544,7 @@ function stripAnsi(text) {
|
|
|
8546
8544
|
|
|
8547
8545
|
// src/tools/package-changelog.ts
|
|
8548
8546
|
var schema6 = {
|
|
8549
|
-
registry: z7.string().optional().describe(
|
|
8547
|
+
registry: z7.string().optional().describe(`Package registry (with \`package_name\`). Mutually exclusive with \`repo_url\`. Supported: ${PKGSEER_REGISTRY_LIST}.`),
|
|
8550
8548
|
package_name: z7.string().optional().describe("Package name (with `registry`). Scoped names ok (`@types/node`). Mutually exclusive with `repo_url`."),
|
|
8551
8549
|
repo_url: z7.string().optional().describe("GitHub repository URL (https://…). Mutually exclusive with `registry` + `package_name`. Use when agents have a repo URL without a registry mapping."),
|
|
8552
8550
|
from_version: z7.string().optional().describe("Start of version range. When set, the response returns every entry between `from_version` and `to_version` (or latest) with no count cap — range mode. Mutually exclusive with `limit`. Tag-style `v`-prefixed inputs are rejected."),
|
|
@@ -8556,7 +8554,7 @@ var schema6 = {
|
|
|
8556
8554
|
include_bodies: z7.boolean().optional().describe("When false, each entry in `entries.items[]` omits its `body` field. Default true. Set false when you only need the version / date / URL timeline — drops 10 KB+ per entry on large release notes."),
|
|
8557
8555
|
format: z7.enum(["json", "text", "text-v1"]).optional().describe("Response format. Default `text-v1` is compact for agents. Pass `json` for the structured envelope.")
|
|
8558
8556
|
};
|
|
8559
|
-
var DESCRIPTION6 = "Release notes for a package or GitHub repo, newest-first. Default " + "latest mode returns the ten most recent entries (`limit` 1–50). " + "With `from_version`, returns every entry in the " + "`[from_version, to_version]` range (range mode, no count cap). " + "Address via `registry` + `package_name` or `repo_url` (mutually " + 'exclusive). Response includes optional `source` (`"releases"` / ' + '`"changelog_file"` / `"hexdocs"`) when a concrete changelog source ' + 'exists, `mode` (`"latest"` or `"range"`), ' + 'and entries with markdown body previews. Pass `format: "json"` ' + "for the structured envelope with full markdown bodies. Set " + "`include_bodies: false` for a version / date / URL timeline only. " + "Package-version entries without changelog text succeed with `source` " + "omitted; no-source plus no entries returns `NOT_FOUND`. Supports npm, " + "PyPI, Hex, Crates, vcpkg, Zig, NuGet, Maven, Packagist.";
|
|
8557
|
+
var DESCRIPTION6 = "Release notes for a package or GitHub repo, newest-first. Default " + "latest mode returns the ten most recent entries (`limit` 1–50). " + "With `from_version`, returns every entry in the " + "`[from_version, to_version]` range (range mode, no count cap). " + "Address via `registry` + `package_name` or `repo_url` (mutually " + 'exclusive). Response includes optional `source` (`"releases"` / ' + '`"changelog_file"` / `"hexdocs"`) when a concrete changelog source ' + 'exists, `mode` (`"latest"` or `"range"`), ' + 'and entries with markdown body previews. Pass `format: "json"` ' + "for the structured envelope with full markdown bodies. Set " + "`include_bodies: false` for a version / date / URL timeline only. " + "Package-version entries without changelog text succeed with `source` " + "omitted; no-source plus no entries returns `NOT_FOUND`. Supports npm, " + "PyPI, Hex, Crates, vcpkg, Zig, NuGet, Maven, Packagist, RubyGems, Go.";
|
|
8560
8558
|
function createPackageChangelogTool(service) {
|
|
8561
8559
|
return {
|
|
8562
8560
|
name: "pkg_changelog",
|
|
@@ -8621,7 +8619,7 @@ function isTextFormat5(format) {
|
|
|
8621
8619
|
// src/tools/package-dependencies.ts
|
|
8622
8620
|
import { z as z8 } from "zod";
|
|
8623
8621
|
var schema7 = {
|
|
8624
|
-
registry: z8.string().describe(
|
|
8622
|
+
registry: z8.string().describe(`Package registry. Dependency data is available on ${SUPPORTED_DEPS_REGISTRIES_HUMAN}.`),
|
|
8625
8623
|
package_name: z8.string().describe("Package name (scoped names ok: @types/node)."),
|
|
8626
8624
|
version: z8.string().optional().describe("Specific version to inspect. Defaults to latest when omitted. Tag-style inputs with a leading `v` (for example `v4.18.0`) are rejected — pass the canonical version (`4.18.0`)."),
|
|
8627
8625
|
lifecycle: z8.union([z8.string(), z8.array(z8.string())]).optional().describe("Lifecycle breadth. Omit for runtime-only. Use `runtime` for explicit runtime-only, a concrete non-runtime lifecycle (`development`, `build`, `peer`, `optional`) for runtime plus matching groups, or `all` for runtime plus all available groups. Accepts a single value, a comma-separated string, or an array; `all` cannot be combined with other values. Uppercase is tolerated."),
|
|
@@ -8630,7 +8628,7 @@ var schema7 = {
|
|
|
8630
8628
|
max_depth: z8.number().int().min(1).max(10).optional().describe("Cap the transitive traversal at this depth (1–10). Omit to get the backend's full graph. Requires `include_transitive: true` — passing `max_depth` without the transitive flag is rejected with `INVALID_ARGUMENT`."),
|
|
8631
8629
|
format: z8.enum(["json", "text", "text-v1"]).optional().describe("Response format. Default `text-v1` is compact for agents. Pass `json` for the structured envelope.")
|
|
8632
8630
|
};
|
|
8633
|
-
var DESCRIPTION7 = "Analyze a package's dependency graph. Default output is compact " + "text listing direct runtime dependencies with resolved versions; " + 'pass `format: "json"` for the structured envelope. Non-runtime ' + "groups are omitted by default for token efficiency. Use `lifecycle` " + "with a concrete value for runtime plus matching groups, or `all` " + "for runtime plus all available groups. Set " + "`include_transitive: true` to add a `transitive` block with the " + "full install footprint, conflict detection, and circular-" + "dependency flags; layer `include_importers: true` on top when you " + "also need per-package provenance. Supports npm, PyPI, Hex, Crates, " + "vcpkg, and Zig.";
|
|
8631
|
+
var DESCRIPTION7 = "Analyze a package's dependency graph. Default output is compact " + "text listing direct runtime dependencies with resolved versions; " + 'pass `format: "json"` for the structured envelope. Non-runtime ' + "groups are omitted by default for token efficiency. Use `lifecycle` " + "with a concrete value for runtime plus matching groups, or `all` " + "for runtime plus all available groups. Set " + "`include_transitive: true` to add a `transitive` block with the " + "full install footprint, conflict detection, and circular-" + "dependency flags; layer `include_importers: true` on top when you " + "also need per-package provenance. Supports npm, PyPI, Hex, Crates, " + "RubyGems, Go, vcpkg, and Zig.";
|
|
8634
8632
|
function createPackageDependenciesTool(service) {
|
|
8635
8633
|
return {
|
|
8636
8634
|
name: "pkg_deps",
|
|
@@ -8701,11 +8699,11 @@ function isTextFormat6(format) {
|
|
|
8701
8699
|
// src/tools/package-summary.ts
|
|
8702
8700
|
import { z as z9 } from "zod";
|
|
8703
8701
|
var schema8 = {
|
|
8704
|
-
registry: z9.string().describe(
|
|
8702
|
+
registry: z9.string().describe(`Package registry. One of: ${PKGSEER_REGISTRY_LIST}.`),
|
|
8705
8703
|
package_name: z9.string().describe("Package name (scoped names ok: @types/node)."),
|
|
8706
8704
|
format: z9.enum(["json", "text", "text-v1"]).optional().describe("Response format. Default `text-v1` is compact for agents. Pass `json` for the structured envelope.")
|
|
8707
8705
|
};
|
|
8708
|
-
var DESCRIPTION8 = "Get a package overview — latest version, license, description, " + "repository, downloads, GitHub stars, install command, recent " + "changes, and a count of known vulnerabilities. Use before " + "recommending a package or to orient on what a dependency is. " + 'Default output is compact text; pass `format: "json"` for the ' + "structured envelope. " + "Works across npm, PyPI, Hex, Crates, NuGet, Maven, Packagist, " + "vcpkg, and Zig. Always returns data for the latest published " + "version.";
|
|
8706
|
+
var DESCRIPTION8 = "Get a package overview — latest version, license, description, " + "repository, downloads, GitHub stars, install command, recent " + "changes, and a count of known vulnerabilities. Use before " + "recommending a package or to orient on what a dependency is. " + 'Default output is compact text; pass `format: "json"` for the ' + "structured envelope. " + "Works across npm, PyPI, Hex, Crates, NuGet, Maven, Packagist, " + "RubyGems, Go, vcpkg, and Zig. Always returns data for the latest published " + "version.";
|
|
8709
8707
|
function createPackageSummaryTool(service) {
|
|
8710
8708
|
return {
|
|
8711
8709
|
name: "pkg_info",
|
|
@@ -9461,8 +9459,7 @@ Addressing: <spec> (registry:name) OR --repo-url <url>. Source
|
|
|
9461
9459
|
(GitHub Releases, CHANGELOG.md, or HexDocs) is shown on the summary
|
|
9462
9460
|
line.
|
|
9463
9461
|
|
|
9464
|
-
Package spec: <registry>:<name>. Supported registries:
|
|
9465
|
-
hex, crates, vcpkg, zig, nuget, maven, packagist. \`<spec>@<version>\`
|
|
9462
|
+
Package spec: <registry>:<name>. Supported registries: ${PKGSEER_REGISTRY_LIST}. \`<spec>@<version>\`
|
|
9466
9463
|
is NOT accepted here — use --to <version> for "entries up to this
|
|
9467
9464
|
version".`;
|
|
9468
9465
|
function registerPkgChangelogCommand(pkgCommand) {
|
|
@@ -9585,7 +9582,7 @@ groups). Concrete --lifecycle values include runtime plus matching groups.
|
|
|
9585
9582
|
conflict detection, and circular-dependency flags.
|
|
9586
9583
|
|
|
9587
9584
|
Package spec: <registry>:<name>[@<version>]. Supported registries:
|
|
9588
|
-
npm, pypi, hex, crates, vcpkg, zig. Omit @<version> for the latest
|
|
9585
|
+
npm, pypi, hex, crates, vcpkg, zig, rubygems, go. Omit @<version> for the latest
|
|
9589
9586
|
release.`;
|
|
9590
9587
|
function registerPkgDepsCommand(pkgCommand) {
|
|
9591
9588
|
return pkgCommand.command("deps").summary("Analyze dependencies for a package").description(PKG_DEPS_DESCRIPTION).argument("<spec>", "Package spec, e.g. npm:express or npm:express@4.18.0").option("-l, --lifecycle <phases>", "Dependency lifecycle breadth (runtime, development, build, peer, optional, all; comma-separated for multi-select except all).").option("-t, --transitive", "Include aggregate transitive counts, conflicts, and circular dependencies").option("--depth <n>", "Cap transitive traversal depth (1-10). Omit for the full graph.").option("-v, --verbose", "Show conditionType / selectionMode / environmentConstraints metadata in the groups view").option("--json", "Emit the lean JSON envelope").action(async (spec, options) => {
|
|
@@ -9648,8 +9645,7 @@ repository, downloads, GitHub stars, install command, and known
|
|
|
9648
9645
|
vulnerabilities. Use before picking a dependency or to orient on what
|
|
9649
9646
|
a package is.
|
|
9650
9647
|
|
|
9651
|
-
Package spec: <registry>:<name>. Supported registries:
|
|
9652
|
-
crates, nuget, maven, zig, vcpkg, packagist.
|
|
9648
|
+
Package spec: <registry>:<name>. Supported registries: ${PKGSEER_REGISTRY_LIST}.
|
|
9653
9649
|
|
|
9654
9650
|
Always returns data for the latest published version.`;
|
|
9655
9651
|
function registerPkgInfoCommand(pkgCommand) {
|
|
@@ -9767,7 +9763,7 @@ async function registerPkgCommandGroup(program, options = {}) {
|
|
|
9767
9763
|
if (!registration.shouldRegister) {
|
|
9768
9764
|
return;
|
|
9769
9765
|
}
|
|
9770
|
-
const pkgCommand = program.command("pkg").summary("Package metadata: info, vulnerabilities, dependencies, changelog").description("Inspect package metadata from npm, PyPI, Hex, Crates, NuGet, Maven, Packagist, vcpkg, and Zig: overviews, advisories, dependency graphs, and changelogs. For source-level operations inside a dependency, use `githits code`.");
|
|
9766
|
+
const pkgCommand = program.command("pkg").summary("Package metadata: info, vulnerabilities, dependencies, changelog").description("Inspect package metadata from npm, PyPI, Hex, Crates, NuGet, Maven, Packagist, RubyGems, Go, vcpkg, and Zig: overviews, advisories, dependency graphs, and changelogs. For source-level operations inside a dependency, use `githits code`.");
|
|
9771
9767
|
registerPkgInfoCommand(pkgCommand);
|
|
9772
9768
|
registerPkgVulnsCommand(pkgCommand);
|
|
9773
9769
|
registerPkgDepsCommand(pkgCommand);
|
|
@@ -9891,7 +9887,7 @@ function requireSearchService(deps) {
|
|
|
9891
9887
|
return deps.codeNavigationService;
|
|
9892
9888
|
}
|
|
9893
9889
|
async function loadContainer2() {
|
|
9894
|
-
const { createContainer: createContainer2 } = await import("./shared/chunk-
|
|
9890
|
+
const { createContainer: createContainer2 } = await import("./shared/chunk-q2mre780.js");
|
|
9895
9891
|
return createContainer2();
|
|
9896
9892
|
}
|
|
9897
9893
|
function parseTargetSpecs(specs) {
|
package/dist/index.js
CHANGED
|
@@ -2,8 +2,8 @@ import {
|
|
|
2
2
|
createAuthCommandDependencies,
|
|
3
3
|
createAuthStatusDependencies,
|
|
4
4
|
createContainer
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import"./chunk-
|
|
5
|
+
} from "./chunk-v8sths32.js";
|
|
6
|
+
import"./chunk-jdygt0ra.js";
|
|
7
7
|
export {
|
|
8
8
|
createContainer,
|
|
9
9
|
createAuthStatusDependencies,
|
package/gemini-extension.json
CHANGED
package/package.json
CHANGED