dijihax commited on
Commit
bae9410
Β·
verified Β·
1 Parent(s): a3689a2

Upload 59 files

Browse files
ActionItem.module.css ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ .item {
3
+ display: flex;
4
+ gap: 0.5rem;
5
+
6
+ &--indicator {
7
+ display: none !important;
8
+ margin-left: auto;
9
+ align-self: flex-start;
10
+ }
11
+
12
+ &[data-selected="true"] {
13
+ .item--indicator {
14
+ display: block !important;
15
+ color: inherit;
16
+ }
17
+
18
+ .prompt--avatar, .prompt--description, .prompt--icon {
19
+ color: inherit;
20
+ }
21
+ }
22
+ }
23
+
24
+ .prompt {
25
+ display: flex;
26
+ gap: 0.5rem;
27
+ align-items: center;
28
+ min-width: 0;
29
+
30
+ &--avatar {
31
+ flex-shrink: 0;
32
+ width: 22px;
33
+ height: 22px;
34
+ display: flex;
35
+ align-items: center;
36
+ justify-content: center;
37
+ }
38
+
39
+ &--icon {
40
+ color: var(--vscode-input-placeholderForeground);
41
+ }
42
+
43
+ &--content {
44
+ min-width: 0;
45
+ display: flex;
46
+ flex-direction: column;
47
+ }
48
+
49
+ &--title {
50
+ min-width: 0;
51
+ display: flex;
52
+ gap: 0.25rem;
53
+ align-items: center;
54
+ }
55
+
56
+ &--name {
57
+ white-space: nowrap;
58
+ overflow: hidden;
59
+ text-overflow: ellipsis;
60
+ font-weight: 500;
61
+ }
62
+
63
+ &--description {
64
+ color: var(--vscode-input-placeholderForeground);
65
+ white-space: nowrap;
66
+ overflow: hidden;
67
+ text-overflow: ellipsis;
68
+ }
69
+ }
70
+
App.module.css CHANGED
@@ -1,27 +1,41 @@
1
- @import url('../../vscode/.storybook/static/vscode-themes/dark-modern.css');
 
 
 
 
 
 
 
2
 
3
- html,
4
- :host {
5
- tab-size: 4;
6
- line-height: 1.5;
7
- text-size-adjust: 100%;
8
- font-family: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji';
9
- font-feature-settings: normal;
10
- font-variation-settings: normal;
11
- -webkit-tap-highlight-color: transparent;
12
  }
13
 
14
- body {
15
- margin: 0 !important;
16
- padding: 0 !important;
17
- line-height: inherit;
 
 
 
 
 
 
18
  }
19
 
20
- :root {
21
- color-scheme: dark;
 
 
 
 
 
 
22
  }
23
 
24
- .root {
25
- font-size: 13px;
26
- height: 100vh;
27
  }
 
1
+ .outer-container {
2
+ background-color: var(--vscode-sideBar-background);
3
+ display: flex;
4
+ flex-direction: column;
5
+ box-sizing: border-box;
6
+ height: 100%;
7
+ overflow: hidden;
8
+ }
9
 
10
+ .error-container {
11
+ display: flex;
12
+ flex-direction: column-reverse;
13
+ gap: 0.5rem;
 
 
 
 
 
14
  }
15
 
16
+ .error {
17
+ flex-direction: row;
18
+ display: flex;
19
+ padding: 1rem;
20
+ color: var(--vscode-input-foreground);
21
+ background-color: var(--vscode-inputValidation-errorBackground);
22
+ min-height: 2rem;
23
+ position: relative;
24
+ overflow: auto;
25
+ align-items: baseline;
26
  }
27
 
28
+ .close-btn {
29
+ position: absolute;
30
+ top: 0.65rem;
31
+ right: 0.65rem;
32
+ background: none;
33
+ border: none;
34
+ color: var(--vscode-input-foreground);
35
+ cursor: pointer;
36
  }
37
 
38
+ /* Undo the UA stylesheet set by vscode */
39
+ kbd {
40
+ all: unset;
41
  }
