-
Notifications
You must be signed in to change notification settings - Fork 1
/
package.json
139 lines (139 loc) · 5.46 KB
/
package.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
{
"name": "bot-typist",
"publisher": "skybrian",
"repository": "github:skybrian/bot-typist",
"displayName": "Bot Typist",
"description": "Chat with an AI bot in a Jupyter notebook",
"version": "0.4.0",
"engines": {
"vscode": "^1.82.0"
},
"categories": [
"Other"
],
"main": "./out/extension.js",
"contributes": {
"configuration": {
"title": "Bot Typist",
"properties": {
"bot-typist.cue": {
"order": 1,
"type": "string",
"default": "🤖",
"scope": "language-overridable",
"markdownDescription": "A label that will automatically be added before the bot's response in each markdown cell."
},
"bot-typist.llm.path": {
"order": 2,
"type": "string",
"default": "llm",
"scope": "language-overridable",
"markdownDescription": "Path to the `llm` command to use. To install this command, see the [LLM Documentation](https://llm.datasette.io/en/stable/setup.html)"
},
"bot-typist.llm.systemPrompt": {
"order": 3,
"type": "string",
"editPresentation": "multilineText",
"default": "You are a helpful AI assistant that's participating in a conversation in a Jupyter notebook.\n\nYou can see any cells from the conversation so far.",
"scope": "language-overridable",
"markdownDescription": "If set, overrides the system prompt sent to `llm`."
},
"bot-typist.llm.model": {
"order": 4,
"type": "string",
"default": "",
"scope": "language-overridable",
"markdownDescription": "The name of the model that the `llm` command should use. (See [LLM's usage documentation](https://llm.datasette.io/en/stable/usage.html).)"
},
"bot-typist.llm.stop": {
"order": 5,
"type": "string",
"editPresentation": "multilineText",
"default": "\n%output\n",
"scope": "language-overridable",
"markdownDescription": "If the bot writes this string, its response will be cut off. (See [article](https://help.openai.com/en/articles/5072263-how-do-i-use-stop-sequences).)"
},
"bot-typist.llm.extraArguments": {
"order": 6,
"type": "array",
"items": {
"type": "string"
},
"default": [],
"scope": "language-overridable",
"markdownDescription": "Any additional arguments to pass to `llm`."
}
}
},
"configurationDefaults": {
"[python]": {
"bot-typist.llm.systemPrompt": "You are a helpful AI assistant that's participating in a conversation in a Jupyter notebook.\n\nYou can see any Markdown and Python cells from the conversation so far, indicated by #markdown and #python. If the user executed a Python cell, each cell output will follow it, indicated by #output.\n\nYou can reply using Markdown. Python code blocks should contain real Python code that will run without errors. They will be converted into Python cells and executed when the user chooses.\n\nTo display an image, write Python code that evaluates to an image object. The image will appear as a cell output."
},
"[typescript]": {
"bot-typist.llm.systemPrompt": "You are a helpful AI assistant that's participating in a conversation in a Jupyter notebook.\n\nYou can see any Markdown and TypeScript cells from the conversation so far, indicated by #markdown and #typescript. If the user executed a TypeScript cell, each cell output will follow it, indicated by #output.\n\nYou can reply using Markdown. TypeScript code blocks should contain real TypeScript code that will run without errors. They will be converted into TypeScript cells and executed when the user chooses."
}
},
"commands": [
{
"command": "bot-typist.create-jupyter-notebook",
"title": "New Jupyter Notebook (for chat)",
"category": "Create"
},
{
"command": "bot-typist.insert-reply",
"title": "Insert Bot Reply Below"
},
{
"command": "bot-typist.show-prompt",
"title": "Show Bot Prompt",
"category": "Developer"
}
],
"keybindings": [
{
"command": "bot-typist.insert-reply",
"key": "ctrl+alt-enter",
"when": "editorFocus && notebookEditorFocused"
},
{
"command": "bot-typist.insert-reply",
"key": "cmd-enter",
"when": "editorFocus && notebookEditorFocused"
}
],
"menus": {
"notebook/cell/title": [
{
"command": "bot-typist.insert-reply",
"when": "editorFocus && notebookEditorFocused",
"group": "2_insert@1000"
}
]
}
},
"scripts": {
"vscode:prepublish": "npm run compile",
"compile": "tsc -p ./",
"watch": "tsc -watch -p ./",
"pretest": "npm run compile && npm run lint",
"lint": "eslint src --ext ts",
"mocha": "mocha -r ts-node/register ./src/test/node/*.test.ts",
"test": "node ./out/test/runTest.js"
},
"devDependencies": {
"@types/glob": "^8.1.0",
"@types/mocha": "^10.0.1",
"@types/node": "20.2.5",
"@types/vscode": "^1.81.0",
"@typescript-eslint/eslint-plugin": "^5.59.8",
"@typescript-eslint/parser": "^5.59.8",
"@vscode/test-electron": "^2.3.2",
"eslint": "^8.41.0",
"expect": "^29.6.4",
"fast-check": "^3.12.0",
"glob": "^8.1.0",
"mocha": "^10.2.0",
"ts-node": "^10.9.1",
"typescript": "^5.1.3"
}
}