@octocodeai/octocode-tools-core 16.3.0 → 16.6.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.
Files changed (181) hide show
  1. package/README.md +564 -0
  2. package/dist/config.d.ts +7 -0
  3. package/dist/direct.js +39 -41
  4. package/dist/errors/pathUtils.d.ts +1 -1
  5. package/dist/github/directoryFetch.d.ts +2 -1
  6. package/dist/github/githubAPI.d.ts +32 -1
  7. package/dist/github/history.d.ts +3 -0
  8. package/dist/github/prTransformation.d.ts +1 -1
  9. package/dist/github/repoStructureRecursive.d.ts +6 -0
  10. package/dist/index.d.ts +16 -30
  11. package/dist/index.js +44 -46
  12. package/dist/oql/adapters/compile.d.ts +25 -0
  13. package/dist/oql/adapters/github.d.ts +3 -0
  14. package/dist/oql/adapters/local.d.ts +7 -0
  15. package/dist/oql/adapters/materialize.d.ts +11 -0
  16. package/dist/oql/adapters/pagination.d.ts +21 -0
  17. package/dist/oql/adapters/researchTargets.d.ts +50 -0
  18. package/dist/oql/adapters/resultMap.d.ts +20 -0
  19. package/dist/oql/adapters/ruleYaml.d.ts +11 -0
  20. package/dist/oql/adapters/runner.d.ts +14 -0
  21. package/dist/oql/adapters/v2.d.ts +32 -0
  22. package/dist/oql/capabilities.d.ts +31 -0
  23. package/dist/oql/defaults.d.ts +26 -0
  24. package/dist/oql/diagnostics.d.ts +25 -0
  25. package/dist/oql/diffLanes.d.ts +29 -0
  26. package/dist/oql/envelope.d.ts +19 -0
  27. package/dist/oql/features.d.ts +7 -0
  28. package/dist/oql/index.d.ts +26 -0
  29. package/dist/oql/index.js +49 -0
  30. package/dist/oql/normalize.d.ts +5 -0
  31. package/dist/oql/planner.d.ts +7 -0
  32. package/dist/oql/research/analyze.d.ts +134 -0
  33. package/dist/oql/research/packets.d.ts +80 -0
  34. package/dist/oql/run.d.ts +32 -0
  35. package/dist/oql/schema.d.ts +1018 -0
  36. package/dist/oql/schemeText.d.ts +138 -0
  37. package/dist/oql/shorthand.d.ts +177 -0
  38. package/dist/oql/targetParams.d.ts +20 -0
  39. package/dist/oql/transformers/contract.d.ts +19 -0
  40. package/dist/oql/transformers/github/code.d.ts +17 -0
  41. package/dist/oql/transformers/github/common.d.ts +8 -0
  42. package/dist/oql/transformers/language.d.ts +1 -0
  43. package/dist/oql/transformers/registry.d.ts +16 -0
  44. package/dist/oql/transformers/types.d.ts +11 -0
  45. package/dist/oql/types.d.ts +633 -0
  46. package/dist/oql/v2params.d.ts +22 -0
  47. package/dist/providers/providerQueries.d.ts +9 -0
  48. package/dist/providers/providerResults.d.ts +2 -0
  49. package/dist/providers/types.d.ts +1 -1
  50. package/dist/schema.d.ts +13 -0
  51. package/dist/schema.js +8 -0
  52. package/dist/scheme/coreSchemas.d.ts +5 -5
  53. package/dist/scheme/fields.d.ts +6 -6
  54. package/dist/serverConfig.d.ts +1 -2
  55. package/dist/session.d.ts +2 -24
  56. package/dist/shared/config/defaults.d.ts +14 -0
  57. package/dist/shared/config/index.d.ts +9 -0
  58. package/dist/shared/config/index.js +9 -0
  59. package/dist/shared/config/loader.d.ts +7 -0
  60. package/dist/shared/config/resolver.d.ts +2 -0
  61. package/dist/shared/config/resolverCache.d.ts +12 -0
  62. package/dist/shared/config/resolverSections.d.ts +10 -0
  63. package/dist/shared/config/runtimeSurface.d.ts +21 -0
  64. package/dist/shared/config/schemas.d.ts +11 -0
  65. package/dist/shared/config/types.d.ts +92 -0
  66. package/dist/shared/config/validator.d.ts +2 -0
  67. package/dist/shared/credentials/constants.d.ts +2 -0
  68. package/dist/shared/credentials/credentialCache.d.ts +13 -0
  69. package/dist/shared/credentials/credentialEncryption.d.ts +10 -0
  70. package/dist/shared/credentials/credentialUtils.d.ts +4 -0
  71. package/dist/shared/credentials/envTokens.d.ts +9 -0
  72. package/dist/shared/credentials/ghCli.d.ts +1 -0
  73. package/dist/shared/credentials/index.d.ts +3 -0
  74. package/dist/shared/credentials/index.js +8 -0
  75. package/dist/shared/credentials/schemas.d.ts +22 -0
  76. package/dist/shared/credentials/storage.d.ts +30 -0
  77. package/dist/shared/credentials/testing.d.ts +2 -0
  78. package/dist/shared/credentials/testing.js +8 -0
  79. package/dist/shared/credentials/tokenRefresh.d.ts +24 -0
  80. package/dist/shared/credentials/tokenResolution.d.ts +30 -0
  81. package/dist/shared/credentials/types.d.ts +28 -0
  82. package/dist/shared/fs-utils.d.ts +2 -0
  83. package/dist/shared/fs-utils.js +8 -0
  84. package/dist/shared/index.d.ts +6 -0
  85. package/dist/shared/languageSelectors.d.ts +23 -0
  86. package/dist/shared/paths.d.ts +31 -0
  87. package/dist/shared/paths.js +8 -0
  88. package/dist/shared/platform/index.d.ts +1 -0
  89. package/dist/shared/platform/index.js +8 -0
  90. package/dist/shared/platform/platform.d.ts +8 -0
  91. package/dist/shared/session/index.d.ts +5 -0
  92. package/dist/shared/session/index.js +8 -0
  93. package/dist/shared/session/schemas.d.ts +103 -0
  94. package/dist/shared/session/sessionCache.d.ts +9 -0
  95. package/dist/shared/session/sessionDiskIO.d.ts +6 -0
  96. package/dist/shared/session/statsDefaults.d.ts +4 -0
  97. package/dist/shared/session/storage.d.ts +20 -0
  98. package/dist/shared/session/types.d.ts +53 -0
  99. package/dist/tools/directToolCatalog.d.ts +15 -56
  100. package/dist/tools/directToolCatalog.exec.d.ts +11 -0
  101. package/dist/tools/directToolCatalog.meta.d.ts +82 -0
  102. package/dist/tools/github_clone_repo/cache.d.ts +5 -1
  103. package/dist/tools/github_clone_repo/scheme.d.ts +56 -9
  104. package/dist/tools/github_clone_repo/types.d.ts +3 -1
  105. package/dist/tools/github_fetch_content/scheme.d.ts +112 -4
  106. package/dist/tools/github_fetch_content/types.d.ts +39 -0
  107. package/dist/tools/github_search_code/scheme.d.ts +6 -6
  108. package/dist/tools/github_search_pull_requests/contentResponse.d.ts +0 -1
  109. package/dist/tools/github_search_pull_requests/execution.d.ts +1 -11
  110. package/dist/tools/github_search_pull_requests/scheme.d.ts +6 -2
  111. package/dist/tools/github_search_repos/scheme.d.ts +7 -6
  112. package/dist/tools/github_view_repo_structure/execution.d.ts +0 -9
  113. package/dist/tools/github_view_repo_structure/scheme.d.ts +10 -6
  114. package/dist/tools/local_binary_inspect/archiveOps.d.ts +2 -0
  115. package/dist/tools/local_binary_inspect/binaryInspector.d.ts +48 -7
  116. package/dist/tools/local_binary_inspect/binaryOps.d.ts +16 -7
  117. package/dist/tools/local_binary_inspect/scheme.d.ts +10 -7
  118. package/dist/tools/local_fetch_content/scheme.d.ts +2 -2
  119. package/dist/tools/local_find_files/scheme.d.ts +2 -2
  120. package/dist/tools/local_ripgrep/lspBoost.d.ts +54 -0
  121. package/dist/tools/local_ripgrep/rankingProfile.d.ts +113 -0
  122. package/dist/tools/local_ripgrep/ripgrepResultBuilder.d.ts +10 -1
  123. package/dist/tools/local_ripgrep/scheme.d.ts +29 -4
  124. package/dist/tools/local_ripgrep/structuralSearch.d.ts +3 -4
  125. package/dist/tools/local_view_structure/scheme.d.ts +2 -2
  126. package/dist/tools/local_view_structure/structureFilters.d.ts +1 -3
  127. package/dist/tools/local_view_structure/structureResponse.d.ts +1 -0
  128. package/dist/tools/lsp/semantic_content/scheme.d.ts +174 -10
  129. package/dist/tools/lsp/shared/callHierarchyTraversal.d.ts +2 -2
  130. package/dist/tools/lsp/shared/resolveSymbolAnchor.d.ts +2 -2
  131. package/dist/tools/lsp/shared/semanticTypes.d.ts +36 -6
  132. package/dist/tools/oql_search/execution.d.ts +7 -0
  133. package/dist/tools/package_search/execution.d.ts +10 -0
  134. package/dist/tools/package_search/scheme.d.ts +9 -7
  135. package/dist/tools/providerMappers.d.ts +24 -5
  136. package/dist/tools/toolConfig.d.ts +1 -0
  137. package/dist/tools/toolMetadata/proxies.d.ts +0 -6
  138. package/dist/tools/toolNames.d.ts +2 -0
  139. package/dist/tools/utils.d.ts +3 -7
  140. package/dist/types/bulk.d.ts +0 -2
  141. package/dist/types/execution.d.ts +1 -2
  142. package/dist/types/server.d.ts +0 -1
  143. package/dist/types/session.d.ts +0 -19
  144. package/dist/types/toolResults.d.ts +2 -3
  145. package/dist/utils/contextUtils.d.ts +49 -2
  146. package/dist/utils/core/lines.d.ts +16 -0
  147. package/dist/utils/core/types.d.ts +12 -1
  148. package/dist/utils/file/filters.d.ts +2 -11
  149. package/dist/utils/markdownOutline.d.ts +10 -0
  150. package/dist/utils/parsers/diff.d.ts +18 -0
  151. package/dist/utils/response/error.d.ts +38 -4
  152. package/dist/utils/response/groupedFinalizer.d.ts +0 -25
  153. package/package.json +51 -14
  154. package/dist/commands/BaseCommandBuilder.d.ts +0 -14
  155. package/dist/commands/FindCommandBuilder.d.ts +0 -23
  156. package/dist/commands/LsCommandBuilder.d.ts +0 -15
  157. package/dist/commands/RipgrepCommandBuilder.d.ts +0 -27
  158. package/dist/hints/dynamic.d.ts +0 -6
  159. package/dist/hints/index.d.ts +0 -2
  160. package/dist/hints/types.d.ts +0 -1
  161. package/dist/tools/github_clone_repo/hints.d.ts +0 -2
  162. package/dist/tools/github_fetch_content/hints.d.ts +0 -2
  163. package/dist/tools/github_search_code/hints.d.ts +0 -2
  164. package/dist/tools/github_search_pull_requests/hints.d.ts +0 -2
  165. package/dist/tools/github_search_repos/hints.d.ts +0 -2
  166. package/dist/tools/github_view_repo_structure/hints.d.ts +0 -2
  167. package/dist/tools/local_fetch_content/hints.d.ts +0 -2
  168. package/dist/tools/local_find_files/hints.d.ts +0 -2
  169. package/dist/tools/local_ripgrep/grepFallbackExecutor.d.ts +0 -3
  170. package/dist/tools/local_ripgrep/hints.d.ts +0 -2
  171. package/dist/tools/local_ripgrep/ripgrepParser.d.ts +0 -9
  172. package/dist/tools/local_view_structure/hints.d.ts +0 -2
  173. package/dist/tools/local_view_structure/structureParser.d.ts +0 -3
  174. package/dist/tools/local_view_structure/structureWalker.d.ts +0 -24
  175. package/dist/tools/lsp/semantic_content/hints.d.ts +0 -4
  176. package/dist/tools/package_search/hints.d.ts +0 -2
  177. package/dist/types/metadata.d.ts +0 -69
  178. package/dist/utils/exec/commandAvailability.d.ts +0 -19
  179. package/dist/utils/exec/ripgrepBinary.d.ts +0 -3
  180. package/dist/utils/pagination/outputSizeLimit.d.ts +0 -16
  181. package/dist/utils/response/structuredPagination.d.ts +0 -9
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Engine-free direct-tool catalog metadata (P3).
3
+ *
4
+ * This module holds EVERYTHING the schema/help/`--scheme`/`context` paths need
5
+ * — tool definitions (name + display/bulk zod schemas), schema-text formatters,
6
+ * display-field extraction, example builders, and input preparation — WITHOUT
7
+ * importing `@octocodeai/octocode-engine` (no native `.node` load at module
8
+ * eval). The schemas are sourced from each tool's engine-free `scheme.ts`, the
9
+ * same modules `toolConfig.ts` consumes, so the two cannot drift on shape (a
10
+ * drift test asserts name/schema parity against the runtime `ALL_TOOLS`).
11
+ *
12
+ * The execution path (`executeDirectTool`) lives in `directToolCatalog.exec.ts`,
13
+ * which DOES import the engine; it is only reached when a tool actually runs.
14
+ * The `@octocodeai/octocode-tools-core/schema` subpath re-exports only this
15
+ * module so engine-less runtimes (e.g. Codex.app Node) can read schemas.
16
+ */
17
+ import { z } from 'zod';
18
+ export type DirectToolInput = Record<string, unknown> & {
19
+ queries: unknown[];
20
+ };
21
+ export interface DirectToolDefinition {
22
+ name: string;
23
+ schema: z.ZodType;
24
+ inputSchema: z.ZodType;
25
+ }
26
+ export type DirectToolCategory = 'GitHub' | 'Local Code' | 'Package' | 'Other';
27
+ export declare const DIRECT_TOOL_CATEGORIES: readonly DirectToolCategory[];
28
+ export interface DirectToolDisplayField {
29
+ name: string;
30
+ required: boolean;
31
+ type: string;
32
+ /** Numeric bounds and default, e.g. "1-100, default 30" — surfaced inline so
33
+ * agents see the full constraint without fetching the raw JSON schema. */
34
+ constraints?: string;
35
+ description?: string;
36
+ }
37
+ export interface DirectToolCommandPattern {
38
+ label: string;
39
+ query: Record<string, unknown>;
40
+ command: string;
41
+ }
42
+ export interface DirectToolOutputField {
43
+ name: string;
44
+ type: string;
45
+ optional?: boolean;
46
+ }
47
+ export interface DirectToolMetadata {
48
+ tools?: Record<string, {
49
+ description?: string;
50
+ schema?: Record<string, string>;
51
+ }>;
52
+ }
53
+ export interface PrepareDirectToolInputOptions {
54
+ sourceLabel?: string;
55
+ onUnknownFields?: (unknownFields: string[], queryIndex: number) => void;
56
+ }
57
+ export declare class DirectToolInputError extends Error {
58
+ readonly details: string[];
59
+ constructor(message: string, details?: string[]);
60
+ }
61
+ /**
62
+ * Engine-free tool definitions (name + display/bulk schema). Order mirrors
63
+ * `ALL_TOOLS` in `toolConfig.ts`; each schema is the SAME object that
64
+ * `toolConfig` attaches an executionFn to. Kept in lockstep by a drift test.
65
+ */
66
+ export declare const DIRECT_TOOL_DEFINITIONS: DirectToolDefinition[];
67
+ export declare function findDirectToolDefinition(name: string): DirectToolDefinition | undefined;
68
+ export declare function getDirectToolCategory(toolName: string): DirectToolCategory;
69
+ export declare function sortDirectToolNames(toolNames: string[]): string[];
70
+ export declare function formatDirectToolSchemaText(toolName: string): string;
71
+ export declare function formatDirectToolMetadataSchemaText(schema: Record<string, string> | undefined): string;
72
+ export declare function getDirectToolAutoFilledFields(toolName: string): string[];
73
+ export declare function getDirectToolOutputFields(): DirectToolOutputField[];
74
+ export declare function formatDirectToolOutputSchemaText(): string;
75
+ export declare function getDirectToolDescription(toolName: string, metadata?: DirectToolMetadata | null): string;
76
+ export declare function getDirectToolDisplayFields(toolName: string): DirectToolDisplayField[];
77
+ export declare function formatDirectToolCommandPattern(toolName: string, query: Record<string, unknown>): string;
78
+ export declare function buildDirectToolCommandPatterns(toolName: string): DirectToolCommandPattern[];
79
+ export declare function buildDirectToolExampleQuery(toolName: string): Record<string, unknown>;
80
+ export declare function prepareDirectToolInputFromJsonText(toolName: string, inputText: string | undefined, options?: PrepareDirectToolInputOptions): DirectToolInput | null;
81
+ export declare function prepareDirectToolInput(toolName: string, rawPayload: unknown, options?: PrepareDirectToolInputOptions): DirectToolInput;
82
+ export declare function formatDirectToolValidationIssues(error: z.ZodError): string[];
@@ -1,6 +1,9 @@
1
1
  import type { CloneCacheMeta, CacheSource } from './types.js';