Chat.module.css ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ .chat-disabled {
2
+ text-align: center;
3
+ padding: 0.5rem 0.25rem;
4
+ background-color: var(--vscode-inputValidation-errorBackground);
5
+ border-bottom: solid 1px var(--vscode-inputValidation-errorBorder);
6
+ color: var(--vscode-foreground);
7
+ }
ChatMessageContent.module.css ADDED
@@ -0,0 +1,219 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .buttons-container {
2
+ display: flex;
3
+ flex-wrap: wrap;
4
+ align-items: center;
5
+ border-style: solid;
6
+ border-width: 1px;
7
+ border-color: var(--vscode-sideBarSectionHeader-border);
8
+ border-bottom-left-radius: 2px;
9
+ border-bottom-right-radius: 2px;
10
+ padding: 4px;
11
+ }
12
+
13
+ .buttons {
14
+ display: flex;
15
+ }
16
+ .button {
17
+ display: flex;
18
+ align-items: center;
19
+ padding: 3px;
20
+ height: 20px;
21
+ background-color: transparent;
22
+ cursor: pointer;
23
+ background: var(--button-icon-background);
24
+ border-radius: var(--button-icon-corner-radius);
25
+ color: var(--foreground);
26
+ }
27
+ .button:hover {
28
+ background: var(--button-icon-hover-background);
29
+ outline: 1px dotted var(--contrast-active-border);
30
+ outline-offset: -1px;
31
+ }
32
+ .button:not(:first-child) {
33
+ margin-left: 0.25rem;
34
+ }
35
+
36
+ .button .icon-container {
37
+ margin-right: 0.25rem
38
+ }
39
+
40
+ .copy-button,
41
+ .insert-button,
42
+ .attribution-icon,
43
+ .status {
44
+ all: unset;
45
+ padding: 3px;
46
+ min-width: 16px; /* Status element needs to be able to expand. */
47
+ height: 16px;
48
+ background-color: transparent;
49
+ }
50
+
51
+ .copy-button,
52
+ .insert-button {
53
+ cursor: pointer;
54
+ background: var(--button-icon-background);
55
+ border-radius: var(--button-icon-corner-radius);
56
+ color: var(--foreground);
57
+ }
58
+ .copy-button:hover,
59
+ .insert-button:hover {
60
+ background: var(--button-icon-hover-background);
61
+ outline: 1px dotted var(--contrast-active-border);
62
+ outline-offset: -1px;
63
+ }
64
+
65
+ .status {
66
+ font-size: 12px;
67
+ line-height: 1;
68
+ }
69
+
70
+ .metadata-container {
71
+ display: flex;
72
+ align-items: center;
73
+ margin-left: auto;
74
+ }
75
+
76
+ .metadata-container > :not(:last-child) {
77
+ margin-right: 0.25rem;
78
+ }
79
+
80
+ .attribution-container {
81
+ all: unset;
82
+ display: flex;
83
+ margin-left: auto;
84
+ }
85
+
86
+
87
+ .attribution-icon-unavailable {
88
+ color: var(--hl-orange);
89
+ }
90
+
91
+ .attribution-icon-found {
92
+ color: var(--hl-dark-red);
93
+ }
94
+
95
+ .status {
96
+ display: flex;
97
+ align-items: center;
98
+ }
99
+
100
+ .codicon-loading {
101
+ animation: spin 1s linear infinite;
102
+ }
103
+
104
+ @keyframes spin {
105
+ from { transform: rotate(0deg); }
106
+ to { transform: rotate(360deg); }
107
+ }
108
+
109
+ /*
110
+ * Content
111
+ */
112
+ :root {
113
+ --spacing: 1rem;
114
+ }
115
+
116
+ .content {
117
+ word-break: break-word;
118
+ text-wrap: wrap;
119
+ }
120
+
121
+ /* Style @-file tokens to match TranscriptAction context files */
122
+ .content a[href^="vscode://file"] em,
123
+ .content a[href^="vscode-insiders://file"] em,
124
+ .content a[href^="vscodium://file"] em,
125
+ .content a[href^="cursor://file"] em
126
+ {
127
+ padding: 1px 2px;
128
+ box-sizing: border-box;
129
+ background-color: color-mix(in srgb, var(--vscode-textLink-foreground) 15%, transparent);
130
+ border-radius: 2px;
131
+ font-style: normal;
132
+ word-break: break-all;
133
+ }
134
+
135
+ .content p {
136
+ word-break: break-word;
137
+ margin-block: 1rem;
138
+ }
139
+
140
+ .content pre {
141
+ padding: calc(var(--spacing) * 0.5);
142
+ overflow-x: auto;
143
+ border-style: solid;
144
+ border-width: 1px;
145
+ border-color: var(--vscode-sideBarSectionHeader-border);
146
+ border-bottom: none;
147
+ margin: 1rem 0;
148
+ }
149
+
150
+ .content code,
151
+ .content pre {
152
+ font-family: var(--vscode-editor-font-family);
153
+ font-size: var(--vscode-editor-font-size);
154
+ overflow: auto;
155
+ }
156
+
157
+ .content pre,
158
+ .content pre > code {
159
+ /* Our syntax highlighter emits colors intended for dark backgrounds only. */
160
+ background-color: var(--code-background);
161
+ color: var(--code-foreground);
162
+ margin-bottom: 0;
163
+ }
164
+ body[data-vscode-theme-kind='vscode-light'] .content pre,
165
+ body[data-vscode-theme-kind='vscode-light'] .content pre > code {
166
+ /* Our syntax highlighter emits colors intended for dark backgrounds only. */
167
+ background-color: var(--code-background);
168
+ color: var(--code-foreground);
169
+ }
170
+
171
+ .content h1,
172
+ .content h2,
173
+ .content h3,
174
+ .content h4,
175
+ .content h5,
176
+ .content h6 {
177
+ margin: 1.2em 0;
178
+ }
179
+
180
+ .content h1 {
181
+ font-size: 1.15em;
182
+ font-weight: 700;
183
+ }
184
+
185
+ .content h2 {
186
+ font-size: 1.1em;
187
+ font-weight: 700;
188
+ }
189
+
190
+ .content h3 {
191
+ font-size: inherit;
192
+ font-weight: 700;
193
+ }
194
+
195
+ .content h4,
196
+ .content h5,
197
+ .content h6 {
198
+ font-size: inherit;
199
+ font-weight: 600;
200
+ }
201
+
202
+ .content > *:first-child {
203
+ margin-top: 0;
204
+ }
205
+
206
+ .content > *:last-child {
207
+ margin-bottom: 0;
208
+ }
209
+
210
+ .content ul, .content ol {
211
+ margin-block: 1rem;
212
+ padding-inline-start: 2rem;
213
+ list-style: revert;
214
+ }
215
+
216
+ .file-name-container {
217
+ color: var(--vscode-descriptionForeground);
218
+ margin-left: auto;
219
+ }
ContextCell.module.css ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .context-item {
2
+ display: inline-flex;
3
+ padding: 2px 4px 2px 2px;
4
+ }
5
+
6
+ .context-item-metadata {
7
+ color: var(--vscode-disabledForeground);
8
+ padding-left: 0.1rem;
9
+ text-wrap: nowrap;
10
+ }
11
+
12
+ .context-item-edit-button {
13
+ display: flex;
14
+ align-items: center;
15
+
16
+ flex-wrap: nowrap;
17
+
18
+ }
19
+
20
+ .context-item-edit-button-icon {
21
+ height: 20%;
22
+ margin-right: 0.5rem;
23
+ }
ErrorItem.module.css ADDED
@@ -0,0 +1,143 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .error-item {
2
+ display: flex;
3
+ flex-direction: row;
4
+ gap: 0.5rem;
5
+ }
6
+
7
+ .error-item .icon {
8
+ font-size: 24px;
9
+ }
10
+
11
+ .error-item .body {
12
+ display: flex;
13
+ flex-direction: column;
14
+ gap: 0.7rem;
15
+ }
16
+
17
+ .error-item vscode-button {
18
+ margin: 0;
19
+ }
20
+
21
+ .error-item h1,
22
+ .error-item p {
23
+ margin: 0;
24
+ }
25
+
26
+ .error-item header {
27
+ display: flex;
28
+ flex-direction: column;
29
+ gap: 0.3rem;
30
+ margin-right: 30px;
31
+ }
32
+
33
+ .error-item header h1 {
34
+ text-transform: uppercase;
35
+ font-size: 11px;
36
+ margin: 0;
37
+ }
38
+
39
+ .error-item header p {
40
+ max-width: 40em;
41
+ opacity: 0.9;
42
+ }
43
+
44
+ .error-item .actions {
45
+ display: flex;
46
+ flex-direction: row;
47
+ gap: 8px;
48
+ }
49
+
50
+ .error-item .retry-message {
51
+ font-size: 11px;
52
+ opacity: 0.7;
53
+ }
54
+
55
+ .error-item .banner-container {
56
+ position: absolute;
57
+ top: 0;
58
+ right: 0;
59
+ overflow: hidden;
60
+ height: 100px;
61
+ }
62
+
63
+ @property --error-item-reflection-position {
64
+ syntax: '<percentage>';
65
+ inherits: false;
66
+ initial-value: 0%;
67
+ }
68
+
69
+ .error-item .banner {
70
+ --error-item-reflection-position: -100%;
71
+
72
+ padding: 6px 30px;
73
+ transform: translateY(50%) translateX(25%) rotate(45deg);
74
+ border: 1px solid rgba(0 0 0 / 16%);
75
+ background: linear-gradient(
76
+ 45deg,
77
+ rgb(255 220 220 / 0%) calc(var(--error-item-reflection-position) + 35%),
78
+ rgb(255 220 220 / 50%) calc(var(--error-item-reflection-position) + 50%),
79
+ rgb(255 220 220 / 0%) calc(var(--error-item-reflection-position) + 65%)
80
+ ),
81
+ linear-gradient(rgb(255 255 255 / 55%), rgb(255 255 255 / 55%)),
82
+ repeating-conic-gradient(#4ac1e8, #7048e8, #ff5543, #7048e8, #4ac1e8);
83
+ box-shadow: 0 4px 8px 0 rgb(0 0 0 / 15%);
84
+ transition: box-shadow 650ms ease-in-out;
85
+ color: #080808;
86
+ text-shadow: 1px 1px 0 rgb(255 255 255 / 75%);
87
+ font-size: 9px;
88
+ line-height: 9px;
89
+ font-weight: 900;
90
+ text-transform: uppercase;
91
+ overflow: hidden;
92
+ cursor: pointer;
93
+ }
94
+
95
+ .error-item .banner:hover {
96
+ --error-item-reflection-position: 100%;
97
+
98
+ transition:
99
+ --error-item-reflection-position 1.5s cubic-bezier(0.455, 0.03, 0.515, 0.955),
100
+ box-shadow 750ms ease-in-out;
101
+ box-shadow:
102
+ 0 4px 8px 0 rgb(0 0 0 / 15%),
103
+ 0 0 10px 0 rgb(255 255 255 / 35%);
104
+ }
105
+
106
+ .error-item .banner::before {
107
+ content: ' ';
108
+ position: absolute;
109
+ top: 0;
110
+ left: 0;
111
+ width: 100px;
112
+ height: 5px;
113
+ transform: translateX(-22px) rotate(135deg);
114
+ background: linear-gradient(rgb(255 255 255 / 0%), rgb(255 255 255 / 80%));
115
+ }
116
+
117
+ .error-item .banner::after {
118
+ content: ' ';
119
+ position: absolute;
120
+ bottom: 0;
121
+ left: 10px;
122
+ width: 100px;
123
+ height: 5px;
124
+ transform: translateY(-27px) rotate(225deg);
125
+ background: linear-gradient(rgb(255 255 255 / 0%), rgb(255 255 255 / 80%));
126
+ }
127
+
128
+ .request-error {
129
+ background-color: #f7bcbc;
130
+ color: #de3400;
131
+
132
+ padding: 0.5rem;
133
+
134
+ word-break: break-word;
135
+ text-wrap: wrap;
136
+ line-height: 150%;
137
+
138
+ border-left: 0.5rem solid #d8000c;
139
+ }
140
+
141
+ .request-error-title {
142
+ font-weight: bold;
143
+ }
FeedbackButtons.module.css ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .feedback-buttons {
2
+ display: flex;
3
+ flex-direction: row;
4
+ }
5
+
6
+ .feedback-button[disabled] {
7
+ /* VSCodeButton's default cursor is not-allowed, but that's different to
8
+ native VS Code and feels off, especially when it quickly changes to
9
+ not-allowed after you submit feedback. So we reset it back to the
10
+ default cursor to fit in nicer with standard VS Code native behaviour */
11
+ cursor: default;
12
+ }
13
+
14
+ .thumbs-down-feedback-container {
15
+ display: flex;
16
+ align-items: center;
17
+ gap: calc(var(--spacing) / 4);
18
+ }
FileContextItem.module.css ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .root {
2
+ display: flex;
3
+ flex-direction: column;
4
+ gap: 0.25rem;
5
+ }
6
+
7
+ .link-container {
8
+ display: inline-flex;
9
+ padding: 2px 4px 2px 2px;
10
+ min-width: 0;
11
+ }
12
+
13
+ .header {
14
+ display: flex;
15
+ gap: 0.25rem;
16
+ align-items: center;
17
+ }
18
+
19
+ .context-item-link {
20
+ background: none;
21
+ border: none;
22
+ color: var(--vscode-textLink-foreground);
23
+ font-size: inherit;
24
+ padding: 0;
25
+ margin: 0;
26
+ text-align: left;
27
+ font-weight: normal;
28
+ display: flex;
29
+ align-items: center;
30
+ gap: 0.125rem;
31
+ overflow: hidden;
32
+ }
33
+
34
+ /* In light high contrast, --vscode-textLink-foreground provides little
35
+ contrast; instead inherit the --code-foreground color from the container. */
36
+ body[data-vscode-theme-kind='vscode-high-contrast-light'] .context-item-link {
37
+ color: inherit;
38
+ }
39
+
40
+ .code-block {
41
+ margin-bottom: 0.25rem;
42
+ }
FileLink.module.css ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .path {
2
+ white-space: nowrap;
3
+ text-overflow: ellipsis;
4
+ overflow: hidden;
5
+
6
+ /* Makes ellipsis show in default text color, we show the basename in link color below */
7
+ color: var(--vscode-disabledForeground);
8
+ }
9
+
10
+ .excluded {
11
+ text-decoration: line-through !important;
12
+ }
13
+
14
+ .basename {
15
+ color: var(--vscode-textLink-foreground);
16
+ }
17
+
18
+ .repoShortName {
19
+ color: var(--vscode-disabledForeground);
20
+ font-size: smaller;
21
+ }
22
+
23
+ .dirname {
24
+ color: var(--vscode-disabledForeground);
25
+ font-size: smaller;
26
+ }
27
+
28
+ .range {
29
+ color: var(--vscode-disabledForeground);
30
+ }
FileMatchChildren.module.css ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ .chunk {
2
+ position: relative;
3
+ overflow-x: auto;
4
+ background-color: var(--code-background);
5
+ }
HumanMessageEditor.module.css ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ :root {
2
+ --human-message-editor-gap: 0;
3
+ --human-message-editor-cell-spacing-bottom: 6px;
4
+ }
5
+
6
+ .container {
7
+ display: flex;
8
+ flex-direction: column;
9
+ gap: var(--human-message-editor-gap);
10
+ border-radius: 4px;
11
+ background-color: color-mix(in srgb, var(--vscode-input-background) 50%, transparent);
12
+ color: var(--vscode-input-foreground);
13
+ outline: solid 1px var(--vscode-input-border);
14
+ outline-offset: -1px;
15
+ cursor: text;
16
+
17
+ .editor {
18
+ scrollbar-gutter: stable;
19
+ padding: var(--prompt-editor-padding-y) var(--prompt-editor-padding-x);
20
+ }
21
+ }
22
+
23
+ .toolbar {
24
+ padding: calc(0.75*var(--prompt-editor-padding-y)) var(--prompt-editor-padding-x);
25
+ overflow: hidden;
26
+ }
27
+
28
+ .container:not(.focused, [data-keep-toolbar-open]) {
29
+
30
+ .editor-content-editable {
31
+ min-height: 1lh;
32
+ }
33
+
34
+ .toolbar {
35
+ height: 0;
36
+ opacity: 0;
37
+ margin-top: 0;
38
+ pointer-events: none;
39
+ padding: 0;
40
+ }
41
+ }
42
+
43
+ .container:hover, .container:has(:focus-within, menu>button:focus) {
44
+ background-color: var(--vscode-input-background);
45
+ }
46
+
47
+ /* Show focus ring when the input is focused or a toolbar button within the input container is
48
+ focused, but NOT if something in a toolbar button's popover is focused. */
49
+ .container:has([data-lexical-editor='true']:focus-within, menu>button:focus) {
50
+ outline-color: var(--vscode-focusBorder);
51
+ }
52
+
53
+ .editor-content-editable {
54
+ min-height: 3lh;
55
+ }
InfoMessage.module.css ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ .info-message {
2
+ --mention-color-opacity: 70%;
3
+
4
+ border: 1px solid color-mix(in lch, var(--vscode-inputOption-activeBackground) calc(1.2* var(--mention-color-opacity)), transparent);
5
+ background-color: color-mix(in lch, var(--vscode-inputOption-activeBackground) var(--mention-color-opacity), transparent);
6
+ }
LoadingDots.module.css ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .dots-holder {
2
+ display: flex;
3
+ gap: 0.2rem;
4
+ margin: 0.5rem 0;
5
+ margin-left: 0.25rem;
6
+ }
7
+
8
+ .dot {
9
+ animation: 1s flash 0.5s infinite;
10
+ width: 0.25rem !important;
11
+ height: 0.25rem !important;
12
+ border-radius: 100%;
13
+ background-color: var(--vscode-input-foreground);
14
+ opacity: 0.25;
15
+ }
16
+
17
+ body[data-vscode-theme-kind='vscode-light'] .dot,
18
+ body[data-vscode-theme-kind='vscode-high-contrast-light'] .dot {
19
+ background-color: black;
20
+ }
21
+
22
+ .dot:nth-child(2) {
23
+ animation-delay: 0.6s;
24
+ }
25
+
26
+ .dot:nth-child(3) {
27
+ animation-delay: 0.7s;
28
+ }
29
+
30
+ @keyframes flash {
31
+ from {
32
+ opacity: 1;
33
+ }
34
+
35
+ 50% {
36
+ opacity: 1;
37
+ }
38
+
39
+ to {
40
+ opacity: 0.25;
41
+ }
42
+ }
LoadingPage.module.css ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .container {
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ height: 100vh;
6
+ }
7
+
8
+ .dots-holder {
9
+ display: flex;
10
+ gap: 0.2rem;
11
+ }
12
+
13
+ .dot {
14
+ animation: 1s flash 0.5s infinite;
15
+ width: calc(var(--vscode-editor-font-size) / 2) !important;
16
+ height: calc(var(--vscode-editor-font-size) / 2) !important;
17
+ border-radius: 100%;
18
+ background-color: #b200f8;
19
+ opacity: 0.25;
20
+ }
21
+
22
+ .dot:nth-child(2) {
23
+ animation-delay: 0.6s;
24
+ background-color: #ff5543;
25
+ }
26
+
27
+ .dot:nth-child(3) {
28
+ animation-delay: 0.7s;
29
+ background-color: #00cbec;
30
+ }
31
+
32
+ @keyframes flash {
33
+ from {
34
+ opacity: 1;
35
+ }
36
+
37
+ 50% {
38
+ opacity: 1;
39
+ }
40
+
41
+ to {
42
+ opacity: 0.25;
43
+ }
44
+ }
Main.java ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ // This is a sample file used in extension integration tests.
2
+
3
+ public class Main {
4
+ private Main() {}
5
+
6
+ public static void main(String[] args) {
7
+ System.out.println("Hello, world");
8
+ }
9
+ }
ModelSelectField.module.css ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .model-title-with-icon {
2
+ flex: 1;
3
+ display: flex;
4
+ align-items: center;
5
+ gap: 0.375rem;
6
+ line-height: 16px;
7
+ }
8
+
9
+ .model-title-with-icon:is(a) {
10
+ outline: none !important;
11
+ }
12
+
13
+ .model-title-with-icon .model-name {
14
+ font-weight: 500;
15
+ }
16
+
17
+ .model-title-with-icon .model-provider {
18
+ margin-left: 0.25rem;
19
+ opacity: 0.65;
20
+ font-size: 85%;
21
+ }
22
+
23
+ .model-title-with-icon.disabled {
24
+ opacity: 0.5;
25
+ }
26
+
27
+ .model-title-with-icon .model-icon {
28
+ opacity: 0.5;
29
+ }
30
+
31
+ .right-icon {
32
+ margin-left: auto;
33
+ }
34
+
35
+ .badge {
36
+ margin-left: auto;
37
+ line-height: 16px;
38
+ font-size: 11px;
39
+ border-radius: 2px;
40
+ padding: 0 5px;
41
+ border: 1px solid var(--vscode-contrastBorder);
42
+ }
43
+
44
+ button > .model-title-with-icon .model-name {
45
+ font-weight: normal;
46
+ }
47
+
48
+ button > .model-title-with-icon .model-icon,
49
+ button > .model-title-with-icon .model-provider,
50
+ button > .model-title-with-icon .badge {
51
+ display: none;
52
+ }
PromptList.module.css ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ .list {
3
+ outline: none;
4
+ max-height: unset !important;
5
+ background-color: transparent !important;
6
+
7
+ &--input-container {
8
+ top: 0;
9
+ position: sticky;
10
+ z-index: 1;
11
+ }
12
+
13
+ &--input {
14
+ margin: 0.5rem;
15
+ padding: 0.5rem;
16
+ border-radius: 3px;
17
+ background-color: var(--vscode-input-background);
18
+ color: var(--vscode-input-foreground);
19
+
20
+ &:focus {
21
+ box-shadow: 0 0 0 0.125rem var(--vscode-focusBorder)
22
+ }
23
+ }
24
+
25
+ &-chips {
26
+ [cmdk-list-sizer] {
27
+ display: flex;
28
+ flex-direction: column;
29
+ gap: 0.5rem
30
+ }
31
+
32
+ .list--item {
33
+ border-radius: 3px;
34
+ border: 1px solid var(--vscode-dropdown-border, transparent);
35
+ padding: 0.25rem 0.5rem;
36
+
37
+ &[aria-selected="true"] {
38
+ border-color: var(--vscode-list-activeSelectionBackground);
39
+ }
40
+
41
+ &:not([aria-selected="true"]) {
42
+ background-color: var(--vscode-dropdown-background);
43
+ }
44
+ }
45
+ }
46
+ }
README.md CHANGED
@@ -1,400 +1,38 @@
1
- ---
2
- license: deepfloyd-if-license
3
- datasets:
4
- - microsoft/orca-agentinstruct-1M-v1
5
- - OpenCoder-LLM/opc-sft-stage1
6
- - fka/awesome-chatgpt-prompts
7
- - HuggingFaceTB/smoltalk
8
- - alpindale/two-million-bluesky-posts
9
- - bluesky-community/one-million-bluesky-posts
10
- - dijihax/Dataset
11
- - internlm/Lean-Workbook
12
- - PleIAs/common_corpus
13
- - O1-OPEN/OpenO1-SFT
14
- - allenai/tulu-3-sft-mixture
15
- - OpenCoder-LLM/RefineCode-code-corpus-meta
16
- - OpenCoder-LLM/opc-fineweb-code-corpus
17
- - iamtarun/python_code_instructions_18k_alpaca
18
- - codeparrot/github-code
19
- - nenad1002/quantum_science_research_dataset
20
- - quantumiracle-git/robotinder-data
21
- - open-llm-leaderboard-old/details_quantumaikr__KoreanLM-hf
22
- - chemora/EntanglementDetectionDataSet
23
- - glaiveai/glaive-function-calling-v2
24
- - Salesforce/xlam-function-calling-60k
25
- - NousResearch/hermes-function-calling-v1
26
- - >-
27
- Younes-Abdeahad-Software-Requirements/FNFC-Functional_Non-Functional_Classification
28
- - cgoosen/prompt_injection_password_or_secret
29
- - google/frames-benchmark
30
- - Kaeyze/computer-science-synthetic-dataset
31
- - gretelai/gretel-text-to-python-fintech-en-v1
32
- - Vezora/Tested-143k-Python-Alpaca
33
- - Nan-Do/instructional_code-search-net-python
34
- - hackaprompt/hackaprompt-dataset
35
- - hackercupai/hackercup
36
- - OpenPipe/hacker-news
37
- - open-phi/programming_books_llama
38
- - kanhatakeyama/wizardlm8x22b-logical-math-coding-sft
39
- - datatune/LogiCoT
40
- - kanhatakeyama/LogicalDatasetsByMixtral8x22b
41
- - dongyu0205/working-memory-capacity-of-ChatGPT
42
- - memorylost731/linux_man_pages_library
43
- - mmathys/openai-moderation-api-evaluation
44
- - BAAI/IndustryCorpus2_current_affairs_government_administration
45
- - bigcode/admin
46
- - HuggingFaceFW/admin
47
- - HuggingFaceFW/fineweb-edu
48
- - HuggingFaceFV/finevideo
49
- - lmms-lab/LLaVA-Video-178K
50
- - Wild-Heart/Disney-VideoGeneration-Dataset
51
- - DL3DV/DL3DV-ALL-video
52
- - laion/laion-high-resolution
53
- - joey234/mmlu-high_school_computer_science-neg
54
- - sentence-transformers/embedding-training-data
55
- - Cohere/wikipedia-22-12-en-embeddings
56
- - philschmid/finanical-rag-embedding-dataset
57
- - jwaters8978/web_scraper_dataset
58
- - jwaters8978/web_scraper_dataset_2
59
- - ammarnasr/the-stack-java-clean
60
- - angie-chen55/javascript-github-code
61
- - anjandash/java-8m-methods-v2
62
- - Vikhrmodels/physics_big
63
- - k-mktr/improved-flux-prompts-photoreal-portrait
64
- - jacobcd52/physics-papers
65
- - zeroshot/arxiv-biology
66
- - joey234/mmlu-college_biology-neg
67
- - cmcmaster/rheumatology-biologics-dataset
68
- - HAERAE-HUB/QARV-KOEN-10M-Entangled
69
- - Qutiba/LinuxCommands_Virsh_KVM_Docker_2
70
- - MattCoddity/docker_ps
71
- - adeocybersecurity/DockerCommand
72
- - JetBrains-Research/lca-codegen-huge
73
- - chaofengc/IQA-PyTorch-Datasets
74
- - open-source-metrics/pytorch-image-models-dependents
75
- - nodchip/tanuki-.nnue-pytorch-2024-07-30.1
76
- - karpathy/fineweb-edu-100B-gpt2-token-shards
77
- - google/code_x_glue_cc_code_completion_token
78
- - edbeeching/gia-dataset-tokenized-2024-2
79
- - OpenDILabCommunity/MasterMind
80
- - LinkSoul/Chinese-LLaVA-Vision-Instructions
81
- - hoang-quoc-trung/fusion-image-to-latex-datasets
82
- - OpenCoder-LLM/opc-fineweb-math-corpus
83
- - xinlai/Math-Step-DPO-10K
84
- - hendrycks/competition_math
85
- - meta-math/MetaMathQA
86
- - microsoft/BiomedParseData
87
- - Twenty1/aws-lambda-developer-guide-docs
88
- - developer0hye/korocr
89
- - DeveloperOats/DBPedia_Classes
90
- - developerZoyal/full_drugs_data
91
- - LangChainHub-Prompts/LLM_Bash
92
- - OS-Copilot/OS-Atlas-data
93
- - nvidia/OpenMathInstruct-2
94
- - nvidia/HelpSteer2
95
- language:
96
- - en
97
- - es
98
- - it
99
- - ar
100
- - id
101
- - zh
102
- - ja
103
- base_model:
104
- - Dijitaal/DijiHax.Spooky.Pi
105
- - Qwen/Qwen2.5-Coder-32B-Instruct
106
- - ayjays132/Quantum-NeuralAdaptiveLearningSystem
107
- - neuralmagic/Sparse-Llama-3.1-8B-2of4
108
- - bigscience/bloom
109
- - bigcode/starcoder
110
- - bigcode/starcoder2-3b
111
- - wolfram/Athene-V2-Chat-4.65bpw-h6-exl2
112
- - wolfram/Mistral-Large-Instruct-2411-2.75bpw-h6-exl2
113
- - stabilityai/stable-diffusion-3.5-large
114
- - openai/whisper-large-v3-turbo
115
- - black-forest-labs/FLUX.1-dev
116
- - black-forest-labs/FLUX.1-Fill-dev
117
- - black-forest-labs/FLUX.1-Redux-dev
118
- - si-pbc/hertz-dev
119
- - InstantX/FLUX.1-dev-IP-Adapter
120
- - unsloth/Qwen2.5-Coder-32B-Instruct-128K-GGUF
121
- - Qwen/Qwen2.5-Coder-32B-Instruct-GGUF
122
- - Qwen/QwQ-32B-Preview
123
- - tencent/HunyuanVideo
124
- - tencent/HunyuanVideo-PromptRewrite
125
- - AIDC-AI/Marco-o1
126
- - DevQuasar/AIDC-AI.Marco-o1-GGUF
127
- - Lightricks/LTX-Video
128
- - NexaAIDev/OmniVLM-968M
129
- - ali-vilab/In-Context-LoRA
130
- - udev4096/docker-commands
131
- - philomath-1209/programming-language-identification
132
- - vivecccccc/phi-2_kqa-program
133
- - Qwen/Qwen2.5-Coder-7B-Instruct
134
- - featherless-ai-quants/Qwen-Qwen2.5-Coder-32B-Instruct-GGUF
135
- - aws-neuron/optimum-neuron-cache
136
- - nm-testing/TinyLlama-1.1B-compressed-tensors-kv-cache-scheme
137
- - vuiseng9/ov-gpt2-fp32-no-cache
138
- - RichardErkhov/vuiseng9_-_ov-gpt2-fp32-no-cache-gguf
139
- - ntc-ai/SDXL-LoRA-slider.eye-catching
140
- - stabilityai/stable-diffusion-3.5-large-turbo
141
- - nvidia/NV-Embed-v2
142
- - jinaai/jina-embeddings-v3
143
- - nvidia/MM-Embed
144
- - nomic-ai/nomic-embed-text-v1.5
145
- - nomic-ai/nomic-embed-text-v1.5-GGUF
146
- - stabilityai/stablecode-completion-alpha-3b-4k
147
- - stabilityai/stablecode-completion-alpha-3b
148
- - tensorblock/stablecode-completion-alpha-3b-4k-GGUF
149
- - RaniAimlTest/multi-user-chat-open-llama-7b-v2-open-instruct-completions-only
150
- - Iker/Llama-3-Instruct-Neurona-8b
151
- - NeuroWhAI/ko-gemma-2-9b-it-fn
152
- - Nexusflow/Athene-V2-Chat
153
- - comfyanonymous/flux_text_encoders
154
- - city96/t5-v1_1-xxl-encoder-gguf
155
- - mlabonne/NeuralDaredevil-8B-abliterated
156
- - Sao10K/I_am_alive_yay
157
- metrics:
158
- - code_eval
159
- - competition_math
160
- - confusion_matrix
161
- - codeparrot/apps_metric
162
- - bertscore
163
- - BucketHeadP65/confusion_matrix
164
- - precision
165
- - perplexity
166
- - phonemetransformers/segmentation_scores
167
- - Aledade/extraction_evaluation
168
- - wiki_split
169
- - berkatil/map
170
- - spearmanr
171
- - ter
172
- - chrf
173
- - He-Xingwei/sari_metric
174
- - KaliSurfKukt/brier_score
175
- - LottieW/accents_unplugged_eval
176
- - DaliaCaRo/accents_unplugged_eval
177
- - ecody726/bertscore
178
- - Yeshwant123/mcc
179
- - ola13/precision_at_k
180
- - Ikala-allen/relation_extraction
181
- - charcut_mt
182
- - pearsonr
183
- - poseval
184
- - Pipatpong/perplexity
185
- - NCSOFT/harim_plus
186
- - gorkaartola/metric_for_tp_fp_samples
187
- - giulio98/code_eval_outputs
188
- - f1
189
- new_version: Dijitaal/DijiHax.Spooky.Pi
190
- library_name: adapter-transformers
191
- tags:
192
- - chemistry
193
- - biology
194
- - code
195
- - merge
196
- - climate
197
- - medical
198
- - text-generation-inference
199
- - legal
200
- - music
201
- - art
202
- - moe
203
- - finance
204
- - not-for-all-audiences
205
- pipeline_tag: video-text-to-text
206
- ---
207
- # Model Card for Model ID
208
 
209
- <!-- Provide a quick summary of what the model is/does. -->
210
 
211
- This modelcard aims to be a base template for new models. It has been generated using [this raw template](https://github.com/huggingface/huggingface_hub/blob/main/src/huggingface_hub/templates/modelcard_template.md?plain=1).
212
 
213
- ## Model Details
214
 
215
- ### Model Description
 
 
216
 
217
- <!-- Provide a longer summary of what this model is. -->
218
 
 
 
 
219
 
 
220
 
221
- - **Developed by:** [More Information Needed]
222
- - **Funded by [optional]:** [More Information Needed]
223
- - **Shared by [optional]:** [More Information Needed]
224
- - **Model type:** [More Information Needed]
225
- - **Language(s) (NLP):** [More Information Needed]
226
- - **License:** [More Information Needed]
227
- - **Finetuned from model [optional]:** [More Information Needed]
228
 
229
- ### Model Sources [optional]
 
 
230
 
231
- <!-- Provide the basic links for the model. -->
232
 
233
- - **Repository:** [More Information Needed]
234
- - **Paper [optional]:** [More Information Needed]
235
- - **Demo [optional]:** [More Information Needed]
236
 
237
- ## Uses
238
 
239
- <!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
240
-
241
- ### Direct Use
242
-
243
- <!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
244
-
245
- [More Information Needed]
246
-
247
- ### Downstream Use [optional]
248
-
249
- <!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
250
-
251
- [More Information Needed]
252
-
253
- ### Out-of-Scope Use
254
-
255
- <!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
256
-
257
- [More Information Needed]
258
-
259
- ## Bias, Risks, and Limitations
260
-
261
- <!-- This section is meant to convey both technical and sociotechnical limitations. -->
262
-
263
- [More Information Needed]
264
-
265
- ### Recommendations
266
-
267
- <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
268
-
269
- Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
270
-
271
- ## How to Get Started with the Model
272
-
273
- Use the code below to get started with the model.
274
-
275
- [More Information Needed]
276
-
277
- ## Training Details
278
-
279
- ### Training Data
280
-
281
- <!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
282
-
283
- [More Information Needed]
284
-
285
- ### Training Procedure
286
-
287
- <!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
288
-
289
- #### Preprocessing [optional]
290
-
291
- [More Information Needed]
292
-
293
-
294
- #### Training Hyperparameters
295
-
296
- - **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
297
-
298
- #### Speeds, Sizes, Times [optional]
299
-
300
- <!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
301
-
302
- [More Information Needed]
303
-
304
- ## Evaluation
305
-
306
- <!-- This section describes the evaluation protocols and provides the results. -->
307
-
308
- ### Testing Data, Factors & Metrics
309
-
310
- #### Testing Data
311
-
312
- <!-- This should link to a Dataset Card if possible. -->
313
-
314
- [More Information Needed]
315
-
316
- #### Factors
317
-
318
- <!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
319
-
320
- [More Information Needed]
321
-
322
- #### Metrics
323
-
324
- <!-- These are the evaluation metrics being used, ideally with a description of why. -->
325
-
326
- [More Information Needed]
327
-
328
- ### Results
329
-
330
- [More Information Needed]
331
-
332
- #### Summary
333
-
334
-
335
-
336
- ## Model Examination [optional]
337
-
338
- <!-- Relevant interpretability work for the model goes here -->
339
-
340
- [More Information Needed]
341
-
342
- ## Environmental Impact
343
-
344
- <!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
345
-
346
- Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
347
-
348
- - **Hardware Type:** [More Information Needed]
349
- - **Hours used:** [More Information Needed]
350
- - **Cloud Provider:** [More Information Needed]
351
- - **Compute Region:** [More Information Needed]
352
- - **Carbon Emitted:** [More Information Needed]
353
-
354
- ## Technical Specifications [optional]
355
-
356
- ### Model Architecture and Objective
357
-
358
- [More Information Needed]
359
-
360
- ### Compute Infrastructure
361
-
362
- [More Information Needed]
363
-
364
- #### Hardware
365
-
366
- [More Information Needed]
367
-
368
- #### Software
369
-
370
- [More Information Needed]
371
-
372
- ## Citation [optional]
373
-
374
- <!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
375
-
376
- **BibTeX:**
377
-
378
- [More Information Needed]
379
-
380
- **APA:**
381
-
382
- [More Information Needed]
383
-
384
- ## Glossary [optional]
385
-
386
- <!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
387
-
388
- [More Information Needed]
389
-
390
- ## More Information [optional]
391
-
392
- [More Information Needed]
393
-
394
- ## Model Card Authors [optional]
395
-
396
- [More Information Needed]
397
-
398
- ## Model Card Contact
399
-
400
- [More Information Needed]
 
1
+ # Cody E2E Testing
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
 
3
+ These tests interact with the VScode user interface and test Cody from a mock server through to VScode UI.
4
 
5
+ ## Commands
6
 
7
+ ### All Tests
8
 
9
+ ```sh
10
+ pnpm test:e2e
11
+ ```
12
 
13
+ ### Individual Test
14
 
15
+ ```sh
16
+ pnpm test:e2e $TEST_FILE_NAME
17
+ ```
18
 
19
+ ### Debug Test
20
 
21
+ ```sh
22
+ # Run all tests in debug mode
23
+ pnpm test:e2e --debug
 
 
 
 
24
 
25
+ # Run a specific test in debug mode
26
+ pnpm test:e2e $TEST_FILE_NAME --debug
27
+ ```
28
 
29
+ ## Notes
30
 
31
+ 1. Flakiness in tests can often be attributed to timing issues, such as asynchronous actions taking longer than expected to complete. By performing a hover action before a click action, you give the application a bit more time to react and stabilize before attempting the subsequent click. This can help mitigate timing-related flakiness.
 
 
32
 
33
+ Example:
34
 
35
+ ```
36
+ await page.getByLabel('.vscode', { exact: true }).hover()
37
+ await page.getByLabel('.vscode', { exact: true }).click()
38
+ ```
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
WelcomeFooter.module.css ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .welcome-footer {
2
+ padding: 1rem 1rem;
3
+ display: flex;
4
+ flex-flow: column nowrap;
5
+ max-width: 100%;
6
+ color: var(--vscode-input-placeholderForeground)
7
+ }
8
+
9
+ .tips {
10
+ display: flex;
11
+ flex-flow: column nowrap;
12
+ width: 100%;
13
+ gap: 0.5rem;
14
+ padding: 1rem 0;
15
+ border-bottom: 0.25px solid var(--vscode-dropdown-border);
16
+ }
17
+
18
+ .links {
19
+ display: flex;
20
+ flex-flow: row wrap;
21
+ padding: 0.75rem 0;
22
+ gap: 0.5rem;
23
+ }
24
+
25
+ .item {
26
+ display: flex;
27
+ flex-flow: row nowrap;
28
+ flex-shrink: 0;
29
+ padding: 0 0.5rem;
30
+ gap: 0.5rem;
31
+ align-items: center;
32
+ }
33
+
34
+ .link {
35
+ color: inherit;
36
+ text-decoration: none;
37
+ }
WelcomeMessage.module.css ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+
2
+ .actions {
3
+ --vscode-keybindingLabel-foreground: currentColor;
4
+ }
autocomplete.md ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ ## Code Autocomplete
2
+
3
+ <img src="https://storage.googleapis.com/sourcegraph-assets/blog/vs-code-onboarding-walkthrough-dec-2023-cody-autocomplete-tsx.gif">
4
+
5
+ Start writing code and Cody will complete the line (or the entire function) for you. Hit tab to accept the suggestion.
6
+
7
+ **✨ Pro-tips for using Cody autocomplete**
8
+ <br>β€’ Autocomplete uses the surrounding code and context to inform the suggestions, so if you need to guide it you can add a comment above the line you're editing.
9
+ <br>β€’ You can hover over the grey suggestion to see a toolbar of alternative suggestions, as well as other options such as accepting a single word at a time.
10
+ <br>β€’ You can use the "Trigger Autocomplete at Cursor" command to trigger a code suggestion at any time, using the default keyboard shortcut of `Option` `\` on macOS and `Alt` `\` on Windows & Linux.
chat-assistant-response-code-buttons-1.txt ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "copyClickedEvent": {
3
+ "version": 0,
4
+ "metadata": [
5
+ {
6
+ "key": "source",
7
+ "value": 1
8
+ },
9
+ {
10
+ "key": "lineCount",
11
+ "value": 5
12
+ },
13
+ {
14
+ "key": "charCount",
15
+ "value": 75
16
+ },
17
+ {
18
+ "key": "tier",
19
+ "value": 2
20
+ }
21
+ ],
22
+ "privateMetadata": {
23
+ "source": "chat",
24
+ "op": "copy"
25
+ },
26
+ "billingMetadata": {
27
+ "product": "cody",
28
+ "category": "core"
29
+ }
30
+ },
31
+ "insertClickedEvent": {
32
+ "version": 0,
33
+ "metadata": [
34
+ {
35
+ "key": "source",
36
+ "value": 1
37
+ },
38
+ {
39
+ "key": "lineCount",
40
+ "value": 1
41
+ },
42
+ {
43
+ "key": "charCount",
44
+ "value": 44
45
+ },
46
+ {
47
+ "key": "tier",
48
+ "value": 2
49
+ }
50
+ ],
51
+ "privateMetadata": {
52
+ "source": "chat",
53
+ "op": "insert"
54
+ },
55
+ "billingMetadata": {
56
+ "product": "cody",
57
+ "category": "core"
58
+ }
59
+ }
60
+ }
chat.md ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ ## Chat
2
+
3
+ <img src="https://storage.googleapis.com/sourcegraph-assets/blog/blog-vscode-v018-release/blog-v018-context-controls-002.gif">
4
+
5
+ Answer questions about general programming topics, or specific to your codebase, with Cody chat. You can choose your preferred model and @-mention repositories, files, and symbols.
6
+
7
+ You can start a chat at any time using the default keyboard shortcut of `Option` `L` on macOS and `Alt` `L` on Windows & Linux.
commands.md ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ## Cody Commands
2
+
3
+ <img src="https://storage.googleapis.com/sourcegraph-assets/blog/vs-code-onboarding-walkthrough-dec-2023-explain.gif">
4
+
5
+ Cody has a range of commands for explaining code, generating unit tests, adding documentation, and more.
6
+
7
+ To get started: select code in your editor, right click, and choose a command from the "Cody" menu.
8
+
9
+ You can also use the [Cody: Commands Menu](command:cody.menu.commands) which has the default keyboard shortcut of `Option` `C` on macOS and `Alt` `C` on Windows & Linux.
10
+
11
+ **✨ Pro-tips for using Cody commands**
12
+ <br>β€’ You can build your own [Custom Commands (Beta)](https://sourcegraph.com/docs/cody/custom-commands) with custom prompts, output into chat or perform code edits, and more.
documentable-node.java ADDED
@@ -0,0 +1,148 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class Test {
2
+ // |
3
+ }
4
+
5
+ // ------------------------------------
6
+
7
+ class Test {
8
+ public int age;
9
+ // |
10
+ }
11
+
12
+ // ------------------------------------
13
+
14
+ class Test {
15
+ public Hello() {
16
+ // |
17
+ }
18
+ }
19
+
20
+ // ------------------------------------
21
+
22
+ class Test {
23
+ public Hello() {
24
+ // |
25
+ }
26
+ }
27
+
28
+ // ------------------------------------
29
+
30
+ class Test {
31
+ public Hello() {
32
+ System.out.println("Hi!");
33
+ // |
34
+ }
35
+ }
36
+
37
+ // ------------------------------------
38
+
39
+ class Test {
40
+ public Test() {
41
+ // |
42
+ }
43
+ }
44
+
45
+ // ------------------------------------
46
+
47
+ public record Point(int x, int y) {
48
+ // |
49
+ }
50
+
51
+ // ------------------------------------
52
+
53
+ public interface Shape {
54
+ // |
55
+ double calculateArea();
56
+ }
57
+
58
+ // ------------------------------------
59
+
60
+ public interface Shape {
61
+ double calculateArea();
62
+ // |
63
+ }
64
+
65
+ // ------------------------------------
66
+
67
+ public enum Day {
68
+ // |
69
+ SUNDAY,
70
+ MONDAY,
71
+ TUESDAY,
72
+ WEDNESDAY,
73
+ THURSDAY,
74
+ FRIDAY,
75
+ SATURDAY
76
+ }
77
+
78
+ // ------------------------------------
79
+
80
+ public enum Month {
81
+ JANUARY,
82
+ // |
83
+ FEBRUARY,
84
+ MARCH,
85
+ APRIL,
86
+ MAY,
87
+ JUNE,
88
+ JULY,
89
+ AUGUST,
90
+ SEPTEMBER,
91
+ OCTOBER,
92
+ NOVEMBER,
93
+ DECEMBER
94
+ }
95
+
96
+ // ------------------------------------
97
+
98
+ public enum Planet {
99
+ EARTH(5.976e+24, 6.37814e6);
100
+ // |
101
+ private final double mass;
102
+ private final double radius;
103
+ }
104
+
105
+ // ------------------------------------
106
+
107
+ public enum Planet {
108
+ EARTH(5.976e+24, 6.37814e6);
109
+ private final double mass;
110
+ // |
111
+ private final double radius;
112
+ }
113
+
114
+ // ------------------------------------
115
+
116
+ public enum Planet {
117
+ EARTH(5.976e+24, 6.37814e6);
118
+ private final double mass;
119
+ private final double radius;
120
+
121
+ Planet(double mass, double radius) {
122
+ // |
123
+ this.mass = mass;
124
+ this.radius = radius;
125
+ }
126
+ }
127
+
128
+ // ------------------------------------
129
+
130
+ public enum Planet {
131
+ EARTH(5.976e+24, 6.37814e6);
132
+ private final double mass;
133
+ private final double radius;
134
+
135
+ public double surfaceGravity() {
136
+ // |
137
+ return 6.67300E-11 * mass / (radius * radius);
138
+ }
139
+ }
140
+
141
+ // ------------------------------------
142
+
143
+ public enum Planet {
144
+ EARTH(5.976e+24, 6.37814e6);
145
+ public static class InnerClass {
146
+ // |
147
+ }
148
+ }
documentable-node.py ADDED
@@ -0,0 +1,80 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ def wrapper():
2
+ print('wrapper')
3
+ def test():
4
+ # |
5
+ pass
6
+
7
+ # ------------------------------------
8
+
9
+ def test():
10
+ # |
11
+ pass
12
+
13
+ # ------------------------------------
14
+
15
+ def test_multiline_func_declaration(
16
+ # |
17
+ val,
18
+ val2
19
+ ):
20
+ wrapper()
21
+
22
+ # ------------------------------------
23
+
24
+ def test_parameter(val):
25
+ # |
26
+ wrapper()
27
+
28
+ # ------------------------------------
29
+
30
+ class Agent:
31
+ # |
32
+ pass
33
+
34
+ # ------------------------------------
35
+
36
+
37
+ class AgentMultiLine(
38
+ BaseClass1,
39
+ BaseClass2):
40
+ # |
41
+ def __init__(self, name):
42
+ self.name = name
43
+
44
+ # ------------------------------------
45
+
46
+ class Agent:
47
+ def __init__(self, name):
48
+ # |
49
+ self.name = name
50
+
51
+ # ------------------------------------
52
+
53
+ class Agent:
54
+ def __init__(self, name):
55
+ self.name = name
56
+
57
+ def test(self):
58
+ # |
59
+ pass
60
+
61
+ # ------------------------------------
62
+
63
+ def return_statement():
64
+ return
65
+ # |
66
+
67
+ # ------------------------------------
68
+
69
+ return_statement('value')
70
+ # |
71
+
72
+ # ------------------------------------
73
+
74
+ user_name = 'Tom'
75
+ # |
76
+
77
+ # ------------------------------------
78
+
79
+ user_name = 'Tom'
80
+ # |
documentable-node.snap.c ADDED
@@ -0,0 +1,192 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ //
2
+ // | - query start position in the source file.
3
+ // β–ˆ – query start position in the annotated file.
4
+ // ^ – characters matching the last query result.
5
+ //
6
+ // ------------------------------------
7
+
8
+ /* wrapper */
9
+ void wrapper() {
10
+ printf("wrapper\n");
11
+ void test() {
12
+ // ^ start range.function[1]
13
+ // β–ˆ
14
+ }
15
+ // ^ end range.function[1]
16
+ }
17
+
18
+ // Nodes types:
19
+ // range.function[1]: function_definition
20
+
21
+ // ------------------------------------
22
+
23
+ void test() {
24
+ //^ start range.function[1]
25
+ // β–ˆ
26
+ }
27
+ //^ end range.function[1]
28
+
29
+ // Nodes types:
30
+ // range.function[1]: function_definition
31
+
32
+ // ------------------------------------
33
+
34
+ static void twoSum(int* nums, int numsSize, int target, int* returnSize) {
35
+ //^ start range.function[1]
36
+ if (numsSize < 2) {
37
+ return;
38
+ } else {
39
+ for (int i = 0; i < numsSize; i++) {
40
+ for (int j = i + 1; j < numsSize; j++) {
41
+ if (nums[i] + nums[j] == target) {
42
+ // β–ˆ
43
+ returnSize[0] = i;
44
+ returnSize[1] = j;
45
+ return;
46
+ }
47
+ }
48
+ }
49
+ }
50
+ }
51
+ //^ end range.function[1]
52
+
53
+ // Nodes types:
54
+ // range.function[1]: function_definition
55
+
56
+ // ------------------------------------
57
+
58
+ void test_multiline_func_declaration(
59
+ //^ start range.function[1]
60
+ // β–ˆ
61
+ int val,
62
+ int val2
63
+ ) {
64
+ wrapper();
65
+ }
66
+ //^ end range.function[1]
67
+
68
+
69
+ // Nodes types:
70
+ // range.function[1]: function_definition
71
+
72
+ // ------------------------------------
73
+
74
+ void test_parameter(int val) {
75
+ //^ start range.function[1]
76
+ // β–ˆ
77
+ wrapper();
78
+ }
79
+ //^ end range.function[1]
80
+
81
+
82
+ // Nodes types:
83
+ // range.function[1]: function_definition
84
+
85
+ // ------------------------------------
86
+
87
+ typedef struct Agent {
88
+ // ^ start range.function[1]
89
+ // β–ˆ
90
+ } Agent;
91
+ //^ end range.function[1]
92
+
93
+
94
+ // Nodes types:
95
+ // range.function[1]: struct_specifier
96
+
97
+ // ------------------------------------
98
+
99
+ typedef struct AgentMultiLine {
100
+ // ^ start range.function[1]
101
+ // β–ˆ
102
+ void (*__init__)(struct AgentMultiLine* self, char* name);
103
+ } AgentMultiLine;
104
+ //^ end range.function[1]
105
+
106
+
107
+ // Nodes types:
108
+ // range.function[1]: struct_specifier
109
+
110
+ // ------------------------------------
111
+
112
+ void AgentMultiLine__init__(struct AgentMultiLine* self, char* name) {
113
+ //^ start range.function[1]
114
+ // β–ˆ
115
+ self->name = name;
116
+ }
117
+ //^ end range.function[1]
118
+
119
+
120
+ // Nodes types:
121
+ // range.function[1]: function_definition
122
+
123
+ // ------------------------------------
124
+
125
+ typedef struct Agent {
126
+ // ^ start range.function[1]
127
+ char* name;
128
+ // β–ˆ
129
+ } Agent;
130
+ //^ end range.function[1]
131
+
132
+
133
+ // Nodes types:
134
+ // range.function[1]: struct_specifier
135
+
136
+ // ------------------------------------
137
+
138
+ void Agent_test(struct Agent* self) {
139
+ //^ start range.function[1]
140
+ // β–ˆ
141
+ }
142
+ //^ end range.function[1]
143
+
144
+
145
+ // Nodes types:
146
+ // range.function[1]: function_definition
147
+
148
+ // ------------------------------------
149
+
150
+ void return_statement() {
151
+ //^ start range.function[1]
152
+ return;
153
+ // β–ˆ
154
+ }
155
+ //^ end range.function[1]
156
+
157
+
158
+ // Nodes types:
159
+ // range.function[1]: function_definition
160
+
161
+ // ------------------------------------
162
+
163
+ return_statement('value');
164
+ // |
165
+
166
+
167
+ // ------------------------------------
168
+
169
+ char* user_name = "Tom";
170
+ //^^^^^^^^^^^^^^^^^^^^^^^^ symbol.identifier[1], range.identifier[1]
171
+ // β–ˆ
172
+
173
+ // Nodes types:
174
+ // symbol.identifier[1]: declaration
175
+ // range.identifier[1]: declaration
176
+
177
+ // ------------------------------------
178
+
179
+ enum Level {
180
+ //^ start range.identifier[1]
181
+ // ^^^^^ symbol.identifier[1]
182
+ // β–ˆ
183
+ LOW,
184
+ MEDIUM,
185
+ HIGH
186
+ };
187
+ //^ end range.identifier[1]
188
+
189
+ // Nodes types:
190
+ // symbol.identifier[1]: type_identifier
191
+ // range.identifier[1]: enum_specifier
192
+
documentable-node.snap.cpp ADDED
@@ -0,0 +1,234 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ //
2
+ // | - query start position in the source file.
3
+ // β–ˆ – query start position in the annotated file.
4
+ // ^ – characters matching the last query result.
5
+ //
6
+ // ------------------------------------
7
+
8
+ /* wrapper */
9
+ void wrapper()
10
+ {
11
+ void test()
12
+ // ^ start range.function[1]
13
+ {
14
+ // ^ start symbol.function[1]
15
+ // β–ˆ
16
+ }
17
+ // ^ end symbol.function[1], range.function[1]
18
+ }
19
+
20
+ // Nodes types:
21
+ // symbol.function[1]: compound_statement
22
+ // range.function[1]: function_definition
23
+
24
+ // ------------------------------------
25
+
26
+ void test()
27
+ //^ start range.function[1]
28
+ {
29
+ //^ start symbol.function[1]
30
+ // β–ˆ
31
+ }
32
+ //^ end symbol.function[1], range.function[1]
33
+
34
+ // Nodes types:
35
+ // symbol.function[1]: compound_statement
36
+ // range.function[1]: function_definition
37
+
38
+ // ------------------------------------
39
+
40
+ static void twoSum(int *nums, int numsSize, int target, int *returnSize)
41
+ //^ start range.function[1]
42
+ {
43
+ if (numsSize < 2)
44
+ {
45
+ return;
46
+ }
47
+ else
48
+ {
49
+ for (int i = 0; i < numsSize; i++)
50
+ {
51
+ for (int j = i + 1; j < numsSize; j++)
52
+ {
53
+ if (nums[i] + nums[j] == target)
54
+ {
55
+ // β–ˆ
56
+ returnSize[0] = i;
57
+ returnSize[1] = j;
58
+ return;
59
+ }
60
+ }
61
+ }
62
+ }
63
+ }
64
+ //^ end range.function[1]
65
+
66
+ // Nodes types:
67
+ // range.function[1]: function_definition
68
+
69
+ // ------------------------------------
70
+
71
+ void test_multiline_func_declaration(
72
+ //^ start range.function[1]
73
+ // β–ˆ
74
+ int val,
75
+ int val2)
76
+ {
77
+ wrapper();
78
+ }
79
+ //^ end range.function[1]
80
+
81
+ // Nodes types:
82
+ // range.function[1]: function_definition
83
+
84
+ // ------------------------------------
85
+
86
+ void test_parameter(int val)
87
+ //^ start range.function[1]
88
+ {
89
+ //^ start symbol.function[1]
90
+ // β–ˆ
91
+ wrapper();
92
+ }
93
+ //^ end symbol.function[1], range.function[1]
94
+
95
+ // Nodes types:
96
+ // symbol.function[1]: compound_statement
97
+ // range.function[1]: function_definition
98
+
99
+ // ------------------------------------
100
+
101
+ typedef struct
102
+ //^ start range.identifier[1]
103
+ {
104
+ // β–ˆ
105
+ } Agent;
106
+ // ^ end range.identifier[1]
107
+
108
+ // Nodes types:
109
+ // range.identifier[1]: type_definition
110
+
111
+ // ------------------------------------
112
+
113
+ typedef struct
114
+ //^ start range.identifier[1]
115
+ {
116
+ // β–ˆ
117
+ void (*__init__)(struct AgentMultiLine *self, char *name);
118
+ } AgentMultiLine;
119
+ // ^ end range.identifier[1]
120
+
121
+ // Nodes types:
122
+ // range.identifier[1]: type_definition
123
+
124
+ // ------------------------------------
125
+
126
+ void AgentMultiLine__init__(AgentMultiLine *self, char *name)
127
+ //^ start range.function[1]
128
+ {
129
+ //^ start symbol.function[1]
130
+ // β–ˆ
131
+ self->name = name;
132
+ }
133
+ //^ end symbol.function[1], range.function[1]
134
+
135
+ // Nodes types:
136
+ // symbol.function[1]: compound_statement
137
+ // range.function[1]: function_definition
138
+
139
+ // ------------------------------------
140
+
141
+ typedef struct
142
+ //^ start range.identifier[1]
143
+ {
144
+ char *name;
145
+ // β–ˆ
146
+ } Agent;
147
+ // ^ end range.identifier[1]
148
+
149
+ // Nodes types:
150
+ // range.identifier[1]: type_definition
151
+
152
+ // ------------------------------------
153
+
154
+ void Agent_test(Agent *self)
155
+ //^ start range.function[1]
156
+ {
157
+ //^ start symbol.function[1]
158
+ // β–ˆ
159
+ }
160
+ //^ end symbol.function[1], range.function[1]
161
+
162
+ // Nodes types:
163
+ // symbol.function[1]: compound_statement
164
+ // range.function[1]: function_definition
165
+
166
+ // ------------------------------------
167
+
168
+ void return_statement()
169
+ //^ start range.function[1]
170
+ {
171
+ return;
172
+ // β–ˆ
173
+ }
174
+ //^ end range.function[1]
175
+
176
+ // Nodes types:
177
+ // range.function[1]: function_definition
178
+
179
+ // ------------------------------------
180
+
181
+ enum Level
182
+ //^ start range.identifier[1]
183
+ {
184
+ // β–ˆ
185
+ LOW,
186
+ MEDIUM,
187
+ HIGH
188
+ };
189
+ //^ end range.identifier[1]
190
+
191
+ // Nodes types:
192
+ // range.identifier[1]: enum_specifier
193
+
194
+ // ------------------------------------
195
+
196
+ template <typename T> struct SampleStruct {
197
+ // ^ start range.identifier[1]
198
+ template <typename ParseContext>
199
+ auto parse(ParseContext &ctx) {
200
+ // β–ˆ
201
+ return ctx.begin();
202
+ }
203
+
204
+ void foo() {
205
+ }
206
+ };
207
+ //^ end range.identifier[1]
208
+
209
+ // Nodes types:
210
+ // range.identifier[1]: struct_specifier
211
+
212
+ // ------------------------------------
213
+
214
+ #define TEST(name) void test_##name()
215
+
216
+ TEST(twoSum)
217
+ {
218
+ int target = 9;
219
+ int returnSize[2];
220
+ int expected[] = {0, 1};
221
+ // |
222
+ };
223
+
224
+ // ------------------------------------
225
+
226
+ // Variable should not be detected as documentable.
227
+ int nums[] = {2, 7, 11, 15};
228
+ // |
229
+
230
+ // ------------------------------------
231
+
232
+ // Variable should not be detected as documentable.
233
+ char *user_name = "Tom";
234
+ // |
documentable-node.snap.java ADDED
@@ -0,0 +1,252 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ //
2
+ // | - query start position in the source file.
3
+ // β–ˆ – query start position in the annotated file.
4
+ // ^ – characters matching the last query result.
5
+ //
6
+ // ------------------------------------
7
+
8
+ class Test {
9
+ //^ start range.identifier[1]
10
+ // ^^^^ symbol.identifier[1]
11
+ // β–ˆ
12
+ }
13
+ //^ end range.identifier[1]
14
+
15
+ // Nodes types:
16
+ // symbol.identifier[1]: identifier
17
+ // range.identifier[1]: class_declaration
18
+
19
+ // ------------------------------------
20
+
21
+ class Test {
22
+ //^ start range.identifier[1]
23
+ public int age;
24
+ // β–ˆ
25
+ }
26
+ //^ end range.identifier[1]
27
+
28
+ // Nodes types:
29
+ // range.identifier[1]: class_declaration
30
+
31
+ // ------------------------------------
32
+
33
+ class Test {
34
+ public Hello() {
35
+ // ^ start range.function[1]
36
+ // ^^^^^ symbol.function[1]
37
+ // β–ˆ
38
+ }
39
+ // ^ end range.function[1]
40
+ }
41
+
42
+ // Nodes types:
43
+ // symbol.function[1]: identifier
44
+ // range.function[1]: constructor_declaration
45
+
46
+ // ------------------------------------
47
+
48
+ class Test {
49
+ public Hello() {
50
+ // ^ start range.function[1]
51
+ // β–ˆ
52
+ }
53
+ // ^ end range.function[1]
54
+ }
55
+
56
+ // Nodes types:
57
+ // range.function[1]: constructor_declaration
58
+
59
+ // ------------------------------------
60
+
61
+ class Test {
62
+ public Hello() {
63
+ // ^ start range.function[1]
64
+ System.out.println("Hi!");
65
+ // β–ˆ
66
+ }
67
+ // ^ end range.function[1]
68
+ }
69
+
70
+ // Nodes types:
71
+ // range.function[1]: constructor_declaration
72
+
73
+ // ------------------------------------
74
+
75
+ class Test {
76
+ public Test() {
77
+ // ^ start range.function[1]
78
+ // ^^^^ symbol.function[1]
79
+ // β–ˆ
80
+ }
81
+ // ^ end range.function[1]
82
+ }
83
+
84
+ // Nodes types:
85
+ // symbol.function[1]: identifier
86
+ // range.function[1]: constructor_declaration
87
+
88
+ // ------------------------------------
89
+
90
+ public record Point(int x, int y) {
91
+ //^ start range.function[1]
92
+ // ^^^^^ symbol.function[1]
93
+ // β–ˆ
94
+ }
95
+ //^ end range.function[1]
96
+
97
+ // Nodes types:
98
+ // symbol.function[1]: identifier
99
+ // range.function[1]: record_declaration
100
+
101
+ // ------------------------------------
102
+
103
+ public interface Shape {
104
+ //^ start range.identifier[1]
105
+ // ^^^^^ symbol.identifier[1]
106
+ // β–ˆ
107
+ double calculateArea();
108
+ }
109
+ //^ end range.identifier[1]
110
+
111
+ // Nodes types:
112
+ // symbol.identifier[1]: identifier
113
+ // range.identifier[1]: interface_declaration
114
+
115
+ // ------------------------------------
116
+
117
+ public interface Shape {
118
+ double calculateArea();
119
+ // ^^^^^^^^^^^^^^^^^^^^^^^ range.function[1]
120
+ // ^^^^^^^^^^^^^ symbol.function[1]
121
+ // β–ˆ
122
+ }
123
+
124
+ // Nodes types:
125
+ // symbol.function[1]: identifier
126
+ // range.function[1]: method_declaration
127
+
128
+ // ------------------------------------
129
+
130
+ public enum Day {
131
+ //^ start range.identifier[1]
132
+ // ^^^ symbol.identifier[1]
133
+ // β–ˆ
134
+ SUNDAY,
135
+ MONDAY,
136
+ TUESDAY,
137
+ WEDNESDAY,
138
+ THURSDAY,
139
+ FRIDAY,
140
+ SATURDAY
141
+ }
142
+ //^ end range.identifier[1]
143
+
144
+ // Nodes types:
145
+ // symbol.identifier[1]: identifier
146
+ // range.identifier[1]: enum_declaration
147
+
148
+ // ------------------------------------
149
+
150
+ public enum Month {
151
+ JANUARY,
152
+ // ^^^^^^^ symbol.identifier[1], range.identifier[1]
153
+ // β–ˆ
154
+ FEBRUARY,
155
+ MARCH,
156
+ APRIL,
157
+ MAY,
158
+ JUNE,
159
+ JULY,
160
+ AUGUST,
161
+ SEPTEMBER,
162
+ OCTOBER,
163
+ NOVEMBER,
164
+ DECEMBER
165
+ }
166
+
167
+ // Nodes types:
168
+ // symbol.identifier[1]: identifier
169
+ // range.identifier[1]: enum_constant
170
+
171
+ // ------------------------------------
172
+
173
+ public enum Planet {
174
+ EARTH(5.976e+24, 6.37814e6);
175
+ // ^^^^^^^^^^^^^^^^^^^^^^^^^^^ range.identifier[1]
176
+ // β–ˆ
177
+ private final double mass;
178
+ private final double radius;
179
+ }
180
+
181
+ // Nodes types:
182
+ // range.identifier[1]: enum_constant
183
+
184
+ // ------------------------------------
185
+
186
+ public enum Planet {
187
+ //^ start range.identifier[1]
188
+ EARTH(5.976e+24, 6.37814e6);
189
+ private final double mass;
190
+ // β–ˆ
191
+ private final double radius;
192
+ }
193
+ //^ end range.identifier[1]
194
+
195
+ // Nodes types:
196
+ // range.identifier[1]: enum_declaration
197
+
198
+ // ------------------------------------
199
+
200
+ public enum Planet {
201
+ EARTH(5.976e+24, 6.37814e6);
202
+ private final double mass;
203
+ private final double radius;
204
+
205
+ Planet(double mass, double radius) {
206
+ // ^ start range.function[1]
207
+ // β–ˆ
208
+ this.mass = mass;
209
+ this.radius = radius;
210
+ }
211
+ // ^ end range.function[1]
212
+ }
213
+
214
+ // Nodes types:
215
+ // range.function[1]: constructor_declaration
216
+
217
+ // ------------------------------------
218
+
219
+ public enum Planet {
220
+ EARTH(5.976e+24, 6.37814e6);
221
+ private final double mass;
222
+ private final double radius;
223
+
224
+ public double surfaceGravity() {
225
+ // ^ start range.function[1]
226
+ // ^^^^^^^^^^^^^^ symbol.function[1]
227
+ // β–ˆ
228
+ return 6.67300E-11 * mass / (radius * radius);
229
+ }
230
+ // ^ end range.function[1]
231
+ }
232
+
233
+ // Nodes types:
234
+ // symbol.function[1]: identifier
235
+ // range.function[1]: method_declaration
236
+
237
+ // ------------------------------------
238
+
239
+ public enum Planet {
240
+ EARTH(5.976e+24, 6.37814e6);
241
+ public static class InnerClass {
242
+ // ^ start range.identifier[1]
243
+ // ^^^^^^^^^^ symbol.identifier[1]
244
+ // β–ˆ
245
+ }
246
+ // ^ end range.identifier[1]
247
+ }
248
+
249
+ // Nodes types:
250
+ // symbol.identifier[1]: identifier
251
+ // range.identifier[1]: class_declaration
252
+
documentable-node.snap.py ADDED
@@ -0,0 +1,173 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #
2
+ # | - query start position in the source file.
3
+ # β–ˆ – query start position in the annotated file.
4
+ # ^ – characters matching the last query result.
5
+ #
6
+ # ------------------------------------
7
+
8
+ def wrapper():
9
+ print('wrapper')
10
+ def test():
11
+ # ^ start range.function[1]
12
+ # ^^^^ symbol.function[1]
13
+ # ^ insertion.point[1]
14
+ # β–ˆ
15
+ pass
16
+ # ^ end range.function[1]
17
+
18
+ # Nodes types:
19
+ # symbol.function[1]: identifier
20
+ # range.function[1]: function_definition
21
+ # insertion.point[1]: :
22
+
23
+ # ------------------------------------
24
+
25
+ def test():
26
+ #^ start range.function[1]
27
+ # ^^^^ symbol.function[1]
28
+ # ^ insertion.point[1]
29
+ # β–ˆ
30
+ pass
31
+ # ^ end range.function[1]
32
+
33
+ # Nodes types:
34
+ # symbol.function[1]: identifier
35
+ # range.function[1]: function_definition
36
+ # insertion.point[1]: :
37
+
38
+ # ------------------------------------
39
+
40
+ def test_multiline_func_declaration(
41
+ #^ start range.function[1]
42
+ # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ symbol.function[1]
43
+ # β–ˆ
44
+ val,
45
+ val2
46
+ ):
47
+ # ^ insertion.point[1]
48
+ wrapper()
49
+ # ^ end range.function[1]
50
+
51
+ # Nodes types:
52
+ # symbol.function[1]: identifier
53
+ # range.function[1]: function_definition
54
+ # insertion.point[1]: :
55
+
56
+ # ------------------------------------
57
+
58
+ def test_parameter(val):
59
+ #^ start range.function[1]
60
+ # ^ insertion.point[1]
61
+ # β–ˆ
62
+ wrapper()
63
+ # ^ end range.function[1]
64
+
65
+ # Nodes types:
66
+ # range.function[1]: function_definition
67
+ # insertion.point[1]: :
68
+
69
+ # ------------------------------------
70
+
71
+ class Agent:
72
+ #^ start range.class[1]
73
+ # ^^^^^ symbol.class[1]
74
+ # ^ insertion.point[1]
75
+ # β–ˆ
76
+ pass
77
+ # ^ end range.class[1]
78
+
79
+ # Nodes types:
80
+ # symbol.class[1]: identifier
81
+ # range.class[1]: class_definition
82
+ # insertion.point[1]: :
83
+
84
+ # ------------------------------------
85
+
86
+
87
+ class AgentMultiLine(
88
+ #^ start range.class[1]
89
+ BaseClass1,
90
+ BaseClass2):
91
+ # ^ insertion.point[1]
92
+ # β–ˆ
93
+ def __init__(self, name):
94
+ self.name = name
95
+ # ^ end range.class[1]
96
+
97
+ # Nodes types:
98
+ # range.class[1]: class_definition
99
+ # insertion.point[1]: :
100
+
101
+ # ------------------------------------
102
+
103
+ class Agent:
104
+ def __init__(self, name):
105
+ # ^ start range.function[1]
106
+ # ^^^^^^^^ symbol.function[1]
107
+ # ^ insertion.point[1]
108
+ # β–ˆ
109
+ self.name = name
110
+ # ^ end range.function[1]
111
+
112
+ # Nodes types:
113
+ # symbol.function[1]: identifier
114
+ # range.function[1]: function_definition
115
+ # insertion.point[1]: :
116
+
117
+ # ------------------------------------
118
+
119
+ class Agent:
120
+ def __init__(self, name):
121
+ self.name = name
122
+
123
+ def test(self):
124
+ # ^ start range.function[1]
125
+ # ^^^^ symbol.function[1]
126
+ # ^ insertion.point[1]
127
+ # β–ˆ
128
+ pass
129
+ # ^ end range.function[1]
130
+
131
+ # Nodes types:
132
+ # symbol.function[1]: identifier
133
+ # range.function[1]: function_definition
134
+ # insertion.point[1]: :
135
+
136
+ # ------------------------------------
137
+
138
+ def return_statement():
139
+ #^ start range.function[1]
140
+ # ^ insertion.point[1]
141
+ return
142
+ # ^ end range.function[1]
143
+ # β–ˆ
144
+
145
+ # Nodes types:
146
+ # range.function[1]: function_definition
147
+ # insertion.point[1]: :
148
+
149
+ # ------------------------------------
150
+
151
+ return_statement('value')
152
+ # |
153
+
154
+ # ------------------------------------
155
+
156
+ user_name = 'Tom'
157
+ #^^^^^^^^^ symbol.identifier[1]
158
+ #^^^^^^^^^^^^^^^^^ range.identifier[1]
159
+ # β–ˆ
160
+
161
+ # Nodes types:
162
+ # symbol.identifier[1]: identifier
163
+ # range.identifier[1]: assignment
164
+
165
+ # ------------------------------------
166
+
167
+ user_name = 'Tom'
168
+ #^^^^^^^^^^^^^^^^^ range.identifier[1]
169
+ # β–ˆ
170
+
171
+ # Nodes types:
172
+ # range.identifier[1]: assignment
173
+
edit-fixup-task-1.txt ADDED
@@ -0,0 +1,72 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "version": 0,
3
+ "metadata": [
4
+ {
5
+ "key": "intent",
6
+ "value": 2
7
+ },
8
+ {
9
+ "key": "mode",
10
+ "value": 2
11
+ },
12
+ {
13
+ "key": "source",
14
+ "value": 2
15
+ },
16
+ {
17
+ "key": "lineCount",
18
+ "value": 4
19
+ },
20
+ {
21
+ "key": "charCount",
22
+ "value": 46
23
+ },
24
+ {
25
+ "key": "isSelectionStale",
26
+ "value": 0
27
+ },
28
+ {
29
+ "key": "isDisjoint",
30
+ "value": 0
31
+ },
32
+ {
33
+ "key": "isPartiallyOutsideOfVisibleRanges",
34
+ "value": 0
35
+ },
36
+ {
37
+ "key": "isFullyOutsideOfVisibleRanges",
38
+ "value": 0
39
+ },
40
+ {
41
+ "key": "windowNotFocused",
42
+ "value": 0
43
+ },
44
+ {
45
+ "key": "noActiveTextEditor",
46
+ "value": 0
47
+ },
48
+ {
49
+ "key": "outsideOfActiveEditor",
50
+ "value": 0
51
+ },
52
+ {
53
+ "key": "charsInserted",
54
+ "value": 46
55
+ },
56
+ {
57
+ "key": "charsDeleted",
58
+ "value": 44
59
+ },
60
+ {
61
+ "key": "tier",
62
+ "value": 0
63
+ }
64
+ ],
65
+ "privateMetadata": {
66
+ "model": "anthropic::2023-06-01::claude-3.5-sonnet"
67
+ },
68
+ "billingMetadata": {
69
+ "category": "core",
70
+ "product": "cody"
71
+ }
72
+ }
edit.md ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ## Edit Code
2
+
3
+ <!-- todo -->
4
+
5
+ You can ask Cody to perform code edits using the Edit Code command. This will edit code according to your instructions, giving you the chance to retry the edit with a new prompt, undo, accept, or reject the change(s).
6
+
7
+ To get started: select code in your editor, right click, and choose "Cody β†’ Edit Code".
8
+
9
+ You can also use the default keyboard shortcut of `Opt+K`/`Alt+K`.
10
+
11
+ **✨ Pro-tips for code editing with Cody**
12
+ <br>β€’ You can open the πŸ’‘ menu, with an "Cody: Edit Code" option, by selecting any line of code and using the keyboard shortcut `Cmd+.`/`Ctrl+.`.
13
+ <br>β€’ If you start an empty line and open the πŸ’‘ menu (using the keyboard shortcut `Cmd+.`/`Ctrl+.`) you can use "Cody: Generate Code" to generate new lines of code based on instructions.
14
+ <br>β€’ You define your own custom code editing commands using [Custom Commands (Beta)](https://sourcegraph.com/docs/cody/custom-commands), by setting the [`commands.<id>.mode` property](https://sourcegraph.com/docs/cody/capabilities/commands#commands-id-mode).
enclosing-function.java ADDED
@@ -0,0 +1,86 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class Test {
2
+ public Hello() {
3
+ // |
4
+ }
5
+ }
6
+
7
+ // ------------------------------------
8
+
9
+ class Test {
10
+ public Hello() {
11
+ // |
12
+ }
13
+ }
14
+
15
+ // ------------------------------------
16
+
17
+ class Test {
18
+ public Hello() {
19
+ System.out.println("Hi!");
20
+ // |
21
+ }
22
+ }
23
+
24
+ // ------------------------------------
25
+
26
+ class Test {
27
+ public Test() {
28
+ // |
29
+ }
30
+ }
31
+
32
+ // ------------------------------------
33
+
34
+ public record Point(int x, int y) {
35
+ // |
36
+ }
37
+
38
+ // ------------------------------------
39
+
40
+ public interface MyFunctionalInterface {
41
+ void myMethod();
42
+ }
43
+
44
+ public class MyClass {
45
+ public void main(String[] args) {
46
+ MyFunctionalInterface func = () -> {
47
+ System.out.println("Hello, world!");
48
+ // |
49
+ };
50
+ }
51
+ }
52
+
53
+ // ------------------------------------
54
+
55
+ public enum Planet {
56
+ EARTH(5.976e+24, 6.37814e6);
57
+ private final double mass;
58
+ private final double radius;
59
+
60
+ Planet(double mass, double radius) {
61
+ // |
62
+ this.mass = mass;
63
+ this.radius = radius;
64
+ }
65
+ }
66
+
67
+ // ------------------------------------
68
+
69
+ public enum Planet {
70
+ EARTH(5.976e+24, 6.37814e6);
71
+ private final double mass;
72
+ private final double radius;
73
+
74
+ public double surfaceGravity() {
75
+ // |
76
+ return 6.67300E-11 * mass / (radius * radius);
77
+ }
78
+ }
79
+
80
+ // ------------------------------------
81
+
82
+ public enum Planet {
83
+ CONSTANT1(() -> {
84
+ // |
85
+ });
86
+ }
enclosing-function.py ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ def wrapper():
2
+ print('wrapper')
3
+ def test():
4
+ pass
5
+ # |
6
+
7
+ # ------------------------------------
8
+
9
+ def test():
10
+ pass
11
+ # |
12
+
13
+ # ------------------------------------
14
+
15
+ def test_parameter(val):
16
+ # |
17
+ wrapper()
18
+
19
+ # ------------------------------------
20
+
21
+ class Agent:
22
+ pass
23
+ # |
24
+
25
+ # ------------------------------------
26
+
27
+ class Agent:
28
+ def __init__(self, name):
29
+ self.name = name
30
+ # |
31
+
32
+ # ------------------------------------
33
+
34
+ class Agent:
35
+ def __init__(self, name):
36
+ self.name = name
37
+
38
+ def test(self):
39
+ pass
40
+ # |
enclosing-function.snap.java ADDED
@@ -0,0 +1,139 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ //
2
+ // | - query start position in the source file.
3
+ // β–ˆ – query start position in the annotated file.
4
+ // ^ – characters matching the last query result.
5
+ //
6
+ // ------------------------------------
7
+
8
+ class Test {
9
+ public Hello() {
10
+ // ^ start range.function[1]
11
+ // β–ˆ
12
+ }
13
+ // ^ end range.function[1]
14
+ }
15
+
16
+ // Nodes types:
17
+ // range.function[1]: constructor_declaration
18
+
19
+ // ------------------------------------
20
+
21
+ class Test {
22
+ public Hello() {
23
+ // ^ start range.function[1]
24
+ // β–ˆ
25
+ }
26
+ // ^ end range.function[1]
27
+ }
28
+
29
+ // Nodes types:
30
+ // range.function[1]: constructor_declaration
31
+
32
+ // ------------------------------------
33
+
34
+ class Test {
35
+ public Hello() {
36
+ // ^ start range.function[1]
37
+ System.out.println("Hi!");
38
+ // β–ˆ
39
+ }
40
+ // ^ end range.function[1]
41
+ }
42
+
43
+ // Nodes types:
44
+ // range.function[1]: constructor_declaration
45
+
46
+ // ------------------------------------
47
+
48
+ class Test {
49
+ public Test() {
50
+ // ^ start range.function[1]
51
+ // β–ˆ
52
+ }
53
+ // ^ end range.function[1]
54
+ }
55
+
56
+ // Nodes types:
57
+ // range.function[1]: constructor_declaration
58
+
59
+ // ------------------------------------
60
+
61
+ public record Point(int x, int y) {
62
+ //^ start range.function[1]
63
+ // β–ˆ
64
+ }
65
+ //^ end range.function[1]
66
+
67
+ // Nodes types:
68
+ // range.function[1]: record_declaration
69
+
70
+ // ------------------------------------
71
+
72
+ public interface MyFunctionalInterface {
73
+ void myMethod();
74
+ }
75
+
76
+ public class MyClass {
77
+ public void main(String[] args) {
78
+ MyFunctionalInterface func = () -> {
79
+ // ^ start range.function[1]
80
+ System.out.println("Hello, world!");
81
+ // β–ˆ
82
+ };
83
+ // ^ end range.function[1]
84
+ }
85
+ }
86
+
87
+ // Nodes types:
88
+ // range.function[1]: lambda_expression
89
+
90
+ // ------------------------------------
91
+
92
+ public enum Planet {
93
+ EARTH(5.976e+24, 6.37814e6);
94
+ private final double mass;
95
+ private final double radius;
96
+
97
+ Planet(double mass, double radius) {
98
+ // ^ start range.function[1]
99
+ // β–ˆ
100
+ this.mass = mass;
101
+ this.radius = radius;
102
+ }
103
+ // ^ end range.function[1]
104
+ }
105
+
106
+ // Nodes types:
107
+ // range.function[1]: constructor_declaration
108
+
109
+ // ------------------------------------
110
+
111
+ public enum Planet {
112
+ EARTH(5.976e+24, 6.37814e6);
113
+ private final double mass;
114
+ private final double radius;
115
+
116
+ public double surfaceGravity() {
117
+ // ^ start range.function[1]
118
+ // β–ˆ
119
+ return 6.67300E-11 * mass / (radius * radius);
120
+ }
121
+ // ^ end range.function[1]
122
+ }
123
+
124
+ // Nodes types:
125
+ // range.function[1]: method_declaration
126
+
127
+ // ------------------------------------
128
+
129
+ public enum Planet {
130
+ CONSTANT1(() -> {
131
+ // ^ start range.function[1]
132
+ // β–ˆ
133
+ });
134
+ //^ end range.function[1]
135
+ }
136
+
137
+ // Nodes types:
138
+ // range.function[1]: lambda_expression
139
+
enclosing-function.snap.py ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #
2
+ # | - query start position in the source file.
3
+ # β–ˆ – query start position in the annotated file.
4
+ # ^ – characters matching the last query result.
5
+ #
6
+ # ------------------------------------
7
+
8
+ def wrapper():
9
+ print('wrapper')
10
+ def test():
11
+ # ^ start range.function[1]
12
+ pass
13
+ # ^ end range.function[1]
14
+ # β–ˆ
15
+
16
+ # Nodes types:
17
+ # range.function[1]: function_definition
18
+
19
+ # ------------------------------------
20
+
21
+ def test():
22
+ #^ start range.function[1]
23
+ pass
24
+ # ^ end range.function[1]
25
+ # β–ˆ
26
+
27
+ # Nodes types:
28
+ # range.function[1]: function_definition
29
+
30
+ # ------------------------------------
31
+
32
+ def test_parameter(val):
33
+ #^ start range.function[1]
34
+ # β–ˆ
35
+ wrapper()
36
+ # ^ end range.function[1]
37
+
38
+ # Nodes types:
39
+ # range.function[1]: function_definition
40
+
41
+ # ------------------------------------
42
+
43
+ class Agent:
44
+ pass
45
+ # |
46
+
47
+ # ------------------------------------
48
+
49
+ class Agent:
50
+ def __init__(self, name):
51
+ # ^ start range.function[1]
52
+ self.name = name
53
+ # ^ end range.function[1]
54
+ # β–ˆ
55
+
56
+ # Nodes types:
57
+ # range.function[1]: function_definition
58
+
59
+ # ------------------------------------
60
+
61
+ class Agent:
62
+ def __init__(self, name):
63
+ self.name = name
64
+
65
+ def test(self):
66
+ # ^ start range.function[1]
67
+ pass
68
+ # ^ end range.function[1]
69
+ # β–ˆ
70
+
71
+ # Nodes types:
72
+ # range.function[1]: function_definition
73
+
explain.md ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ## Explain Code
2
+
3
+ <video autoPlay muted loop playsInline>
4
+ <source
5
+ type="video/mp4"
6
+ src="https://storage.googleapis.com/sourcegraph-assets/website/Product%20Animations/cody-explain-code-aug2023.mp4"
7
+ />
8
+ </video>
9
+
10
+ Use Cody to get an in-depth explanation of any piece of code in any programming language.
11
+
12
+ To get started: select code in your editor, right click, and choose "Cody β†’ Explain Code".
13
+
14
+ You can also run this command from the [Cody: Commands Menu](command:cody.menu.commands), which has the default keyboard shortcut of `Option` `C` on macOS and `Alt` `C` on Windows & Linux.
15
+
16
+ **✨ Pro-tips for understanding code with Cody**
17
+ <br>β€’ Cody can also explain errors too, with the "Ask Cody to Explain" option in the πŸ’‘ menus, or by right clicking on any items in the "Problems" tab of VS Code.
18
+ <br>β€’ You can define your own custom code explain commands to suit, such as prompt that requests an explanation focused on potential security issues, using [Custom Commands (Beta)](https://sourcegraph.com/docs/cody/custom-commands).
fix.md ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ ## Fix Code
2
+
3
+ <img src="https://storage.googleapis.com/sourcegraph-assets/blog/vs-code-onboarding-walkthrough-dec-2023-ask-to-fix.gif">
4
+
5
+ Something wrong with your code? Use Cody’s "Ask Cody to Fix" command to fix it, or explain the problem.
6
+
7
+ **✨ Pro-tips for fixing code with Cody**
8
+ <br>β€’ You can open the πŸ’‘ menu, with an "Ask Cody to Fix" option, by moving the cursor over any line of code with an error and using the keyboard shortcut `Cmd+.`/`Ctrl+.`.
9
+ <br>β€’ You can also right click on any items in the "Problems" tab of VS Code and select "Ask Cody to Fix".
graph-identifiers.py ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ def wrapper():
2
+ print('wrapper')
3
+ def test():
4
+ # |
5
+ pass
6
+
7
+ # ------------------------------------
8
+
9
+ def test_params():
10
+ # |
11
+ wrapper()
12
+
13
+ # ------------------------------------
14
+
15
+ def test_parameter(val):
16
+ # |
17
+ wrapper()
18
+
19
+ # ------------------------------------
20
+
21
+ def arrow_wrapper():
22
+ arrow = lambda value: None
23
+ # |
24
+
25
+ # ------------------------------------
26
+
27
+ class Agent:
28
+ # |
29
+ pass
30
+
31
+ # ------------------------------------
32
+
33
+ def signature():
34
+ # |
35
+ pass
36
+
37
+ # ------------------------------------
38
+
39
+ # comment
40
+ # |
41
+
42
+ # ------------------------------------
43
+
44
+ def function_name():
45
+ # |
46
+ pass
47
+
48
+ # ------------------------------------
49
+
50
+ def return_statement():
51
+ return
52
+ # |
53
+
54
+ # ------------------------------------
55
+
56
+ def return_statement_value(value: str, flag: bool = False):
57
+ return 'asd'
58
+ # |
59
+
60
+ # ------------------------------------
61
+
62
+ return_statement_value('value')
63
+ # |
64
+
65
+ # ------------------------------------
66
+
67
+ return_statement_value('value', False)
68
+ # |
69
+
70
+ # ------------------------------------
71
+
72
+ return_statement_value()
73
+ # |
74
+
75
+ # ------------------------------------
76
+
77
+ from math import cos
78
+ # |
79
+
80
+ # ------------------------------------
81
+
82
+ from math import comb
83
+ # |
ignoredByCody.css ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ /* NOTE: This is used for testing .cody/ignore */
2
+ /* All .css files in the fixtures workspace are ignored by Cody */
3
+ .ignore-me-cody {
4
+ color: red;
5
+ cursor: not-allowed;
6
+ }
index.html CHANGED
@@ -1,22 +1,11 @@
1
  <!DOCTYPE html>
2
  <html lang="en">
3
  <head>
4
- <script>/*injectedScript*/</script>
5
- <style>/*injectedStyle*/</style>
6
  <meta charset="UTF-8" />
 
7
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
8
- <!-- START CSP -->
9
- <!-- This content security policy also implicitly disables inline scripts and styles. -->
10
- <meta
11
- http-equiv="Content-Security-Policy"
12
- content="default-src 'none'; img-src 'self' https: data:; script-src 'self'; style-src 'self'; font-src data: 'self'; connect-src 'self'; object-src 'self'; frame-src 'self'; media-src blob:;"
13
- />
14
- <!-- DO NOT REMOVE: THIS FILE IS THE ENTRY FILE FOR CODY WEBVIEW -->
15
- <!-- END CSP -->
16
- <title>Cody</title>
17
  </head>
18
  <body>
19
- <div id="root"></div>
20
- <script type="module" src="index.tsx"></script>
21
  </body>
22
  </html>
 
1
  <!DOCTYPE html>
2
  <html lang="en">
3
  <head>
 
 
4
  <meta charset="UTF-8" />
5
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
6
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>Hello Cody</title>
 
 
 
 
 
 
 
 
8
  </head>
9
  <body>
 
 
10
  </body>
11
  </html>
ollama.md ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ## Code Autocomplete with Ollama in Cody
2
+
3
+ Follow the steps below to set up experimental autocomplete support with Ollama running locally:
4
+
5
+ 1. Install and run [Ollama](https://ollama.com/download).
6
+ 2. Download one of the supported models:
7
+
8
+ - `ollama pull deepseek-coder:6.7b-base-q4_K_M` for [deepseek-coder](https://ollama.ai/library/deepseek-coder)
9
+ - `ollama pull codellama:7b-code` for [codellama](https://ollama.ai/library/codellama)
10
+ - `ollama pull codegemma:2b` for [codegemma](https://ollama.ai/library/codegemma)
11
+
12
+ 3. Update Cody's VS Code settings to use the `experimental-ollama` autocomplete provider and configure the correct model:
13
+
14
+ ```json
15
+ {
16
+ "cody.autocomplete.advanced.provider": "experimental-ollama",
17
+ "cody.autocomplete.experimental.ollamaOptions": {
18
+ "url": "http://localhost:11434",
19
+ "model": "deepseek-coder:6.7b-base-q4_K_M"
20
+ }
21
+ }
22
+ ```
23
+
24
+ 4. Confirm that Cody is using Ollama by checking the Cody output channel or the autocomplete trace view (in the command palette).
25
+
26
+ Learn more about [Local code completion with Ollama and Cody](https://sourcegraph.com/blog/local-code-completion-with-ollama-and-cody).
27
+
28
+ ## Chat & Commands with Ollama in Cody
29
+
30
+ Experience experimental chat and commands support with Ollama running locally:
31
+
32
+ 1. Install and run [Ollama](https://ollama.com/download).
33
+ 2. Select a chat model (model that includes `instruct` or `chat`, e.g. [codegemma:instruct](https://ollama.com/library/codegemma:instruct), [llama3:instruct](https://ollama.com/library/llama3:instruct)) from the [Ollama Library](https://ollama.com/library).
34
+ 3. Pull the chat model locally (Example: `ollama pull codegemma:instruct`).
35
+ 4. Once the chat model is downloaded successfully, open Cody in VS Code.
36
+ 5. Open a new Cody chat.
37
+ 6. In the new chat panel, you should see the chat model you've pulled in the dropdown list at the top
38
+
39
+ Note: You can run `ollama list` in your terminal to see what Ollama models are currently available on your machine.
40
+
41
+ Learn more about [Local chat with Ollama and Cody](https://sourcegraph.com/blog/local-chat-with-ollama-and-cody).
42
+
43
+ > NOTE: Non-Enterprise users only.
style.css ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ /* NOTE: This is used for testing .cody/ignore */
2
+ /* All .css files in the fixtures workspace are ignored by Cody */
3
+ .ignore-me-cody {
4
+ color: red;
5
+ cursor: not-allowed;
6
+ }
testable-node.py ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ def wrapper():
2
+ print('wrapper')
3
+ def test():
4
+ # |
5
+ pass
6
+
7
+ # ------------------------------------
8
+
9
+ def test():
10
+ # |
11
+ pass
12
+
13
+ # ------------------------------------
14
+
15
+ def test_parameter(val):
16
+ # |
17
+ wrapper()
18
+
19
+ # ------------------------------------
20
+
21
+ class Agent:
22
+ def __init__(self, name):
23
+ # |
24
+ self.name = name
25
+
26
+ # ------------------------------------
27
+
28
+ class Agent:
29
+ def __init__(self, name):
30
+ self.name = name
31
+
32
+ def test(self):
33
+ # |
34
+ pass
testable-node.snap.py ADDED
@@ -0,0 +1,75 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #
2
+ # | - query start position in the source file.
3
+ # β–ˆ – query start position in the annotated file.
4
+ # ^ – characters matching the last query result.
5
+ #
6
+ # ------------------------------------
7
+
8
+ def wrapper():
9
+ print('wrapper')
10
+ def test():
11
+ # ^ start range.function[1]
12
+ # ^^^^ symbol.function[1]
13
+ # β–ˆ
14
+ pass
15
+ # ^ end range.function[1]
16
+
17
+ # Nodes types:
18
+ # symbol.function[1]: identifier
19
+ # range.function[1]: function_definition
20
+
21
+ # ------------------------------------
22
+
23
+ def test():
24
+ #^ start range.function[1]
25
+ # ^^^^ symbol.function[1]
26
+ # β–ˆ
27
+ pass
28
+ # ^ end range.function[1]
29
+
30
+ # Nodes types:
31
+ # symbol.function[1]: identifier
32
+ # range.function[1]: function_definition
33
+
34
+ # ------------------------------------
35
+
36
+ def test_parameter(val):
37
+ #^ start range.function[1]
38
+ # β–ˆ
39
+ wrapper()
40
+ # ^ end range.function[1]
41
+
42
+ # Nodes types:
43
+ # range.function[1]: function_definition
44
+
45
+ # ------------------------------------
46
+
47
+ class Agent:
48
+ def __init__(self, name):
49
+ # ^ start range.function[1]
50
+ # ^^^^^^^^ symbol.function[1]
51
+ # β–ˆ
52
+ self.name = name
53
+ # ^ end range.function[1]
54
+
55
+ # Nodes types:
56
+ # symbol.function[1]: identifier
57
+ # range.function[1]: function_definition
58
+
59
+ # ------------------------------------
60
+
61
+ class Agent:
62
+ def __init__(self, name):
63
+ self.name = name
64
+
65
+ def test(self):
66
+ # ^ start range.function[1]
67
+ # ^^^^ symbol.function[1]
68
+ # β–ˆ
69
+ pass
70
+ # ^ end range.function[1]
71
+
72
+ # Nodes types:
73
+ # symbol.function[1]: identifier
74
+ # range.function[1]: function_definition
75
+