@octocodeai/octocode-tools-core 17.0.2 → 18.0.1

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 (218) hide show
  1. package/README.md +48 -38
  2. package/dist/direct.js +52 -35
  3. package/dist/github/canonicalRepo.d.ts +14 -0
  4. package/dist/github/codeSearch/matchPositions.d.ts +11 -0
  5. package/dist/github/codeSearch.d.ts +2 -1
  6. package/dist/github/compare.d.ts +42 -0
  7. package/dist/github/dateWindow.d.ts +4 -0
  8. package/dist/github/discussions.d.ts +45 -0
  9. package/dist/github/githubAPI.d.ts +7 -13
  10. package/dist/github/history/commitFiles.d.ts +39 -0
  11. package/dist/github/history.d.ts +1 -0
  12. package/dist/github/issues/types.d.ts +8 -8
  13. package/dist/github/prTransformation.d.ts +24 -25
  14. package/dist/github/queryBuilders/base.d.ts +0 -1
  15. package/dist/github/queryBuilders/issues.d.ts +0 -6
  16. package/dist/github/releases.d.ts +9 -1
  17. package/dist/github/responseHeaders.d.ts +6 -0
  18. package/dist/index.d.ts +7 -6
  19. package/dist/index.js +56 -39
  20. package/dist/providers/github/githubPullRequests.d.ts +9 -0
  21. package/dist/providers/github/paginationMetadata.d.ts +6 -5
  22. package/dist/providers/providerQueries.d.ts +11 -6
  23. package/dist/providers/providerResults.d.ts +9 -1
  24. package/dist/schema.d.ts +0 -1
  25. package/dist/schema.js +1 -2
  26. package/dist/scheme/pagination.d.ts +5 -13
  27. package/dist/scheme/responseEnvelope.d.ts +28 -22
  28. package/dist/security/bridge.d.ts +3 -2
  29. package/dist/shared/config/index.d.ts +0 -1
  30. package/dist/shared/config/index.js +1 -1
  31. package/dist/shared/languageSelectors/classify.d.ts +2 -2
  32. package/dist/shared/languageSelectors/data.d.ts +4 -4
  33. package/dist/shared/languageSelectors.d.ts +1 -1
  34. package/dist/shared/paths.d.ts +1 -4
  35. package/dist/tools/directToolCatalog/toolCatalogDefinitions.d.ts +10 -11
  36. package/dist/tools/directToolCatalog/toolCatalogFormatters.d.ts +12 -0
  37. package/dist/tools/directToolCatalog.meta.d.ts +1 -0
  38. package/dist/tools/github_clone_repo/contentSize.d.ts +9 -0
  39. package/dist/tools/github_clone_repo/scheme.d.ts +26 -96
  40. package/dist/tools/github_fetch_content/finalizer/types.d.ts +2 -3
  41. package/dist/tools/github_fetch_content/scheme.d.ts +92 -140
  42. package/dist/tools/github_fetch_content/types.d.ts +2 -1
  43. package/dist/tools/github_search_code/scheme.d.ts +39 -87
  44. package/dist/tools/github_search_discussions/execution.d.ts +15 -0
  45. package/dist/tools/github_search_discussions/scheme.d.ts +16 -0
  46. package/dist/tools/github_search_pull_requests/contentResponse/fileSurfaces.d.ts +2 -16
  47. package/dist/tools/github_search_pull_requests/scheme.d.ts +97 -119
  48. package/dist/tools/github_search_pull_requests/splitExecutions.d.ts +8 -0
  49. package/dist/tools/github_search_pull_requests/splitSchemes.d.ts +216 -0
  50. package/dist/tools/github_search_pull_requests/types.d.ts +28 -29
  51. package/dist/tools/github_search_repos/execution.d.ts +0 -2
  52. package/dist/tools/github_search_repos/scheme.d.ts +36 -64
  53. package/dist/tools/github_view_repo_structure/scheme.d.ts +37 -66
  54. package/dist/tools/local_dead_code/deadCodeScan.d.ts +26 -0
  55. package/dist/tools/local_dead_code/entrypoints.d.ts +16 -0
  56. package/dist/tools/local_dead_code/execution.d.ts +4 -0
  57. package/dist/tools/local_dead_code/graphBuilder.d.ts +43 -0
  58. package/dist/tools/local_dead_code/importResolver.d.ts +6 -0
  59. package/dist/tools/local_dead_code/local_dead_code.d.ts +5 -0
  60. package/dist/tools/local_dead_code/reachability.d.ts +21 -0
  61. package/dist/tools/local_dead_code/retention.d.ts +22 -0
  62. package/dist/tools/local_dead_code/scheme.d.ts +51 -0
  63. package/dist/tools/local_dead_code/types.d.ts +56 -0
  64. package/dist/tools/local_fetch_content/execution.d.ts +0 -1
  65. package/dist/tools/local_fetch_content/fetchContent/extraction.d.ts +6 -0
  66. package/dist/tools/local_fetch_content/fetchContent/validation.d.ts +9 -1
  67. package/dist/tools/local_fetch_content/fetchContent.d.ts +0 -1
  68. package/dist/tools/local_fetch_content/scheme.d.ts +28 -90
  69. package/dist/tools/local_find_files/execution.d.ts +0 -1
  70. package/dist/tools/local_find_files/findFiles.d.ts +0 -3
  71. package/dist/tools/local_find_files/findFilesNext.d.ts +26 -0
  72. package/dist/tools/local_find_files/pathPatternBraces.d.ts +20 -0
  73. package/dist/tools/local_find_files/scheme.d.ts +19 -81
  74. package/dist/tools/local_ripgrep/captureBudget.d.ts +25 -0
  75. package/dist/tools/local_ripgrep/rankingProfile/rankingProfiles.d.ts +1 -0
  76. package/dist/tools/local_ripgrep/rankingProfile/rankingResults.d.ts +1 -0
  77. package/dist/tools/local_ripgrep/ripgrepResultBuilder/searchNext.d.ts +1 -1
  78. package/dist/tools/local_ripgrep/scheme.d.ts +89 -190
  79. package/dist/tools/local_view_structure/execution.d.ts +0 -1
  80. package/dist/tools/local_view_structure/local_view_structure.d.ts +0 -1
  81. package/dist/tools/local_view_structure/scheme.d.ts +34 -87
  82. package/dist/tools/local_view_structure/structureFilters.d.ts +2 -4
  83. package/dist/tools/local_view_structure/structureResponse.d.ts +1 -0
  84. package/dist/tools/local_view_structure/viewStructureNext.d.ts +25 -0
  85. package/dist/tools/lsp/semantic_content/index.d.ts +2 -1
  86. package/dist/tools/lsp/semantic_content/scheme.d.ts +167 -642
  87. package/dist/tools/lsp/semantic_content/semanticAnchored.d.ts +8 -2
  88. package/dist/tools/lsp/semantic_content/semanticEnvelopes/locationEnvelopes.d.ts +2 -1
  89. package/dist/tools/lsp/semantic_content/semanticFileOps/anchor.d.ts +17 -1
  90. package/dist/tools/lsp/semantic_content/semanticNext.d.ts +2 -0
  91. package/dist/tools/lsp/semantic_content/semanticPresentation.d.ts +1 -1
  92. package/dist/tools/lsp/shared/callHierarchyTraversal.d.ts +14 -2
  93. package/dist/tools/lsp/shared/semanticTypes.d.ts +14 -1
  94. package/dist/tools/package_search/execution.d.ts +9 -6
  95. package/dist/tools/package_search/queryHelpers.d.ts +8 -0
  96. package/dist/tools/package_search/scheme.d.ts +30 -86
  97. package/dist/tools/providerMappers/codeSearch.d.ts +0 -1
  98. package/dist/tools/providerMappers/pullRequests.d.ts +0 -13
  99. package/dist/tools/providerMappers/repoSearch.d.ts +1 -5
  100. package/dist/tools/providerMappers/repoStructure.d.ts +4 -0
  101. package/dist/tools/toolCatalogFactory.d.ts +25 -0
  102. package/dist/tools/toolConfig.d.ts +9 -24
  103. package/dist/tools/toolNames.d.ts +2 -2
  104. package/dist/tools/toolSchemaImports.d.ts +3 -1
  105. package/dist/types/execution.d.ts +1 -0
  106. package/dist/types/toolOutput.d.ts +38 -0
  107. package/dist/utils/contextUtils.d.ts +6 -0
  108. package/dist/utils/core/types.d.ts +4 -0
  109. package/dist/utils/jsSymbolNames.d.ts +6 -0
  110. package/package.json +4 -8
  111. package/dist/oql/adapters/compile.d.ts +0 -25
  112. package/dist/oql/adapters/github/execute.d.ts +0 -16
  113. package/dist/oql/adapters/github/provider-diagnostics.d.ts +0 -14
  114. package/dist/oql/adapters/github/shared.d.ts +0 -75
  115. package/dist/oql/adapters/github.d.ts +0 -14
  116. package/dist/oql/adapters/graphProof.d.ts +0 -6
  117. package/dist/oql/adapters/graphView/filters.d.ts +0 -25
  118. package/dist/oql/adapters/graphView/nativeEdges.d.ts +0 -5
  119. package/dist/oql/adapters/graphView.d.ts +0 -29
  120. package/dist/oql/adapters/local/code.d.ts +0 -3
  121. package/dist/oql/adapters/local/codeBoolean.d.ts +0 -3
  122. package/dist/oql/adapters/local/fileRowOps.d.ts +0 -11
  123. package/dist/oql/adapters/local/files.d.ts +0 -3
  124. package/dist/oql/adapters/local/filesBoolean.d.ts +0 -10
  125. package/dist/oql/adapters/local/filesContentLeaf.d.ts +0 -12
  126. package/dist/oql/adapters/local/filesUniverse.d.ts +0 -6
  127. package/dist/oql/adapters/local/findToolType.d.ts +0 -10
  128. package/dist/oql/adapters/local/predicates.d.ts +0 -18
  129. package/dist/oql/adapters/local/scope.d.ts +0 -14
  130. package/dist/oql/adapters/local/searchToolType.d.ts +0 -7
  131. package/dist/oql/adapters/local/structureContent.d.ts +0 -6
  132. package/dist/oql/adapters/local/types.d.ts +0 -34
  133. package/dist/oql/adapters/local.d.ts +0 -4
  134. package/dist/oql/adapters/materialize.d.ts +0 -11
  135. package/dist/oql/adapters/pagination.d.ts +0 -21
  136. package/dist/oql/adapters/researchTargets/diff.d.ts +0 -16
  137. package/dist/oql/adapters/researchTargets/graph.d.ts +0 -3
  138. package/dist/oql/adapters/researchTargets/history.d.ts +0 -20
  139. package/dist/oql/adapters/researchTargets/pagination.d.ts +0 -54
  140. package/dist/oql/adapters/researchTargets/repositories.d.ts +0 -4
  141. package/dist/oql/adapters/researchTargets/research.d.ts +0 -3
  142. package/dist/oql/adapters/researchTargets/rows.d.ts +0 -16
  143. package/dist/oql/adapters/researchTargets/semantics.d.ts +0 -3
  144. package/dist/oql/adapters/researchTargets/shared.d.ts +0 -11
  145. package/dist/oql/adapters/researchTargets.d.ts +0 -8
  146. package/dist/oql/adapters/resultMap.d.ts +0 -27
  147. package/dist/oql/adapters/ruleYaml.d.ts +0 -11
  148. package/dist/oql/adapters/runner.d.ts +0 -21
  149. package/dist/oql/capabilities.d.ts +0 -31
  150. package/dist/oql/defaults.d.ts +0 -26
  151. package/dist/oql/diagnostics.d.ts +0 -25
  152. package/dist/oql/diffLanes.d.ts +0 -29
  153. package/dist/oql/envelope.d.ts +0 -21
  154. package/dist/oql/features.d.ts +0 -7
  155. package/dist/oql/index.d.ts +0 -27
  156. package/dist/oql/index.js +0 -47
  157. package/dist/oql/normalize/batch.d.ts +0 -2
  158. package/dist/oql/normalize/materialize.d.ts +0 -2
  159. package/dist/oql/normalize/params.d.ts +0 -2
  160. package/dist/oql/normalize/query.d.ts +0 -2
  161. package/dist/oql/normalize/scope.d.ts +0 -2
  162. package/dist/oql/normalize/shared.d.ts +0 -7
  163. package/dist/oql/normalize/source.d.ts +0 -2
  164. package/dist/oql/normalize/where.d.ts +0 -2
  165. package/dist/oql/normalize.d.ts +0 -20
  166. package/dist/oql/planner/planDiagnostics.d.ts +0 -13
  167. package/dist/oql/planner/predicateRouting.d.ts +0 -35
  168. package/dist/oql/planner.d.ts +0 -7
  169. package/dist/oql/predicateUtils.d.ts +0 -3
  170. package/dist/oql/research/analyze/manifest-scan.d.ts +0 -4
  171. package/dist/oql/research/analyze/source-graph.d.ts +0 -7
  172. package/dist/oql/research/analyze/symbol-scoring.d.ts +0 -4
  173. package/dist/oql/research/analyze/types.d.ts +0 -163
  174. package/dist/oql/research/analyze/utils.d.ts +0 -16
  175. package/dist/oql/research/analyze.d.ts +0 -3
  176. package/dist/oql/research/packets/builders.d.ts +0 -4
  177. package/dist/oql/research/packets/types.d.ts +0 -91
  178. package/dist/oql/research/packets.d.ts +0 -21
  179. package/dist/oql/run/batch.d.ts +0 -3
  180. package/dist/oql/run/continuations/records.d.ts +0 -19
  181. package/dist/oql/run/continuations/registry.d.ts +0 -22
  182. package/dist/oql/run/continuations/semantics.d.ts +0 -3
  183. package/dist/oql/run/continuations/types.d.ts +0 -12
  184. package/dist/oql/run/dryRun.d.ts +0 -11
  185. package/dist/oql/run/paths.d.ts +0 -15
  186. package/dist/oql/run/proofGrades.d.ts +0 -8
  187. package/dist/oql/run/select.d.ts +0 -10
  188. package/dist/oql/run/single.d.ts +0 -22
  189. package/dist/oql/run.d.ts +0 -5
  190. package/dist/oql/schema/predicates.d.ts +0 -12
  191. package/dist/oql/schema.d.ts +0 -1049
  192. package/dist/oql/schemeText.d.ts +0 -152
  193. package/dist/oql/shorthand/predicates.d.ts +0 -15
  194. package/dist/oql/shorthand/query-controls.d.ts +0 -18
  195. package/dist/oql/shorthand/target-params.d.ts +0 -9
  196. package/dist/oql/shorthand/types.d.ts +0 -159
  197. package/dist/oql/shorthand/utils.d.ts +0 -7
  198. package/dist/oql/shorthand.d.ts +0 -8
  199. package/dist/oql/targetParams.d.ts +0 -7
  200. package/dist/oql/transformers/contract.d.ts +0 -19
  201. package/dist/oql/transformers/github/code.d.ts +0 -9
  202. package/dist/oql/transformers/github/common.d.ts +0 -14
  203. package/dist/oql/transformers/language.d.ts +0 -1
  204. package/dist/oql/transformers/registry.d.ts +0 -16
  205. package/dist/oql/transformers/types.d.ts +0 -11
  206. package/dist/oql/types/diagnostics.d.ts +0 -22
  207. package/dist/oql/types/envelope.d.ts +0 -78
  208. package/dist/oql/types/guards.d.ts +0 -9
  209. package/dist/oql/types/planner.d.ts +0 -46
  210. package/dist/oql/types/predicates.d.ts +0 -93
  211. package/dist/oql/types/query.d.ts +0 -143
  212. package/dist/oql/types/recordData.d.ts +0 -127
  213. package/dist/oql/types/recordRows.d.ts +0 -48
  214. package/dist/oql/types/results.d.ts +0 -118
  215. package/dist/oql/types/targets.d.ts +0 -22
  216. package/dist/oql/types.d.ts +0 -27
  217. package/dist/tools/oql_search/execution.d.ts +0 -7
  218. package/dist/tools/toolMetadata/descriptionOverrides.d.ts +0 -4
