From
bafyreifbeqbi5zkztjktxp7jy32vzzkg2kgwjivdn5elxnitpd5s4qnkw4
indexed 2026-11-03 18:11 UTC
View this version
To
bafyreih7lr3x5w4xnwsnd6kwr4p7zivzac6yqlyibtyv7zknintcqjnx2m
indexed 2026-11-03 19:35 UTC
View this version
Compatibility
backward compatible Backward compatible. 2 non-breaking changes.
Non-breaking changes (2)
- AddedVertex AddedVertex { vertex_id: "dev.knotless.searchCode:output.cursor" }
- AddedEdge AddedEdge { src: "dev.knotless.searchCode:output", tgt: "dev.knotless.searchCode:output.cursor", kind: "prop", name: Some("cursor") }
Migration guidance
Added
AddedVertex { vertex_id: "dev.knotless.searchCode:output.cursor" }
Notes
- Non-breaking: AddedEdge { src: "dev.knotless.searchCode:output", tgt: "dev.knotless.searchCode:output.cursor", kind: "prop", name: Some("cursor") }
Changes
11
{22
"$type": "com.atproto.lexicon.schema",33
"defs": {44
"chunk": {55
"description": "Lines of a file holding matches, with a line on either side.",66
"properties": {77
"content": {88
"description": "The lines, each after the first following a newline, with no newline at the end.",99
"type": "string"1010
},1111
"highlights": {1212
"description": "What its highlighting paints over the content, encoded as dev.knotless.getFile's ranges are, the lines read alone. Absent for a language with no grammar.",1313
"type": "string"1414
},1515
"ranges": {1616
"items": {1717
"ref": "#range",1818
"type": "ref"1919
},2020
"type": "array"2121
},2222
"startLine": {2323
"description": "The first line's number, from 1.",2424
"minimum": 1,2525
"type": "integer"2626
}2727
},2828
"required": [2929
"startLine",3030
"content",3131
"ranges"3232
],3333
"type": "object"3434
},3535
"fileView": {3636
"description": "A file the query found, with the lines around what it found there.",3737
"properties": {3838
"chunks": {3939
"description": "Runs of lines holding matches, in order. Empty when only the path matched.",4040
"items": {4141
"ref": "#chunk",4242
"type": "ref"4343
},4444
"type": "array"4545
},4646
"commit": {4747
"description": "The commit of the default branch that was indexed, whose lines these are: a page of the file links there, as the branch may have moved since.",4848
"maxLength": 64,4949
"type": "string"5050
},5151
"language": {5252
"description": "What it is written in, as Zoekt names it from its extension or contents.",5353
"maxLength": 100,5454
"type": "string"5555
},5656
"path": {5757
"description": "The file's path in the repository's default branch.",5858
"maxLength": 4096,5959
"type": "string"6060
},6161
"repo": {6262
"ref": "dev.knotless.listRepos#repoView",6363
"type": "ref"6464
}6565
},6666
"required": [6767
"repo",6868
"path",6969
"chunks"7070
],7171
"type": "object"7272
},7373
"languageCount": {7474
"description": "A language files were found in, and how many.",7575
"properties": {7676
"color": {7777
"description": "Its color, as linguist has it. Absent for a language with none known here.",7878
"type": "string"7979
},8080
"files": {8181
"minimum": 1,8282
"type": "integer"8383
},8484
"name": {8585
"description": "As Zoekt names it, and lang: takes it.",8686
"type": "string"8787
}8888
},8989
"required": [9090
"name",9191
"files"9292
],9393
"type": "object"9494
},9595
"main": {9696
"description": "Searches the default branches of the public repositories an appview indexes, in Zoekt's query language: words and quoted text as substrings, ignoring case unless the query holds a capital, a regular expression between slashes, and filters such as file:, lang: and case:yes. No authentication needed. Repositories taken down are left out. An appview that searches no code answers 501.",9797
"output": {9898
"encoding": "application/json",9999
"schema": {100100
"properties": {101
"cursor": {102
"description": "Absent on the last page, and once the pages are 200 files deep.",103
"type": "string"104
},101105
"fileCount": {102106
"description": "How many files the query found in all, of which files are the best.",103107
"minimum": 0,104108
"type": "integer"105109
},106110
"files": {107111
"items": {108112
"ref": "#fileView",109113
"type": "ref"110114
},111115
"type": "array"112116
},113117
"languages": {114
"description": "The languages of the files found, counting those its lang: filters leave out, most files first: of the first 1000 files at most.",118
"description": "The languages of the files found, counting those its lang: filters leave out, most files first: of the first 1000 files at most. The first page alone lists them.",115119
"items": {116120
"ref": "#languageCount",117121
"type": "ref"118122
},119123
"type": "array"120124
},121125
"matchCount": {122126
"description": "How many matches the query found in all.",123127
"minimum": 0,124128
"type": "integer"125129
}126130
},127131
"required": [128132
"files",129133
"fileCount",130134
"matchCount"131135
],132136
"type": "object"133137
}134138
},135139
"parameters": {136140
"properties": {141
"cursor": {142
"description": "How many files the pages before held. The pages go 200 files deep at most.",143
"maxLength": 32,144
"type": "string"145
},137146
"limit": {138147
"default": 20,139148
"description": "The most files to answer with.",140149
"maximum": 50,141150
"minimum": 1,142151
"type": "integer"143152
},144153
"q": {145154
"description": "What to search for.",146155
"maxLength": 1000,147156
"type": "string"148157
},149158
"repo": {150159
"description": "Only this repository's dev.knotless.repo record, its authority a DID or a handle.",151160
"format": "at-uri",152161
"type": "string"153162
}154163
},155164
"required": [156165
"q"157166
],158167
"type": "params"159168
},160169
"type": "query"161170
},162171
"range": {163172
"description": "A match, or the part of one on one line.",164173
"properties": {165174
"byteEnd": {166175
"description": "Where it ends, in UTF-8 bytes, exclusive.",167176
"minimum": 0,168177
"type": "integer"169178
},170179
"byteStart": {171180
"description": "Where the match starts on the line, in its UTF-8 bytes.",172181
"minimum": 0,173182
"type": "integer"174183
},175184
"line": {176185
"description": "The line's number, from 1.",177186
"minimum": 1,178187
"type": "integer"179188
}180189
},181190
"required": [182191
"line",183192
"byteStart",184193
"byteEnd"185194
],186195
"type": "object"187196
}188197
},189198
"description": "Searches the code of the public repositories an appview indexes.",190199
"id": "dev.knotless.searchCode",191200
"lexicon": 1192201
}