2
2
  export declare function getReposBaseDir(octocodeDir: string): string;
3
+ export declare function getCloneBaseDir(octocodeDir: string): string;
4
+ export declare function getTreeBaseDir(octocodeDir: string): string;
3
5
  export declare function getCloneDir(octocodeDir: string, owner: string, repo: string, branch: string, sparsePath?: string): string;
6
+ export declare function getTreeDir(octocodeDir: string, owner: string, repo: string, branch: string): string;
4
7
  export declare function readCacheMeta(cloneDir: string): CloneCacheMeta | null;
5
8
  export declare function writeCacheMeta(cloneDir: string, meta: CloneCacheMeta): void;
6
9
  export declare function isCacheValid(meta: CloneCacheMeta): boolean;
@@ -13,9 +16,10 @@ export declare function isCacheHit(cloneDir: string): {
13
16
  export declare function getCacheTTL(): number;
14
17
  export declare function getMaxCacheSizeBytes(): number;
15
18
  export declare function getMaxCloneCount(): number;
16
- export declare function createCacheMeta(owner: string, repo: string, branch: string, source: CacheSource, sparsePath?: string, sizeBytes?: number): CloneCacheMeta;
19
+ export declare function createCacheMeta(owner: string, repo: string, branch: string, source: CacheSource, sparsePath?: string, sizeBytes?: number, commitSha?: string): CloneCacheMeta;
17
20
  export declare function ensureCloneParentDir(cloneDir: string): void;
18
21
  export declare function removeCloneDir(cloneDir: string): void;
19
22
  export declare function evictExpiredClones(octocodeDir: string): number;
23
+ export declare function evictExpiredTrees(octocodeDir: string): number;
20
24
  export declare function startCacheGC(octocodeDir: string): void;
21
25
  export declare function stopCacheGC(): void;
@@ -10,8 +10,8 @@ export declare const CloneRepoQueryLocalSchema: import("zod").ZodObject<{
10
10
  reasoning: import("zod").ZodOptional<import("zod").ZodString>;
11
11
  }, import("zod/v4/core").$strip>;
12
12
  export declare const BulkCloneRepoLocalSchema: import("zod").ZodObject<{
13
- responseCharOffset: import("zod").ZodOptional<import("zod").ZodPipe<import("zod").ZodTransform<unknown, unknown>, import("zod").ZodNumber>>;
14
- responseCharLength: import("zod").ZodOptional<import("zod").ZodPipe<import("zod").ZodTransform<unknown, unknown>, import("zod").ZodNumber>>;
13
+ responseCharOffset: import("zod").ZodOptional<import("zod").ZodPreprocess<import("zod").ZodNumber>>;
14
+ responseCharLength: import("zod").ZodOptional<import("zod").ZodPreprocess<import("zod").ZodNumber>>;
15
15
  queries: import("zod").ZodArray<import("zod").ZodType<unknown, unknown, import("zod/v4/core").$ZodTypeInternals<unknown, unknown>>>;
16
16
  }, import("zod/v4/core").$strip>;
17
17
  export declare const GitHubCloneRepoOutputLocalSchema: import("zod").ZodObject<{
@@ -21,24 +21,71 @@ export declare const GitHubCloneRepoOutputLocalSchema: import("zod").ZodObject<{
21
21
  }>>;
22
22
  data: import("zod").ZodOptional<import("zod").ZodObject<{
23
23
  localPath: import("zod").ZodString;
24
- branch: import("zod").ZodString;
25
- cached: import("zod").ZodBoolean;
24
+ resolvedBranch: import("zod").ZodOptional<import("zod").ZodString>;
25
+ cached: import("zod").ZodOptional<import("zod").ZodBoolean>;
26
26
  sparsePath: import("zod").ZodOptional<import("zod").ZodString>;
27
27
  cloneTimeMs: import("zod").ZodOptional<import("zod").ZodNumber>;
28
28
  totalSize: import("zod").ZodOptional<import("zod").ZodNumber>;
29
29
  fileCount: import("zod").ZodOptional<import("zod").ZodNumber>;
30
+ location: import("zod").ZodOptional<import("zod").ZodObject<{
31
+ kind: import("zod").ZodEnum<{
32
+ file: "file";
33
+ directory: "directory";
34
+ repo: "repo";
35
+ tree: "tree";
36
+ "archive-entry": "archive-entry";
37
+ }>;
38
+ localPath: import("zod").ZodString;
39
+ repoRoot: import("zod").ZodOptional<import("zod").ZodString>;
40
+ requestedPath: import("zod").ZodOptional<import("zod").ZodString>;
41
+ source: import("zod").ZodOptional<import("zod").ZodEnum<{
42
+ extract: "extract";
43
+ decompress: "decompress";
44
+ strings: "strings";
45
+ unpack: "unpack";
46
+ tree: "tree";
47
+ clone: "clone";
48
+ }>>;
49
+ cached: import("zod").ZodOptional<import("zod").ZodBoolean>;
50
+ complete: import("zod").ZodOptional<import("zod").ZodBoolean>;
51
+ resolvedBranch: import("zod").ZodOptional<import("zod").ZodString>;
52
+ }, import("zod/v4/core").$strip>>;
30
53
  }, import("zod/v4/core").$strip>>;
31
54
  localPath: import("zod").ZodOptional<import("zod").ZodString>;
32
- branch: import("zod").ZodOptional<import("zod").ZodString>;
55
+ resolvedBranch: import("zod").ZodOptional<import("zod").ZodString>;
33
56
  cached: import("zod").ZodOptional<import("zod").ZodBoolean>;
57
+ sparsePath: import("zod").ZodOptional<import("zod").ZodString>;
58
+ location: import("zod").ZodOptional<import("zod").ZodObject<{
59
+ kind: import("zod").ZodEnum<{
60
+ file: "file";
61
+ directory: "directory";
62
+ repo: "repo";
63
+ tree: "tree";
64
+ "archive-entry": "archive-entry";
65
+ }>;
66
+ localPath: import("zod").ZodString;
67
+ repoRoot: import("zod").ZodOptional<import("zod").ZodString>;
68
+ requestedPath: import("zod").ZodOptional<import("zod").ZodString>;
69
+ source: import("zod").ZodOptional<import("zod").ZodEnum<{
70
+ extract: "extract";
71
+ decompress: "decompress";
72
+ strings: "strings";
73
+ unpack: "unpack";
74
+ tree: "tree";
75
+ clone: "clone";
76
+ }>>;
77
+ cached: import("zod").ZodOptional<import("zod").ZodBoolean>;
78
+ complete: import("zod").ZodOptional<import("zod").ZodBoolean>;
79
+ resolvedBranch: import("zod").ZodOptional<import("zod").ZodString>;
80
+ }, import("zod/v4/core").$strip>>;
34
81
  warnings: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodObject<{
35
82
  kind: import("zod").ZodString;
36
83
  }, import("zod/v4/core").$loose>]>>>;
37
84
  error: import("zod").ZodOptional<import("zod").ZodString>;
38
- readonly hints: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
39
- readonly base: import("zod").ZodOptional<import("zod").ZodString>;
40
- readonly shared: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodNumber, import("zod").ZodBoolean]>>>;
41
- readonly responsePagination: import("zod").ZodOptional<import("zod").ZodObject<{
85
+ hints: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
86
+ base: import("zod").ZodOptional<import("zod").ZodString>;
87
+ shared: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodNumber, import("zod").ZodBoolean]>>>;
88
+ responsePagination: import("zod").ZodOptional<import("zod").ZodObject<{
42
89
  currentPage: import("zod").ZodNumber;
43
90
  totalPages: import("zod").ZodNumber;
44
91
  hasMore: import("zod").ZodBoolean;
@@ -1,10 +1,12 @@
1
- export type CacheSource = 'clone' | 'directoryFetch';
1
+ export type CacheSource = 'clone' | 'directoryFetch' | 'treeFetch';
2
2
  export interface CloneCacheMeta {
3
3
  clonedAt: string;
4
4
  expiresAt: string;
5
5
  owner: string;
6
6
  repo: string;
7
7
  branch: string;
8
+ /** HEAD commit SHA at the time this entry was written. Absent on legacy entries. */
9
+ commitSha?: string;
8
10
  sparsePath?: string;
9
11
  source: CacheSource;
10
12
  sizeBytes?: number;
@@ -32,8 +32,8 @@ export declare const FileContentQueryLocalSchema: z.ZodObject<{
32
32
  reasoning: z.ZodOptional<z.ZodString>;
33
33
  }, z.core.$strip>;
34
34
  export declare const FileContentBulkQueryLocalSchema: z.ZodObject<{
35
- responseCharOffset: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>;
36
- responseCharLength: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>;
35
+ responseCharOffset: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
36
+ responseCharLength: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
37
37
  queries: z.ZodArray<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>;
38
38
  }, z.core.$strip>;
39
39
  export declare const GitHubFetchContentOutputLocalSchema: z.ZodObject<{
@@ -55,6 +55,8 @@ export declare const GitHubFetchContentOutputLocalSchema: z.ZodObject<{
55
55
  files: z.ZodOptional<z.ZodArray<z.ZodObject<{
56
56
  path: z.ZodString;
57
57
  content: z.ZodString;
58
+ localPath: z.ZodOptional<z.ZodString>;
59
+ repoRoot: z.ZodOptional<z.ZodString>;
58
60
  contentView: z.ZodOptional<z.ZodEnum<{
59
61
  none: "none";
60
62
  standard: "standard";
@@ -69,6 +71,8 @@ export declare const GitHubFetchContentOutputLocalSchema: z.ZodObject<{
69
71
  currentPage: z.ZodNumber;
70
72
  totalPages: z.ZodNumber;
71
73
  hasMore: z.ZodBoolean;
74
+ nextPage: z.ZodOptional<z.ZodNumber>;
75
+ nextMatchPage: z.ZodOptional<z.ZodNumber>;
72
76
  charOffset: z.ZodOptional<z.ZodNumber>;
73
77
  charLength: z.ZodOptional<z.ZodNumber>;
74
78
  totalChars: z.ZodOptional<z.ZodNumber>;
@@ -92,12 +96,34 @@ export declare const GitHubFetchContentOutputLocalSchema: z.ZodObject<{
92
96
  warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
93
97
  matchNotFound: z.ZodOptional<z.ZodBoolean>;
94
98
  searchedFor: z.ZodOptional<z.ZodString>;
99
+ cached: z.ZodOptional<z.ZodBoolean>;
95
100
  }, z.core.$strip>>>;
96
101
  directories: z.ZodOptional<z.ZodArray<z.ZodObject<{
97
102
  path: z.ZodString;
98
103
  localPath: z.ZodString;
104
+ repoRoot: z.ZodOptional<z.ZodString>;
99
105
  fileCount: z.ZodNumber;
100
106
  totalSize: z.ZodNumber;
107
+ complete: z.ZodOptional<z.ZodBoolean>;
108
+ directoryEntryCount: z.ZodOptional<z.ZodNumber>;
109
+ eligibleFileCount: z.ZodOptional<z.ZodNumber>;
110
+ savedFileCount: z.ZodOptional<z.ZodNumber>;
111
+ skipped: z.ZodOptional<z.ZodObject<{
112
+ nonFile: z.ZodNumber;
113
+ missingDownloadUrl: z.ZodNumber;
114
+ oversized: z.ZodNumber;
115
+ binary: z.ZodNumber;
116
+ fileLimit: z.ZodNumber;
117
+ fetchFailed: z.ZodNumber;
118
+ totalSizeLimit: z.ZodNumber;
119
+ pathTraversal: z.ZodNumber;
120
+ }, z.core.$strip>>;
121
+ limits: z.ZodOptional<z.ZodObject<{
122
+ maxDirectoryFiles: z.ZodNumber;
123
+ maxTotalSize: z.ZodNumber;
124
+ maxFileSize: z.ZodNumber;
125
+ }, z.core.$strip>>;
126
+ warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
101
127
  files: z.ZodOptional<z.ZodArray<z.ZodObject<{
102
128
  path: z.ZodString;
103
129
  size: z.ZodNumber;
@@ -106,15 +132,97 @@ export declare const GitHubFetchContentOutputLocalSchema: z.ZodObject<{
106
132
  cached: z.ZodOptional<z.ZodBoolean>;
107
133
  resolvedBranch: z.ZodOptional<z.ZodString>;
108
134
  }, z.core.$strip>>>;
135
+ data: z.ZodOptional<z.ZodObject<{
136
+ owner: z.ZodString;
137
+ repo: z.ZodString;
138
+ files: z.ZodOptional<z.ZodArray<z.ZodObject<{
139
+ path: z.ZodString;
140
+ content: z.ZodString;
141
+ localPath: z.ZodOptional<z.ZodString>;
142
+ repoRoot: z.ZodOptional<z.ZodString>;
143
+ contentView: z.ZodOptional<z.ZodEnum<{
144
+ none: "none";
145
+ standard: "standard";
146
+ symbols: "symbols";
147
+ }>>;
148
+ isSkeleton: z.ZodOptional<z.ZodBoolean>;
149
+ totalLines: z.ZodOptional<z.ZodNumber>;
150
+ sourceChars: z.ZodOptional<z.ZodNumber>;
151
+ sourceBytes: z.ZodOptional<z.ZodNumber>;
152
+ resolvedBranch: z.ZodOptional<z.ZodString>;
153
+ pagination: z.ZodOptional<z.ZodObject<{
154
+ currentPage: z.ZodNumber;
155
+ totalPages: z.ZodNumber;
156
+ hasMore: z.ZodBoolean;
157
+ nextPage: z.ZodOptional<z.ZodNumber>;
158
+ nextMatchPage: z.ZodOptional<z.ZodNumber>;
159
+ charOffset: z.ZodOptional<z.ZodNumber>;
160
+ charLength: z.ZodOptional<z.ZodNumber>;
161
+ totalChars: z.ZodOptional<z.ZodNumber>;
162
+ nextCharOffset: z.ZodOptional<z.ZodNumber>;
163
+ filesPerPage: z.ZodOptional<z.ZodNumber>;
164
+ totalFiles: z.ZodOptional<z.ZodNumber>;
165
+ entriesPerPage: z.ZodOptional<z.ZodNumber>;
166
+ totalEntries: z.ZodOptional<z.ZodNumber>;
167
+ matchesPerPage: z.ZodOptional<z.ZodNumber>;
168
+ totalMatches: z.ZodOptional<z.ZodNumber>;
169
+ }, z.core.$strip>>;
170
+ isPartial: z.ZodOptional<z.ZodBoolean>;
171
+ startLine: z.ZodOptional<z.ZodNumber>;
172
+ endLine: z.ZodOptional<z.ZodNumber>;
173
+ matchRanges: z.ZodOptional<z.ZodArray<z.ZodObject<{
174
+ start: z.ZodNumber;
175
+ end: z.ZodNumber;
176
+ }, z.core.$strip>>>;
177
+ lastModified: z.ZodOptional<z.ZodString>;
178
+ lastModifiedBy: z.ZodOptional<z.ZodString>;
179
+ warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
180
+ matchNotFound: z.ZodOptional<z.ZodBoolean>;
181
+ searchedFor: z.ZodOptional<z.ZodString>;
182
+ cached: z.ZodOptional<z.ZodBoolean>;
183
+ }, z.core.$strip>>>;
184
+ directories: z.ZodOptional<z.ZodArray<z.ZodObject<{
185
+ path: z.ZodString;
186
+ localPath: z.ZodString;
187
+ repoRoot: z.ZodOptional<z.ZodString>;
188
+ fileCount: z.ZodNumber;
189
+ totalSize: z.ZodNumber;
190
+ complete: z.ZodOptional<z.ZodBoolean>;
191
+ directoryEntryCount: z.ZodOptional<z.ZodNumber>;
192
+ eligibleFileCount: z.ZodOptional<z.ZodNumber>;
193
+ savedFileCount: z.ZodOptional<z.ZodNumber>;
194
+ skipped: z.ZodOptional<z.ZodObject<{
195
+ nonFile: z.ZodNumber;
196
+ missingDownloadUrl: z.ZodNumber;
197
+ oversized: z.ZodNumber;
198
+ binary: z.ZodNumber;
199
+ fileLimit: z.ZodNumber;
200
+ fetchFailed: z.ZodNumber;
201
+ totalSizeLimit: z.ZodNumber;
202
+ pathTraversal: z.ZodNumber;
203
+ }, z.core.$strip>>;
204
+ limits: z.ZodOptional<z.ZodObject<{
205
+ maxDirectoryFiles: z.ZodNumber;
206
+ maxTotalSize: z.ZodNumber;
207
+ maxFileSize: z.ZodNumber;
208
+ }, z.core.$strip>>;
209
+ warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
210
+ files: z.ZodOptional<z.ZodArray<z.ZodObject<{
211
+ path: z.ZodString;
212
+ size: z.ZodNumber;
213
+ type: z.ZodString;
214
+ }, z.core.$strip>>>;
215
+ cached: z.ZodOptional<z.ZodBoolean>;
216
+ resolvedBranch: z.ZodOptional<z.ZodString>;
217
+ }, z.core.$strip>>>;
218
+ }, z.core.$strip>>;
109
219
  }, z.core.$strip>>;
110
- hints: z.ZodOptional<z.ZodArray<z.ZodString>>;
111
220
  errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
112
221
  id: z.ZodString;
113
222
  owner: z.ZodOptional<z.ZodString>;
114
223
  repo: z.ZodOptional<z.ZodString>;
115
224
  path: z.ZodOptional<z.ZodString>;
116
225
  error: z.ZodString;
117
- hints: z.ZodOptional<z.ZodArray<z.ZodString>>;
118
226
  }, z.core.$strip>>>;
119
227
  }, z.core.$strip>;
120
228
  export type GitHubFetchContentOutputLocal = z.infer<typeof GitHubFetchContentOutputLocalSchema>;
@@ -49,6 +49,7 @@ export interface GitHubFileContentApiResult extends GitHubFileContentApiResultBa
49
49
  }
50
50
  export interface DirectoryFetchResult {
51
51
  localPath: string;
52
+ repoRoot: string;
52
53
  files: Array<{
53
54
  path: string;
54
55
  size: number;
@@ -56,6 +57,33 @@ export interface DirectoryFetchResult {
56
57
  }>;
57
58
  fileCount: number;
58
59
  totalSize: number;
60
+ /** true = no files were skipped by size/type/limit/error */
61
+ complete: boolean;
62
+ /** true = completeness was proven against the remote tree (fresh fetch + complete) */
63
+ verified: boolean;
64
+ /** HEAD commit SHA at the time of fetch; absent on cache hits from legacy entries */
65
+ commitSha?: string;
66
+ /** true when nonFile > 0 — subdirectory entries were present but not fetched; use ghCloneRepo for full coverage */
67
+ hasSubdirectories?: boolean;
68
+ directoryEntryCount: number;
69
+ eligibleFileCount: number;
70
+ savedFileCount: number;
71
+ skipped: {
72
+ nonFile: number;
73
+ missingDownloadUrl: number;
74
+ oversized: number;
75
+ binary: number;
76
+ fileLimit: number;
77
+ fetchFailed: number;
78
+ totalSizeLimit: number;
79
+ pathTraversal: number;
80
+ };
81
+ limits: {
82
+ maxDirectoryFiles: number;
83
+ maxTotalSize: number;
84
+ maxFileSize: number;
85
+ };
86
+ warnings?: string[];
59
87
  cached: boolean;
60
88
  expiresAt: string;
61
89
  owner: string;
@@ -63,4 +91,15 @@ export interface DirectoryFetchResult {
63
91
  branch: string;
64
92
  directoryPath: string;
65
93
  }
94
+ export interface FileMaterializationResult {
95
+ localPath: string;
96
+ repoRoot: string;
97
+ path: string;
98
+ size: number;
99
+ cached: boolean;
100
+ expiresAt: string;
101
+ owner: string;
102
+ repo: string;
103
+ branch: string;
104
+ }
66
105
  export {};
@@ -20,8 +20,8 @@ export declare const GitHubCodeSearchQueryLocalSchema: z.ZodObject<{
20
20
  reasoning: z.ZodOptional<z.ZodString>;
21
21
  }, z.core.$strip>;
22
22
  export declare const GitHubCodeSearchBulkQueryLocalSchema: z.ZodObject<{
23
- responseCharOffset: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>;
24
- responseCharLength: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>;
23
+ responseCharOffset: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
24
+ responseCharLength: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
25
25
  queries: z.ZodArray<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>;
26
26
  }, z.core.$strip>;
27
27
  export declare const GitHubCodeSearchOutputLocalSchema: z.ZodObject<{
@@ -40,7 +40,6 @@ export declare const GitHubCodeSearchOutputLocalSchema: z.ZodObject<{
40
40
  id: z.ZodString;
41
41
  data: z.ZodObject<{
42
42
  files: z.ZodArray<z.ZodObject<{
43
- id: z.ZodString;
44
43
  owner: z.ZodString;
45
44
  repo: z.ZodString;
46
45
  path: z.ZodString;
@@ -51,6 +50,7 @@ export declare const GitHubCodeSearchOutputLocalSchema: z.ZodObject<{
51
50
  matchIndices: z.ZodOptional<z.ZodArray<z.ZodObject<{
52
51
  start: z.ZodNumber;
53
52
  end: z.ZodNumber;
53
+ lineOffset: z.ZodNumber;
54
54
  }, z.core.$strip>>>;
55
55
  url: z.ZodOptional<z.ZodString>;
56
56
  }, z.core.$strip>>;
@@ -69,20 +69,20 @@ export declare const GitHubCodeSearchOutputLocalSchema: z.ZodObject<{
69
69
  }>>;
70
70
  totalMatchesCapped: z.ZodOptional<z.ZodBoolean>;
71
71
  hasMore: z.ZodBoolean;
72
+ nextPage: z.ZodOptional<z.ZodNumber>;
72
73
  uniqueFileCount: z.ZodOptional<z.ZodNumber>;
73
74
  }, z.core.$strip>>;
74
75
  }, z.core.$strip>;
75
76
  }, z.core.$strip>>;
76
- hints: z.ZodOptional<z.ZodArray<z.ZodString>>;
77
77
  emptyQueries: z.ZodOptional<z.ZodArray<z.ZodObject<{
78
78
  id: z.ZodString;
79
- hints: z.ZodOptional<z.ZodArray<z.ZodString>>;
80
79
  nonExistentScope: z.ZodOptional<z.ZodLiteral<true>>;
80
+ incompleteResults: z.ZodOptional<z.ZodLiteral<true>>;
81
81
  }, z.core.$strip>>>;
82
+ warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
82
83
  errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
83
84
  id: z.ZodString;
84
85
  error: z.ZodString;
85
- hints: z.ZodOptional<z.ZodArray<z.ZodString>>;
86
86
  }, z.core.$strip>>>;
87
87
  }, z.core.$strip>;
88
88
  export type GitHubCodeSearchOutputLocal = z.infer<typeof GitHubCodeSearchOutputLocalSchema>;
@@ -14,5 +14,4 @@ type QueryLike = {
14
14
  matchString?: string;
15
15
  };
16
16
  export declare function shapePullRequestForContent(pr: Record<string, unknown>, query: QueryLike, request: NormalizedPrContentRequest, shouldMinify?: boolean, showContentMap?: boolean): Record<string, unknown>;
17
- export declare function buildContentHints(pullRequests: Array<Record<string, unknown>>, request: NormalizedPrContentRequest): string[];
18
17
  export {};
@@ -1,17 +1,7 @@
1
1
  import { type CallToolResult } from '@modelcontextprotocol/sdk/types.js';
2
2
  import type { z } from 'zod';
3
3
  import { GitHubPullRequestSearchQueryLocalSchema } from './scheme.js';
4
- type GitHubPullRequestSearchQuery = z.infer<typeof GitHubPullRequestSearchQueryLocalSchema>;
5
- import type { ToolExecutionArgs, WithOptionalMeta } from '../../types/execution.js';
4
+ import type { ToolExecutionArgs } from '../../types/execution.js';
6
5
  type GitHubPullRequestSearchInput = z.input<typeof GitHubPullRequestSearchQueryLocalSchema>;
7
- type PartialPRQuery = WithOptionalMeta<GitHubPullRequestSearchQuery>;
8
6
  export declare function searchMultipleGitHubPullRequests(args: ToolExecutionArgs<GitHubPullRequestSearchInput>): Promise<CallToolResult>;
9
- export declare function buildPRSearchOutput(input: {
10
- data: Record<string, unknown>;
11
- pullRequests: Array<Record<string, unknown>>;
12
- extraHints: string[];
13
- }, _query: PartialPRQuery): {
14
- data: Record<string, unknown>;
15
- extraHints: string[];
16
- };
17
7
  export {};
@@ -130,8 +130,8 @@ export declare const GitHubPullRequestSearchQueryLocalSchema: z.ZodObject<{
130
130
  reasoning: z.ZodOptional<z.ZodString>;
131
131
  }, z.core.$strip>;
132
132
  export declare const GitHubPullRequestSearchBulkQueryLocalSchema: z.ZodObject<{
133
- responseCharOffset: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>;
134
- responseCharLength: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>;
133
+ responseCharOffset: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
134
+ responseCharLength: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
135
135
  queries: z.ZodArray<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>;
136
136
  }, z.core.$strip>;
137
137
  export declare const GitHubSearchPullRequestsOutputLocalSchema: z.ZodObject<{
@@ -160,6 +160,8 @@ export declare const GitHubSearchPullRequestsOutputLocalSchema: z.ZodObject<{
160
160
  currentPage: z.ZodNumber;
161
161
  totalPages: z.ZodNumber;
162
162
  hasMore: z.ZodBoolean;
163
+ nextPage: z.ZodOptional<z.ZodNumber>;
164
+ nextMatchPage: z.ZodOptional<z.ZodNumber>;
163
165
  perPage: z.ZodOptional<z.ZodNumber>;
164
166
  totalMatches: z.ZodOptional<z.ZodNumber>;
165
167
  totalFiles: z.ZodOptional<z.ZodNumber>;
@@ -189,6 +191,8 @@ export declare const GitHubSearchPullRequestsOutputLocalSchema: z.ZodObject<{
189
191
  currentPage: z.ZodNumber;
190
192
  totalPages: z.ZodNumber;
191
193
  hasMore: z.ZodBoolean;
194
+ nextPage: z.ZodOptional<z.ZodNumber>;
195
+ nextMatchPage: z.ZodOptional<z.ZodNumber>;
192
196
  perPage: z.ZodOptional<z.ZodNumber>;
193
197
  totalMatches: z.ZodOptional<z.ZodNumber>;
194
198
  totalFiles: z.ZodOptional<z.ZodNumber>;
@@ -37,8 +37,8 @@ export declare const GitHubReposSearchSingleQueryLocalSchema: z.ZodObject<{
37
37
  reasoning: z.ZodOptional<z.ZodString>;
38
38
  }, z.core.$strip>;
39
39
  export declare const GitHubReposSearchBulkQueryLocalSchema: z.ZodObject<{
40
- responseCharOffset: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>;
41
- responseCharLength: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>;
40
+ responseCharOffset: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
41
+ responseCharLength: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
42
42
  queries: z.ZodArray<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>;
43
43
  }, z.core.$strip>;
44
44
  export declare const GitHubSearchRepositoriesOutputLocalSchema: z.ZodObject<{
@@ -78,13 +78,14 @@ export declare const GitHubSearchRepositoriesOutputLocalSchema: z.ZodObject<{
78
78
  lowerBound: "lowerBound";
79
79
  }>>;
80
80
  totalMatchesCapped: z.ZodOptional<z.ZodBoolean>;
81
+ nextPage: z.ZodOptional<z.ZodNumber>;
81
82
  }, z.core.$strip>>;
82
83
  }, z.core.$loose>>;
83
84
  }, z.core.$loose>>>;
84
- readonly hints: z.ZodOptional<z.ZodArray<z.ZodString>>;
85
- readonly base: z.ZodOptional<z.ZodString>;
86
- readonly shared: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
87
- readonly responsePagination: z.ZodOptional<z.ZodObject<{
85
+ hints: z.ZodOptional<z.ZodArray<z.ZodString>>;
86
+ base: z.ZodOptional<z.ZodString>;
87
+ shared: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
88
+ responsePagination: z.ZodOptional<z.ZodObject<{
88
89
  currentPage: z.ZodNumber;
89
90
  totalPages: z.ZodNumber;
90
91
  hasMore: z.ZodBoolean;
@@ -8,13 +8,4 @@ type PartialRepoStructureQuery = WithOptionalMeta<GitHubViewRepoStructureQuery>;
8
8
  import type { ToolExecutionArgs } from '../../types/execution.js';
9
9
  export declare function filterStructure(structure: Record<string, GitHubRepoStructureDirectoryEntry>): Record<string, GitHubRepoStructureDirectoryEntry>;
10
10
  export declare function exploreMultipleRepositoryStructures(args: ToolExecutionArgs<PartialRepoStructureQuery>): Promise<CallToolResult>;
11
- export declare function buildRepoStructureOutput(input: {
12
- data: Record<string, unknown>;
13
- entryCount: number;
14
- wasTruncated: boolean;
15
- extraHints: string[];
16
- }, _query: PartialRepoStructureQuery): {
17
- data: Record<string, unknown>;
18
- extraHints: string[];
19
- };
20
11
  export {};
@@ -13,8 +13,8 @@ export declare const GitHubViewRepoStructureQueryLocalSchema: import("zod").ZodO
13
13
  reasoning: import("zod").ZodOptional<import("zod").ZodString>;
14
14
  }, import("zod/v4/core").$strip>;
15
15
  export declare const GitHubViewRepoStructureBulkQueryLocalSchema: import("zod").ZodObject<{
16
- responseCharOffset: import("zod").ZodOptional<import("zod").ZodPipe<import("zod").ZodTransform<unknown, unknown>, import("zod").ZodNumber>>;
17
- responseCharLength: import("zod").ZodOptional<import("zod").ZodPipe<import("zod").ZodTransform<unknown, unknown>, import("zod").ZodNumber>>;
16
+ responseCharOffset: import("zod").ZodOptional<import("zod").ZodPreprocess<import("zod").ZodNumber>>;
17
+ responseCharLength: import("zod").ZodOptional<import("zod").ZodPreprocess<import("zod").ZodNumber>>;
18
18
  queries: import("zod").ZodArray<import("zod").ZodType<unknown, unknown, import("zod/v4/core").$ZodTypeInternals<unknown, unknown>>>;
19
19
  }, import("zod/v4/core").$strip>;
20
20
  export declare const GitHubViewRepoStructureOutputLocalSchema: import("zod").ZodObject<{
@@ -33,6 +33,8 @@ export declare const GitHubViewRepoStructureOutputLocalSchema: import("zod").Zod
33
33
  currentPage: import("zod").ZodNumber;
34
34
  totalPages: import("zod").ZodNumber;
35
35
  hasMore: import("zod").ZodBoolean;
36
+ nextPage: import("zod").ZodOptional<import("zod").ZodNumber>;
37
+ nextMatchPage: import("zod").ZodOptional<import("zod").ZodNumber>;
36
38
  perPage: import("zod").ZodOptional<import("zod").ZodNumber>;
37
39
  totalMatches: import("zod").ZodOptional<import("zod").ZodNumber>;
38
40
  totalFiles: import("zod").ZodOptional<import("zod").ZodNumber>;
@@ -53,6 +55,8 @@ export declare const GitHubViewRepoStructureOutputLocalSchema: import("zod").Zod
53
55
  currentPage: import("zod").ZodNumber;
54
56
  totalPages: import("zod").ZodNumber;
55
57
  hasMore: import("zod").ZodBoolean;
58
+ nextPage: import("zod").ZodOptional<import("zod").ZodNumber>;
59
+ nextMatchPage: import("zod").ZodOptional<import("zod").ZodNumber>;
56
60
  perPage: import("zod").ZodOptional<import("zod").ZodNumber>;
57
61
  totalMatches: import("zod").ZodOptional<import("zod").ZodNumber>;
58
62
  totalFiles: import("zod").ZodOptional<import("zod").ZodNumber>;
@@ -66,10 +70,10 @@ export declare const GitHubViewRepoStructureOutputLocalSchema: import("zod").Zod
66
70
  kind: import("zod").ZodString;
67
71
  }, import("zod/v4/core").$loose>]>>>;
68
72
  error: import("zod").ZodOptional<import("zod").ZodString>;
69
- readonly hints: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
70
- readonly base: import("zod").ZodOptional<import("zod").ZodString>;
71
- readonly shared: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodNumber, import("zod").ZodBoolean]>>>;
72
- readonly responsePagination: import("zod").ZodOptional<import("zod").ZodObject<{
73
+ hints: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
74
+ base: import("zod").ZodOptional<import("zod").ZodString>;
75
+ shared: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodNumber, import("zod").ZodBoolean]>>>;
76
+ responsePagination: import("zod").ZodOptional<import("zod").ZodObject<{
73
77
  currentPage: import("zod").ZodNumber;
74
78
  totalPages: import("zod").ZodNumber;
75
79
  hasMore: import("zod").ZodBoolean;
@@ -20,3 +20,5 @@ export declare function listArchiveEntries(path: string, verbose: boolean): Prom
20
20
  entries?: string[];
21
21
  }>;
22
22
  export declare function extractArchiveEntry(path: string, entry: string): Promise<ArchiveChainResult>;
23
+ /** Extracts the whole archive into destDir (which must already exist). */
24
+ export declare function extractArchiveToDir(path: string, destDir: string): Promise<ArchiveChainResult>;