@@ -12,6 +12,16 @@ export interface DirectToolDefinition {
12
12
  name: string;
13
13
  schema: z.ZodType;
14
14
  inputSchema: z.ZodType;
15
+ /**
16
+ * Present only for opt-in tools (ghListReleases/ghSearchDiscussions) that
17
+ * are NOT currently enabled. Their entry still appears here (schema/help
18
+ * stay discoverable via `tools <name> --scheme` without already knowing the
19
+ * env var) — the runtime execution registry (`ALL_TOOLS` in toolConfig.ts)
20
+ * is the actual enforcement point and still omits them until enabled.
21
+ */
22
+ disabled?: {
23
+ envVar: string;
24
+ };
15
25
  }
16
26
  export type DirectToolCategory = 'GitHub' | 'Local Code' | 'Package' | 'Other';
17
27
  export declare const DIRECT_TOOL_CATEGORIES: readonly DirectToolCategory[];
@@ -29,11 +39,6 @@ export interface DirectToolCommandPattern {
29
39
  query: Record<string, unknown>;
30
40
  command: string;
31
41
  }
32
- export interface DirectToolOutputField {
33
- name: string;
34
- type: string;
35
- optional?: boolean;
36
- }
37
42
  export interface DirectToolMetadata {
38
43
  tools?: Record<string, {
39
44
  description?: string;
@@ -60,9 +65,3 @@ export declare const DIRECT_TOOL_DEFINITIONS: DirectToolDefinition[];
60
65
  export declare function findDirectToolDefinition(name: string): DirectToolDefinition | undefined;
61
66
  export declare function getDirectToolCategory(toolName: string): DirectToolCategory;
62
67
  export declare function sortDirectToolNames(toolNames: string[]): string[];
63
- export declare function formatDirectToolSchemaText(toolName: string): string;
64
- export declare function formatDirectToolMetadataSchemaText(schema: Record<string, string> | undefined): string;
65
- export declare function getDirectToolAutoFilledFields(toolName: string): string[];
66
- export declare function getDirectToolOutputFields(): DirectToolOutputField[];
67
- export declare function formatDirectToolOutputSchemaText(): string;
68
- export declare function getDirectToolDescription(toolName: string, metadata?: DirectToolMetadata | null): string;
@@ -0,0 +1,12 @@
1
+ import { type DirectToolMetadata } from './toolCatalogDefinitions.js';
2
+ export interface DirectToolOutputField {
3
+ name: string;
4
+ type: string;
5
+ optional?: boolean;
6
+ }
7
+ export declare function formatDirectToolSchemaText(toolName: string): string;
8
+ export declare function formatDirectToolMetadataSchemaText(schema: Record<string, string> | undefined): string;
9
+ export declare function getDirectToolAutoFilledFields(toolName: string): string[];
10
+ export declare function getDirectToolOutputFields(): DirectToolOutputField[];
11
+ export declare function formatDirectToolOutputSchemaText(): string;
12
+ export declare function getDirectToolDescription(toolName: string, metadata?: DirectToolMetadata | null): string;
@@ -21,6 +21,7 @@
21
21
  * should need to import those sibling modules directly; import from here.
22
22
  */
23
23
  export * from './directToolCatalog/toolCatalogDefinitions.js';
24
+ export * from './directToolCatalog/toolCatalogFormatters.js';
24
25
  export * from './directToolCatalog/toolSchemaIntrospection.js';
25
26
  export * from './directToolCatalog/toolCommandPatterns.js';
26
27
  export * from './directToolCatalog/toolInputPreparation.js';
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Size of a clone's checked-out working tree, excluding the top-level `.git`
3
+ * directory. The shared `getDirectorySizeBytes` counts everything, so a sparse
4
+ * blob:none checkout of a few KB still reports the ~1MB packed-git floor —
5
+ * making `totalSize`/`rawResponse` reflect Git plumbing, not the content the
6
+ * caller actually received. `.git` only lives at the clone root, so skipping it
7
+ * there and reusing the shared walker for every other subtree is sufficient.
8
+ */
9
+ export declare function getCheckedOutSizeBytes(targetPath: string): number;
@@ -1,96 +1,26 @@
1
- export declare const CloneRepoQueryLocalSchema: import("zod").ZodObject<{
2
- owner: import("zod").ZodString;
3
- repo: import("zod").ZodString;
4
- branch: import("zod").ZodOptional<import("zod").ZodString>;
5
- sparsePath: import("zod").ZodOptional<import("zod").ZodString>;
6
- forceRefresh: import("zod").ZodOptional<import("zod").ZodBoolean>;
7
- id: import("zod").ZodOptional<import("zod").ZodString>;
8
- mainResearchGoal: import("zod").ZodOptional<import("zod").ZodString>;
9
- researchGoal: import("zod").ZodOptional<import("zod").ZodString>;
10
- reasoning: import("zod").ZodOptional<import("zod").ZodString>;
11
- }, import("zod/v4/core").$strip>;
12
- export declare const BulkCloneRepoLocalSchema: import("zod").ZodObject<{
13
- responseCharOffset: import("zod").ZodOptional<import("zod").ZodPreprocess<import("zod").ZodNumber>>;
14
- responseCharLength: import("zod").ZodOptional<import("zod").ZodPreprocess<import("zod").ZodNumber>>;
15
- queries: import("zod").ZodArray<import("zod").ZodType<unknown, unknown, import("zod/v4/core").$ZodTypeInternals<unknown, unknown>>>;
16
- }, import("zod/v4/core").$strip>;
17
- export declare const GitHubCloneRepoOutputLocalSchema: import("zod").ZodObject<{
18
- status: import("zod").ZodOptional<import("zod").ZodEnum<{
19
- empty: import("@octocodeai/octocode-core/types").ToolStatus.Empty;
20
- error: import("@octocodeai/octocode-core/types").ToolStatus.Error;
21
- }>>;
22
- data: import("zod").ZodOptional<import("zod").ZodObject<{
23
- localPath: import("zod").ZodString;
24
- resolvedBranch: import("zod").ZodOptional<import("zod").ZodString>;
25
- cached: import("zod").ZodOptional<import("zod").ZodBoolean>;
26
- sparsePath: import("zod").ZodOptional<import("zod").ZodString>;
27
- cloneTimeMs: import("zod").ZodOptional<import("zod").ZodNumber>;
28
- totalSize: import("zod").ZodOptional<import("zod").ZodNumber>;
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>>;
53
- }, import("zod/v4/core").$strip>>;
54
- localPath: import("zod").ZodOptional<import("zod").ZodString>;
55
- resolvedBranch: import("zod").ZodOptional<import("zod").ZodString>;
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>>;
81
- warnings: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodObject<{
82
- kind: import("zod").ZodString;
83
- }, import("zod/v4/core").$loose>]>>>;
84
- error: import("zod").ZodOptional<import("zod").ZodString>;
85
- base: import("zod").ZodOptional<import("zod").ZodString>;
86
- shared: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodNumber, import("zod").ZodBoolean]>>>;
87
- responsePagination: import("zod").ZodOptional<import("zod").ZodObject<{
88
- currentPage: import("zod").ZodNumber;
89
- totalPages: import("zod").ZodNumber;
90
- hasMore: import("zod").ZodBoolean;
91
- charOffset: import("zod").ZodNumber;
92
- charLength: import("zod").ZodNumber;
93
- totalChars: import("zod").ZodNumber;
94
- nextCharOffset: import("zod").ZodOptional<import("zod").ZodNumber>;
95
- }, import("zod/v4/core").$strip>>;
96
- }, import("zod/v4/core").$loose>;
1
+ import type { z } from 'zod';
2
+ import { GitHubCloneRepoOutputSchema as UpstreamCloneRepoOutput } from '@octocodeai/octocode-core/schemas/outputs';
3
+ import type { ToolContinuation } from '../../scheme/pagination.js';
4
+ import type { ResponsePaginationInfo } from '../../types/toolOutput.js';
5
+ export declare const CloneRepoQueryLocalSchema: z.ZodObject<{
6
+ owner: z.ZodString;
7
+ repo: z.ZodString;
8
+ branch: z.ZodOptional<z.ZodString>;
9
+ sparsePath: z.ZodOptional<z.ZodString>;
10
+ forceRefresh: z.ZodOptional<z.ZodBoolean>;
11
+ id: z.ZodOptional<z.ZodString>;
12
+ mainResearchGoal: z.ZodOptional<z.ZodString>;
13
+ researchGoal: z.ZodOptional<z.ZodString>;
14
+ reasoning: z.ZodOptional<z.ZodString>;
15
+ }, z.core.$strip>;
16
+ export declare const BulkCloneRepoLocalSchema: z.ZodObject<{
17
+ responseCharOffset: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
18
+ responseCharLength: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
19
+ queries: z.ZodArray<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>;
20
+ }, z.core.$strip>;
21
+ export type GitHubCloneRepoOutputLocal = z.infer<typeof UpstreamCloneRepoOutput> & {
22
+ base?: string;
23
+ shared?: Record<string, string | number | boolean>;
24
+ responsePagination?: ResponsePaginationInfo;
25
+ next?: Record<string, ToolContinuation>;
26
+ };
@@ -11,11 +11,9 @@ export type FileEntry = {
11
11
  content: string;
12
12
  localPath?: string;
13
13
  repoRoot?: string;
14
- fileSize?: number;
15
14
  contentView?: 'none' | 'standard' | 'symbols';
16
15
  totalLines?: number;
17
16
  sourceChars?: number;
18
- sourceBytes?: number;
19
17
  resolvedBranch?: string;
20
18
  pagination?: PaginationInfo;
21
19
  isPartial?: boolean;
@@ -25,6 +23,8 @@ export type FileEntry = {
25
23
  start: number;
26
24
  end: number;
27
25
  }>;
26
+ /** Exact matched-line numbers (matchRanges are ±contextLines windows around them). */
27
+ matchedLines?: number[];
28
28
  lastModified?: string;
29
29
  lastModifiedBy?: string;
30
30
  warnings?: string[];
@@ -89,7 +89,6 @@ export type RepoGroup = {
89
89
  repo: string;
90
90
  files?: FileEntry[];
91
91
  directories?: DirectoryEntry[];
92
- data?: RepoGroupData;
93
92
  };
94
93
  export type RepoGroupData = {
95
94
  owner: string;
@@ -1,4 +1,6 @@
1
1
  import { z } from 'zod';
2
+ import type { CharPagination, ItemPagination, ToolContinuation } from '../../scheme/pagination.js';
3
+ import type { ResponsePaginationInfo } from '../../types/toolOutput.js';
2
4
  export declare const FileContentQueryBaseLocalSchema: z.ZodObject<Readonly<{
3
5
  [k: string]: z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
4
6
  }>, z.core.$strip>;
@@ -36,143 +38,93 @@ export declare const FileContentBulkQueryLocalSchema: z.ZodObject<{
36
38
  responseCharLength: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
37
39
  queries: z.ZodArray<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>;
38
40
  }, z.core.$strip>;
39
- export declare const GitHubFetchContentOutputLocalSchema: z.ZodObject<{
40
- base: z.ZodOptional<z.ZodString>;
41
- shared: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
42
- responsePagination: z.ZodOptional<z.ZodObject<{
43
- currentPage: z.ZodNumber;
44
- totalPages: z.ZodNumber;
45
- hasMore: z.ZodBoolean;
46
- charOffset: z.ZodNumber;
47
- charLength: z.ZodNumber;
48
- totalChars: z.ZodNumber;
49
- nextCharOffset: z.ZodOptional<z.ZodNumber>;
50
- }, z.core.$strip>>;
51
- results: z.ZodArray<z.ZodObject<{
52
- id: z.ZodString;
53
- data: z.ZodOptional<z.ZodObject<{
54
- owner: z.ZodString;
55
- repo: z.ZodString;
56
- files: z.ZodOptional<z.ZodArray<z.ZodObject<{
57
- path: z.ZodString;
58
- content: z.ZodString;
59
- localPath: z.ZodOptional<z.ZodString>;
60
- repoRoot: z.ZodOptional<z.ZodString>;
61
- contentView: z.ZodOptional<z.ZodEnum<{
62
- none: "none";
63
- standard: "standard";
64
- symbols: "symbols";
65
- }>>;
66
- totalLines: z.ZodOptional<z.ZodNumber>;
67
- sourceChars: z.ZodOptional<z.ZodNumber>;
68
- sourceBytes: z.ZodOptional<z.ZodNumber>;
69
- resolvedBranch: z.ZodOptional<z.ZodString>;
70
- modified: z.ZodOptional<z.ZodString>;
71
- fileSize: z.ZodOptional<z.ZodNumber>;
72
- pagination: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
73
- charOffset: z.ZodNumber;
74
- charLength: z.ZodNumber;
75
- totalChars: z.ZodNumber;
76
- hasMore: z.ZodBoolean;
77
- nextCharOffset: z.ZodOptional<z.ZodNumber>;
78
- currentPage: z.ZodOptional<z.ZodNumber>;
79
- totalPages: z.ZodOptional<z.ZodNumber>;
80
- chunkMode: z.ZodOptional<z.ZodEnum<{
81
- semantic: "semantic";
82
- "char-limit": "char-limit";
83
- }>>;
84
- nextPage: z.ZodOptional<z.ZodNumber>;
85
- }, z.core.$strip>, z.ZodObject<{
86
- currentPage: z.ZodNumber;
87
- totalPages: z.ZodNumber;
88
- hasMore: z.ZodBoolean;
89
- nextPage: z.ZodOptional<z.ZodNumber>;
90
- pageSize: z.ZodOptional<z.ZodNumber>;
91
- totalItems: z.ZodOptional<z.ZodNumber>;
92
- perPage: z.ZodOptional<z.ZodNumber>;
93
- totalFound: z.ZodOptional<z.ZodNumber>;
94
- returned: z.ZodOptional<z.ZodNumber>;
95
- totalMatches: z.ZodOptional<z.ZodNumber>;
96
- reportedTotalMatches: z.ZodOptional<z.ZodNumber>;
97
- reachableTotalMatches: z.ZodOptional<z.ZodNumber>;
98
- totalMatchesKind: z.ZodOptional<z.ZodEnum<{
99
- exact: "exact";
100
- reported: "reported";
101
- lowerBound: "lowerBound";
102
- }>>;
103
- totalMatchesCapped: z.ZodOptional<z.ZodBoolean>;
104
- totalResults: z.ZodOptional<z.ZodNumber>;
105
- itemsPerPage: z.ZodOptional<z.ZodNumber>;
106
- charOffset: z.ZodOptional<z.ZodNumber>;
107
- charLength: z.ZodOptional<z.ZodNumber>;
108
- totalChars: z.ZodOptional<z.ZodNumber>;
109
- nextCharOffset: z.ZodOptional<z.ZodNumber>;
110
- }, z.core.$strip>]>>;
111
- next: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
112
- tool: z.ZodString;
113
- query: z.ZodRecord<z.ZodString, z.ZodUnknown>;
114
- why: z.ZodOptional<z.ZodString>;
115
- confidence: z.ZodOptional<z.ZodEnum<{
116
- exact: "exact";
117
- heuristic: "heuristic";
118
- }>>;
119
- }, z.core.$strip>>>;
120
- isPartial: z.ZodOptional<z.ZodBoolean>;
121
- startLine: z.ZodOptional<z.ZodNumber>;
122
- endLine: z.ZodOptional<z.ZodNumber>;
123
- matchRanges: z.ZodOptional<z.ZodArray<z.ZodObject<{
124
- start: z.ZodNumber;
125
- end: z.ZodNumber;
126
- }, z.core.$strip>>>;
127
- lastModified: z.ZodOptional<z.ZodString>;
128
- lastModifiedBy: z.ZodOptional<z.ZodString>;
129
- warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
130
- matchNotFound: z.ZodOptional<z.ZodBoolean>;
131
- searchedFor: z.ZodOptional<z.ZodString>;
132
- cached: z.ZodOptional<z.ZodBoolean>;
133
- }, z.core.$strip>>>;
134
- directories: z.ZodOptional<z.ZodArray<z.ZodObject<{
135
- path: z.ZodString;
136
- localPath: z.ZodString;
137
- repoRoot: z.ZodOptional<z.ZodString>;
138
- fileCount: z.ZodNumber;
139
- totalSize: z.ZodNumber;
140
- complete: z.ZodOptional<z.ZodBoolean>;
141
- directoryEntryCount: z.ZodOptional<z.ZodNumber>;
142
- eligibleFileCount: z.ZodOptional<z.ZodNumber>;
143
- savedFileCount: z.ZodOptional<z.ZodNumber>;
144
- skipped: z.ZodOptional<z.ZodObject<{
145
- nonFile: z.ZodNumber;
146
- missingDownloadUrl: z.ZodNumber;
147
- oversized: z.ZodNumber;
148
- binary: z.ZodNumber;
149
- fileLimit: z.ZodNumber;
150
- fetchFailed: z.ZodNumber;
151
- totalSizeLimit: z.ZodNumber;
152
- pathTraversal: z.ZodNumber;
153
- }, z.core.$strip>>;
154
- limits: z.ZodOptional<z.ZodObject<{
155
- maxDirectoryFiles: z.ZodNumber;
156
- maxTotalSize: z.ZodNumber;
157
- maxFileSize: z.ZodNumber;
158
- }, z.core.$strip>>;
159
- warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
160
- files: z.ZodOptional<z.ZodArray<z.ZodObject<{
161
- path: z.ZodString;
162
- size: z.ZodNumber;
163
- type: z.ZodString;
164
- }, z.core.$strip>>>;
165
- cached: z.ZodOptional<z.ZodBoolean>;
166
- resolvedBranch: z.ZodOptional<z.ZodString>;
167
- }, z.core.$strip>>>;
168
- }, z.core.$strip>>;
169
- }, z.core.$strip>>;
170
- errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
171
- id: z.ZodString;
172
- owner: z.ZodOptional<z.ZodString>;
173
- repo: z.ZodOptional<z.ZodString>;
174
- path: z.ZodOptional<z.ZodString>;
175
- error: z.ZodString;
176
- }, z.core.$strip>>>;
177
- }, z.core.$strip>;
178
- export type GitHubFetchContentOutputLocal = z.infer<typeof GitHubFetchContentOutputLocalSchema>;
41
+ export type GitHubFetchFilePagination = (CharPagination & {
42
+ nextPage?: number;
43
+ }) | (ItemPagination & {
44
+ charOffset?: number;
45
+ charLength?: number;
46
+ totalChars?: number;
47
+ nextCharOffset?: number;
48
+ });
49
+ export interface GitHubFetchFileEntry {
50
+ path: string;
51
+ content: string;
52
+ localPath?: string;
53
+ repoRoot?: string;
54
+ contentView?: 'none' | 'standard' | 'symbols';
55
+ totalLines?: number;
56
+ sourceChars?: number;
57
+ resolvedBranch?: string;
58
+ pagination?: GitHubFetchFilePagination;
59
+ next?: Record<string, ToolContinuation>;
60
+ isPartial?: boolean;
61
+ startLine?: number;
62
+ endLine?: number;
63
+ matchRanges?: Array<{
64
+ start: number;
65
+ end: number;
66
+ }>;
67
+ lastModified?: string;
68
+ lastModifiedBy?: string;
69
+ warnings?: string[];
70
+ matchNotFound?: boolean;
71
+ searchedFor?: string;
72
+ cached?: boolean;
73
+ }
74
+ export interface GitHubFetchDirectoryEntry {
75
+ path: string;
76
+ localPath: string;
77
+ repoRoot?: string;
78
+ fileCount: number;
79
+ totalSize: number;
80
+ complete?: boolean;
81
+ directoryEntryCount?: number;
82
+ eligibleFileCount?: number;
83
+ savedFileCount?: number;
84
+ skipped?: {
85
+ nonFile: number;
86
+ missingDownloadUrl: number;
87
+ oversized: number;
88
+ binary: number;
89
+ fileLimit: number;
90
+ fetchFailed: number;
91
+ totalSizeLimit: number;
92
+ pathTraversal: number;
93
+ };
94
+ limits?: {
95
+ maxDirectoryFiles: number;
96
+ maxTotalSize: number;
97
+ maxFileSize: number;
98
+ };
99
+ warnings?: string[];
100
+ files?: Array<{
101
+ path: string;
102
+ size: number;
103
+ type: string;
104
+ }>;
105
+ cached?: boolean;
106
+ resolvedBranch?: string;
107
+ }
108
+ export interface GitHubFetchContentData {
109
+ owner: string;
110
+ repo: string;
111
+ files?: GitHubFetchFileEntry[];
112
+ directories?: GitHubFetchDirectoryEntry[];
113
+ }
114
+ export interface GitHubFetchContentOutputLocal {
115
+ base?: string;
116
+ shared?: Record<string, string | number | boolean>;
117
+ responsePagination?: ResponsePaginationInfo;
118
+ results: Array<{
119
+ id: string;
120
+ data?: GitHubFetchContentData;
121
+ }>;
122
+ errors?: Array<{
123
+ id: string;
124
+ owner?: string;
125
+ repo?: string;
126
+ path?: string;
127
+ error: string;
128
+ }>;
129
+ [key: string]: unknown;
130
+ }
@@ -25,11 +25,12 @@ export interface GitHubFileContentApiData {
25
25
  isPartial?: boolean;
26
26
  totalLines?: number;
27
27
  sourceChars?: number;
28
- sourceBytes?: number;
29
28
  matchRanges?: Array<{
30
29
  start: number;
31
30
  end: number;
32
31
  }>;
32
+ /** Exact matched-line numbers (matchRanges are ±contextLines windows around them). */
33
+ matchedLines?: number[];
33
34
  matchLocations?: string[];
34
35
  warnings?: string[];
35
36
  lastModified?: string;
@@ -1,4 +1,6 @@
1
1
  import { z } from 'zod';
2
+ import type { ItemPagination } from '../../scheme/pagination.js';
3
+ import type { BulkToolOutput } from '../../types/toolOutput.js';
2
4
  export declare const GitHubCodeSearchQueryLocalSchema: z.ZodObject<{
3
5
  keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
4
6
  owner: z.ZodOptional<z.ZodString>;
@@ -24,90 +26,40 @@ export declare const GitHubCodeSearchBulkQueryLocalSchema: z.ZodObject<{
24
26
  responseCharLength: z.ZodOptional<z.ZodPreprocess<z.ZodNumber>>;
25
27
  queries: z.ZodArray<z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>;
26
28
  }, z.core.$strip>;
27
- export declare const GitHubCodeSearchOutputLocalSchema: z.ZodObject<{
28
- base: z.ZodOptional<z.ZodString>;
29
- shared: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
30
- responsePagination: z.ZodOptional<z.ZodObject<{
31
- currentPage: z.ZodNumber;
32
- totalPages: z.ZodNumber;
33
- hasMore: z.ZodBoolean;
34
- charOffset: z.ZodNumber;
35
- charLength: z.ZodNumber;
36
- totalChars: z.ZodNumber;
37
- nextCharOffset: z.ZodOptional<z.ZodNumber>;
38
- }, z.core.$strip>>;
39
- results: z.ZodArray<z.ZodObject<{
40
- id: z.ZodString;
41
- data: z.ZodObject<{
42
- files: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
43
- owner: z.ZodString;
44
- repo: z.ZodString;
45
- path: z.ZodString;
46
- queryId: z.ZodOptional<z.ZodString>;
47
- matches: z.ZodArray<z.ZodObject<{
48
- value: z.ZodOptional<z.ZodString>;
49
- pathOnly: z.ZodOptional<z.ZodBoolean>;
50
- matchIndices: z.ZodOptional<z.ZodArray<z.ZodObject<{
51
- start: z.ZodNumber;
52
- end: z.ZodNumber;
53
- lineOffset: z.ZodNumber;
54
- }, z.core.$strip>>>;
55
- url: z.ZodOptional<z.ZodString>;
56
- }, z.core.$strip>>;
57
- }, z.core.$strip>]>>;
58
- pagination: z.ZodOptional<z.ZodObject<{
59
- currentPage: z.ZodNumber;
60
- totalPages: z.ZodNumber;
61
- hasMore: z.ZodBoolean;
62
- nextPage: z.ZodOptional<z.ZodNumber>;
63
- pageSize: z.ZodOptional<z.ZodNumber>;
64
- totalItems: z.ZodOptional<z.ZodNumber>;
65
- perPage: z.ZodOptional<z.ZodNumber>;
66
- totalFound: z.ZodOptional<z.ZodNumber>;
67
- returned: z.ZodOptional<z.ZodNumber>;
68
- totalMatches: z.ZodOptional<z.ZodNumber>;
69
- reportedTotalMatches: z.ZodOptional<z.ZodNumber>;
70
- reachableTotalMatches: z.ZodOptional<z.ZodNumber>;
71
- totalResults: z.ZodOptional<z.ZodNumber>;
72
- itemsPerPage: z.ZodOptional<z.ZodNumber>;
73
- totalMatchesKind: z.ZodOptional<z.ZodEnum<{
74
- exact: "exact";
75
- reported: "reported";
76
- lowerBound: "lowerBound";
77
- }>>;
78
- totalMatchesCapped: z.ZodOptional<z.ZodBoolean>;
79
- uniqueFileCount: z.ZodOptional<z.ZodNumber>;
80
- }, z.core.$strip>>;
81
- }, z.core.$strip>;
82
- }, z.core.$strip>>;
83
- emptyQueries: z.ZodOptional<z.ZodArray<z.ZodObject<{
84
- id: z.ZodString;
85
- nonExistentScope: z.ZodOptional<z.ZodLiteral<true>>;
86
- incompleteResults: z.ZodOptional<z.ZodLiteral<true>>;
87
- }, z.core.$strip>>>;
88
- warnings: z.ZodOptional<z.ZodArray<z.ZodString>>;
89
- diagnostics: z.ZodOptional<z.ZodArray<z.ZodObject<{
90
- level: z.ZodEnum<{
91
- error: "error";
92
- info: "info";
93
- warning: "warning";
94
- }>;
95
- message: z.ZodString;
96
- field: z.ZodOptional<z.ZodString>;
97
- code: z.ZodOptional<z.ZodString>;
98
- }, z.core.$strip>>>;
99
- next: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
100
- tool: z.ZodString;
101
- query: z.ZodRecord<z.ZodString, z.ZodUnknown>;
102
- why: z.ZodOptional<z.ZodString>;
103
- confidence: z.ZodOptional<z.ZodEnum<{
104
- exact: "exact";
105
- heuristic: "heuristic";
106
- }>>;
107
- }, z.core.$strip>>>;
108
- errors: z.ZodOptional<z.ZodArray<z.ZodObject<{
109
- id: z.ZodString;
110
- error: z.ZodString;
111
- }, z.core.$strip>>>;
112
- }, z.core.$strip>;
113
- export type GitHubCodeSearchOutputLocal = z.infer<typeof GitHubCodeSearchOutputLocalSchema>;
29
+ export interface CodeSearchPaginationLocal extends ItemPagination {
30
+ totalMatchesKind?: 'exact' | 'reported' | 'lowerBound';
31
+ totalMatchesCapped?: boolean;
32
+ uniqueFileCount?: number;
33
+ }
34
+ export interface GitHubCodeSearchFileMatch {
35
+ value?: string;
36
+ pathOnly?: boolean;
37
+ matchIndices?: Array<{
38
+ start: number;
39
+ end: number;
40
+ lineOffset: number;
41
+ }>;
42
+ }
43
+ export interface GitHubCodeSearchFile {
44
+ owner: string;
45
+ repo: string;
46
+ path: string;
47
+ queryId?: string;
48
+ matches: GitHubCodeSearchFileMatch[];
49
+ }
50
+ export interface GitHubCodeSearchData {
51
+ files: Array<string | GitHubCodeSearchFile>;
52
+ pagination?: CodeSearchPaginationLocal;
53
+ }
54
+ export type GitHubCodeSearchOutputLocal = BulkToolOutput<GitHubCodeSearchData> & {
55
+ emptyQueries?: Array<{
56
+ id: string;
57
+ nonExistentScope?: true;
58
+ incompleteResults?: true;
59
+ }>;
60
+ errors?: Array<{
61
+ id: string;
62
+ error: string;
63
+ }>;
64
+ [key: string]: unknown;
65
+ };
@@ -0,0 +1,15 @@
1
+ import { type CallToolResult } from '@modelcontextprotocol/sdk/types.js';
2
+ import type { ToolExecutionArgs } from '../../types/execution.js';
3
+ type PartialDiscussionsQuery = {
4
+ owner?: string;
5
+ repo?: string;
6
+ keywordsToSearch?: string[];
7
+ itemsPerPage?: number;
8
+ limit?: number;
9
+ after?: string;
10
+ mainResearchGoal?: string;
11
+ researchGoal?: string;
12
+ reasoning?: string;
13
+ };
14
+ export declare function searchMultipleGitHubDiscussions(args: ToolExecutionArgs<PartialDiscussionsQuery>): Promise<CallToolResult>;
15
+ export {};