sage-agent-internal 0.1.30__py3-none-any.whl → 0.1.31rc0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. sage_agent_internal/__init__.py +16 -0
  2. {sage_agent → sage_agent_internal}/_version.py +1 -1
  3. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/install.json +5 -0
  4. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/package.json +229 -0
  5. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/schemas/sage-agent-internal/package.json.orig +224 -0
  6. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/schemas/sage-agent-internal/plugin.json +101 -0
  7. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/122.3c2c200586e65203b674.js +1 -0
  8. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/220.d384edfd5bbcfda33a2a.js +1 -0
  9. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/262.3fc4ad88e6f8c273d4ad.js +1 -0
  10. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/353.2c285601a208c3735929.js +1 -0
  11. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/363.d6c25400a011b62fbae6.js +1 -0
  12. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/364.c2fb82c6f484097228c6.js +1 -0
  13. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/439.3cb9ac7022c8a6074647.js +1 -0
  14. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/481.96b91d018df31d54d173.js +1 -0
  15. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/553.b7906877d98a62265533.js +2 -0
  16. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/553.b7906877d98a62265533.js.LICENSE.txt +15 -0
  17. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/635.8c395c854aa2b140b668.js +1 -0
  18. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/713.103cb5ae248be385b08a.js +1 -0
  19. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/742.b204789055ded4e07883.js +1 -0
  20. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/747.b8e9485ebcbb3066eb4b.js +1 -0
  21. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/821.b58f29814f5900f1f6f8.js +1 -0
  22. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/833.1509794f6b586558f96c.js +1 -0
  23. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/845.cc2bc80fbfea6d20a396.js +1 -0
  24. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/888.09382cc93a2ad3932b31.js +1 -0
  25. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/973.38ee5148a3908e41c2dd.js +2 -0
  26. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/973.38ee5148a3908e41c2dd.js.LICENSE.txt +1 -0
  27. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/remoteEntry.b4d298844205dc8d9771.js +1 -0
  28. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/style.js +4 -0
  29. sage_agent_internal-0.1.31rc0.data/data/share/jupyter/labextensions/sage-agent-internal/static/third-party-licenses.json +298 -0
  30. {sage_agent_internal-0.1.30.dist-info → sage_agent_internal-0.1.31rc0.dist-info}/METADATA +12 -12
  31. sage_agent_internal-0.1.31rc0.dist-info/RECORD +33 -0
  32. sage_agent_internal-0.1.30.data/data/share/jupyter/labextensions/sage-agent/install.json +0 -5
  33. sage_agent_internal-0.1.30.dist-info/RECORD +0 -6
  34. {sage_agent_internal-0.1.30.dist-info → sage_agent_internal-0.1.31rc0.dist-info}/WHEEL +0 -0
  35. {sage_agent_internal-0.1.30.dist-info → sage_agent_internal-0.1.31rc0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,16 @@
1
+ try:
2
+ from ._version import __version__
3
+ except ImportError:
4
+ # Fallback when using the package in dev mode without installing
5
+ # in editable mode with pip. It is highly recommended to install
6
+ # the package from a stable release or in editable mode: https://pip.pypa.io/en/stable/topics/local-project-installs/#editable-installs
7
+ import warnings
8
+ warnings.warn("Importing 'sage_agent_internal' outside a proper installation.")
9
+ __version__ = "dev"
10
+
11
+
12
+ def _jupyter_labextension_paths():
13
+ return [{
14
+ "src": "labextension",
15
+ "dest": "sage-agent-internal"
16
+ }]
@@ -1,4 +1,4 @@
1
1
  # This file is auto-generated by Hatchling. As such, do not:
2
2
  # - modify
3
3
  # - track in version control e.g. be sure to add to .gitignore
4
- __version__ = VERSION = '0.1.30'
4
+ __version__ = VERSION = '0.1.31rc0'
@@ -0,0 +1,5 @@
1
+ {
2
+ "packageManager": "python",
3
+ "packageName": "sage_agent_internal",
4
+ "uninstallInstructions": "Use your Python package manager (pip, conda, etc.) to uninstall the package sage_agent_internal"
5
+ }
@@ -0,0 +1,229 @@
1
+ {
2
+ "name": "sage-agent-internal",
3
+ "version": "0.1.31-rc0",
4
+ "description": "Sage Agent - Your Jupyter Notebook Assistant",
5
+ "keywords": [
6
+ "jupyter",
7
+ "jupyterlab",
8
+ "jupyterlab-extension"
9
+ ],
10
+ "homepage": "https://github.com/AlpineX-Labs/jupyter-sage-agent-internal",
11
+ "bugs": {
12
+ "url": "https://github.com/AlpineX-Labs/jupyter-sage-agent-internal/issues"
13
+ },
14
+ "license": "BSD-3-Clause",
15
+ "author": {
16
+ "name": "Daniel Schaffield",
17
+ "email": "danielschaffield@gmail.com"
18
+ },
19
+ "files": [
20
+ "lib/**/*.{d.ts,tsx,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf,md}",
21
+ "style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf,md}",
22
+ "src/**/*.{ts,tsx,md}",
23
+ "schema/*.json"
24
+ ],
25
+ "main": "lib/index.js",
26
+ "types": "lib/index.d.ts",
27
+ "style": "style/index.css",
28
+ "repository": {
29
+ "type": "git",
30
+ "url": "https://github.com/AlpineX-Labs/jupyter-sage-agent-internal.git"
31
+ },
32
+ "scripts": {
33
+ "build": "jlpm prebuild && jlpm build:lib && jlpm build:labextension:dev",
34
+ "build:prod": "jlpm prebuild && jlpm clean && jlpm build:lib:prod && jlpm build:labextension",
35
+ "build:labextension": "jlpm prebuild && jupyter labextension build .",
36
+ "build:labextension:dev": "jlpm prebuild && jupyter labextension build --development True .",
37
+ "build:lib": "jlpm prebuild && tsc --sourceMap",
38
+ "build:lib:prod": "jlpm prebuild && tsc",
39
+ "prebuild": "mkdir -p lib/Config/prompts && cp src/Config/prompts/*.md lib/Config/prompts",
40
+ "clean": "jlpm clean:lib",
41
+ "clean:lib": "rimraf lib tsconfig.tsbuildinfo",
42
+ "clean:lintcache": "rimraf .eslintcache .stylelintcache",
43
+ "clean:labextension": "rimraf sage_agent_internal/labextension sage_agent_internal/_version.py",
44
+ "clean:all": "jlpm clean:lib && jlpm clean:labextension && jlpm clean:lintcache",
45
+ "eslint": "jlpm eslint:check --fix",
46
+ "eslint:check": "eslint . --cache --ext .ts,.tsx",
47
+ "install:extension": "jlpm build",
48
+ "lint": "jlpm stylelint && jlpm prettier && jlpm eslint",
49
+ "lint:check": "jlpm stylelint:check && jlpm prettier:check && jlpm eslint:check",
50
+ "prettier": "jlpm prettier:base --write --list-different",
51
+ "prettier:base": "prettier \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"",
52
+ "prettier:check": "jlpm prettier:base --check",
53
+ "stylelint": "jlpm stylelint:check --fix",
54
+ "stylelint:check": "stylelint --cache \"style/**/*.css\"",
55
+ "test": "jest --coverage",
56
+ "watch": "run-p watch:src watch:labextension",
57
+ "watch:src": "tsc -w --sourceMap",
58
+ "watch:labextension": "jupyter labextension watch ."
59
+ },
60
+ "dependencies": {
61
+ "@anthropic-ai/sdk": "^0.54.0",
62
+ "@electric-sql/pglite": "^0.3.6",
63
+ "@google/generative-ai": "^0.24.0",
64
+ "@jupyterlab/application": "^4.0.0",
65
+ "@jupyterlab/extensionmanager": "^4.4.4",
66
+ "@jupyterlab/notebook-extension": "^4.4.0",
67
+ "@jupyterlab/settingregistry": "^4.0.0",
68
+ "@modelcontextprotocol/sdk": "^1.9.0",
69
+ "@types/hogan.js": "^3.0.5",
70
+ "best-effort-json-parser": "^1.1.3",
71
+ "bootstrap": "^5.3.7",
72
+ "chalk": "^4.1.2",
73
+ "codemirror": "^6.0.2",
74
+ "codemirror-merge-alpinex": "^6.10.4",
75
+ "diff": "^8.0.1",
76
+ "diff2html": "^3.4.51",
77
+ "dompurify": "^3.2.5",
78
+ "marked": "^15.0.11",
79
+ "partial-json": "^0.1.7",
80
+ "react-bootstrap": "^2.10.10",
81
+ "readline": "^1.3.0",
82
+ "rxjs": "^7.8.2",
83
+ "textarea-caret": "^3.1.0",
84
+ "uuid": "^11.1.0"
85
+ },
86
+ "devDependencies": {
87
+ "@jupyterlab/builder": "^4.0.0",
88
+ "@jupyterlab/testutils": "^4.0.0",
89
+ "@types/jest": "^29.2.0",
90
+ "@types/json-schema": "^7.0.11",
91
+ "@types/react": "^18.0.26",
92
+ "@types/react-addons-linked-state-mixin": "^0.14.22",
93
+ "@types/textarea-caret": "^3.0.4",
94
+ "@types/uuid": "^10.0.0",
95
+ "@typescript-eslint/eslint-plugin": "^6.1.0",
96
+ "@typescript-eslint/parser": "^6.1.0",
97
+ "css-loader": "^6.7.1",
98
+ "eslint": "^8.36.0",
99
+ "eslint-config-prettier": "^8.8.0",
100
+ "eslint-plugin-prettier": "^5.0.0",
101
+ "jest": "^29.2.0",
102
+ "npm-run-all2": "^7.0.1",
103
+ "prettier": "^3.0.0",
104
+ "raw-loader": "^4.0.2",
105
+ "rimraf": "^5.0.1",
106
+ "source-map-loader": "^1.0.2",
107
+ "style-loader": "^3.3.1",
108
+ "stylelint": "^15.10.1",
109
+ "stylelint-config-recommended": "^13.0.0",
110
+ "stylelint-config-standard": "^34.0.0",
111
+ "stylelint-csstree-validator": "^3.0.0",
112
+ "stylelint-prettier": "^4.0.0",
113
+ "typescript": "~5.0.2",
114
+ "yjs": "^13.5.0"
115
+ },
116
+ "sideEffects": [
117
+ "style/*.css",
118
+ "style/index.js"
119
+ ],
120
+ "styleModule": "style/index.js",
121
+ "publishConfig": {
122
+ "access": "public"
123
+ },
124
+ "jupyterlab": {
125
+ "extension": true,
126
+ "outputDir": "sage_agent_internal/labextension",
127
+ "schemaDir": "schema",
128
+ "_build": {
129
+ "load": "static/remoteEntry.b4d298844205dc8d9771.js",
130
+ "extension": "./extension",
131
+ "style": "./style"
132
+ }
133
+ },
134
+ "eslintIgnore": [
135
+ "node_modules",
136
+ "dist",
137
+ "coverage",
138
+ "**/*.d.ts",
139
+ "tests",
140
+ "**/__tests__",
141
+ "ui-tests"
142
+ ],
143
+ "eslintConfig": {
144
+ "extends": [
145
+ "eslint:recommended",
146
+ "plugin:@typescript-eslint/eslint-recommended",
147
+ "plugin:@typescript-eslint/recommended",
148
+ "plugin:prettier/recommended"
149
+ ],
150
+ "parser": "@typescript-eslint/parser",
151
+ "parserOptions": {
152
+ "project": "tsconfig.json",
153
+ "sourceType": "module"
154
+ },
155
+ "plugins": [
156
+ "@typescript-eslint"
157
+ ],
158
+ "rules": {
159
+ "@typescript-eslint/naming-convention": [
160
+ "error",
161
+ {
162
+ "selector": "interface",
163
+ "format": [
164
+ "PascalCase"
165
+ ],
166
+ "custom": {
167
+ "regex": "^I[A-Z]",
168
+ "match": true
169
+ }
170
+ }
171
+ ],
172
+ "@typescript-eslint/no-unused-vars": [
173
+ "warn",
174
+ {
175
+ "args": "none"
176
+ }
177
+ ],
178
+ "@typescript-eslint/no-explicit-any": "off",
179
+ "@typescript-eslint/no-namespace": "off",
180
+ "@typescript-eslint/no-use-before-define": "off",
181
+ "@typescript-eslint/quotes": [
182
+ "error",
183
+ "single",
184
+ {
185
+ "avoidEscape": true,
186
+ "allowTemplateLiterals": false
187
+ }
188
+ ],
189
+ "curly": [
190
+ "error",
191
+ "all"
192
+ ],
193
+ "eqeqeq": "error",
194
+ "prefer-arrow-callback": "error",
195
+ "@typescript-eslint/no-floating-promises": "error"
196
+ }
197
+ },
198
+ "prettier": {
199
+ "singleQuote": true,
200
+ "trailingComma": "none",
201
+ "arrowParens": "avoid",
202
+ "endOfLine": "auto",
203
+ "overrides": [
204
+ {
205
+ "files": "package.json",
206
+ "options": {
207
+ "tabWidth": 4
208
+ }
209
+ }
210
+ ]
211
+ },
212
+ "stylelint": {
213
+ "extends": [
214
+ "stylelint-config-recommended",
215
+ "stylelint-config-standard",
216
+ "stylelint-prettier/recommended"
217
+ ],
218
+ "plugins": [
219
+ "stylelint-csstree-validator"
220
+ ],
221
+ "rules": {
222
+ "csstree/validator": true,
223
+ "property-no-vendor-prefix": null,
224
+ "selector-class-pattern": "^([a-z][A-z\\d]*)(-[A-z\\d]+)*$",
225
+ "selector-no-vendor-prefix": null,
226
+ "value-no-vendor-prefix": null
227
+ }
228
+ }
229
+ }
@@ -0,0 +1,224 @@
1
+ {
2
+ "name": "sage-agent-internal",
3
+ "version": "0.1.31-rc0",
4
+ "description": "Sage Agent - Your Jupyter Notebook Assistant",
5
+ "keywords": [
6
+ "jupyter",
7
+ "jupyterlab",
8
+ "jupyterlab-extension"
9
+ ],
10
+ "homepage": "https://github.com/AlpineX-Labs/jupyter-sage-agent-internal",
11
+ "bugs": {
12
+ "url": "https://github.com/AlpineX-Labs/jupyter-sage-agent-internal/issues"
13
+ },
14
+ "license": "BSD-3-Clause",
15
+ "author": {
16
+ "name": "Daniel Schaffield",
17
+ "email": "danielschaffield@gmail.com"
18
+ },
19
+ "files": [
20
+ "lib/**/*.{d.ts,tsx,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf,md}",
21
+ "style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf,md}",
22
+ "src/**/*.{ts,tsx,md}",
23
+ "schema/*.json"
24
+ ],
25
+ "main": "lib/index.js",
26
+ "types": "lib/index.d.ts",
27
+ "style": "style/index.css",
28
+ "repository": {
29
+ "type": "git",
30
+ "url": "https://github.com/AlpineX-Labs/jupyter-sage-agent-internal.git"
31
+ },
32
+ "scripts": {
33
+ "build": "jlpm prebuild && jlpm build:lib && jlpm build:labextension:dev",
34
+ "build:prod": "jlpm prebuild && jlpm clean && jlpm build:lib:prod && jlpm build:labextension",
35
+ "build:labextension": "jlpm prebuild && jupyter labextension build .",
36
+ "build:labextension:dev": "jlpm prebuild && jupyter labextension build --development True .",
37
+ "build:lib": "jlpm prebuild && tsc --sourceMap",
38
+ "build:lib:prod": "jlpm prebuild && tsc",
39
+ "prebuild": "mkdir -p lib/Config/prompts && cp src/Config/prompts/*.md lib/Config/prompts",
40
+ "clean": "jlpm clean:lib",
41
+ "clean:lib": "rimraf lib tsconfig.tsbuildinfo",
42
+ "clean:lintcache": "rimraf .eslintcache .stylelintcache",
43
+ "clean:labextension": "rimraf sage_agent_internal/labextension sage_agent_internal/_version.py",
44
+ "clean:all": "jlpm clean:lib && jlpm clean:labextension && jlpm clean:lintcache",
45
+ "eslint": "jlpm eslint:check --fix",
46
+ "eslint:check": "eslint . --cache --ext .ts,.tsx",
47
+ "install:extension": "jlpm build",
48
+ "lint": "jlpm stylelint && jlpm prettier && jlpm eslint",
49
+ "lint:check": "jlpm stylelint:check && jlpm prettier:check && jlpm eslint:check",
50
+ "prettier": "jlpm prettier:base --write --list-different",
51
+ "prettier:base": "prettier \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"",
52
+ "prettier:check": "jlpm prettier:base --check",
53
+ "stylelint": "jlpm stylelint:check --fix",
54
+ "stylelint:check": "stylelint --cache \"style/**/*.css\"",
55
+ "test": "jest --coverage",
56
+ "watch": "run-p watch:src watch:labextension",
57
+ "watch:src": "tsc -w --sourceMap",
58
+ "watch:labextension": "jupyter labextension watch ."
59
+ },
60
+ "dependencies": {
61
+ "@anthropic-ai/sdk": "^0.54.0",
62
+ "@electric-sql/pglite": "^0.3.6",
63
+ "@google/generative-ai": "^0.24.0",
64
+ "@jupyterlab/application": "^4.0.0",
65
+ "@jupyterlab/extensionmanager": "^4.4.4",
66
+ "@jupyterlab/notebook-extension": "^4.4.0",
67
+ "@jupyterlab/settingregistry": "^4.0.0",
68
+ "@modelcontextprotocol/sdk": "^1.9.0",
69
+ "@types/hogan.js": "^3.0.5",
70
+ "best-effort-json-parser": "^1.1.3",
71
+ "bootstrap": "^5.3.7",
72
+ "chalk": "^4.1.2",
73
+ "codemirror": "^6.0.2",
74
+ "codemirror-merge-alpinex": "^6.10.4",
75
+ "diff": "^8.0.1",
76
+ "diff2html": "^3.4.51",
77
+ "dompurify": "^3.2.5",
78
+ "marked": "^15.0.11",
79
+ "partial-json": "^0.1.7",
80
+ "react-bootstrap": "^2.10.10",
81
+ "readline": "^1.3.0",
82
+ "rxjs": "^7.8.2",
83
+ "textarea-caret": "^3.1.0",
84
+ "uuid": "^11.1.0"
85
+ },
86
+ "devDependencies": {
87
+ "@jupyterlab/builder": "^4.0.0",
88
+ "@jupyterlab/testutils": "^4.0.0",
89
+ "@types/jest": "^29.2.0",
90
+ "@types/json-schema": "^7.0.11",
91
+ "@types/react": "^18.0.26",
92
+ "@types/react-addons-linked-state-mixin": "^0.14.22",
93
+ "@types/textarea-caret": "^3.0.4",
94
+ "@types/uuid": "^10.0.0",
95
+ "@typescript-eslint/eslint-plugin": "^6.1.0",
96
+ "@typescript-eslint/parser": "^6.1.0",
97
+ "css-loader": "^6.7.1",
98
+ "eslint": "^8.36.0",
99
+ "eslint-config-prettier": "^8.8.0",
100
+ "eslint-plugin-prettier": "^5.0.0",
101
+ "jest": "^29.2.0",
102
+ "npm-run-all2": "^7.0.1",
103
+ "prettier": "^3.0.0",
104
+ "raw-loader": "^4.0.2",
105
+ "rimraf": "^5.0.1",
106
+ "source-map-loader": "^1.0.2",
107
+ "style-loader": "^3.3.1",
108
+ "stylelint": "^15.10.1",
109
+ "stylelint-config-recommended": "^13.0.0",
110
+ "stylelint-config-standard": "^34.0.0",
111
+ "stylelint-csstree-validator": "^3.0.0",
112
+ "stylelint-prettier": "^4.0.0",
113
+ "typescript": "~5.0.2",
114
+ "yjs": "^13.5.0"
115
+ },
116
+ "sideEffects": [
117
+ "style/*.css",
118
+ "style/index.js"
119
+ ],
120
+ "styleModule": "style/index.js",
121
+ "publishConfig": {
122
+ "access": "public"
123
+ },
124
+ "jupyterlab": {
125
+ "extension": true,
126
+ "outputDir": "sage_agent_internal/labextension",
127
+ "schemaDir": "schema"
128
+ },
129
+ "eslintIgnore": [
130
+ "node_modules",
131
+ "dist",
132
+ "coverage",
133
+ "**/*.d.ts",
134
+ "tests",
135
+ "**/__tests__",
136
+ "ui-tests"
137
+ ],
138
+ "eslintConfig": {
139
+ "extends": [
140
+ "eslint:recommended",
141
+ "plugin:@typescript-eslint/eslint-recommended",
142
+ "plugin:@typescript-eslint/recommended",
143
+ "plugin:prettier/recommended"
144
+ ],
145
+ "parser": "@typescript-eslint/parser",
146
+ "parserOptions": {
147
+ "project": "tsconfig.json",
148
+ "sourceType": "module"
149
+ },
150
+ "plugins": [
151
+ "@typescript-eslint"
152
+ ],
153
+ "rules": {
154
+ "@typescript-eslint/naming-convention": [
155
+ "error",
156
+ {
157
+ "selector": "interface",
158
+ "format": [
159
+ "PascalCase"
160
+ ],
161
+ "custom": {
162
+ "regex": "^I[A-Z]",
163
+ "match": true
164
+ }
165
+ }
166
+ ],
167
+ "@typescript-eslint/no-unused-vars": [
168
+ "warn",
169
+ {
170
+ "args": "none"
171
+ }
172
+ ],
173
+ "@typescript-eslint/no-explicit-any": "off",
174
+ "@typescript-eslint/no-namespace": "off",
175
+ "@typescript-eslint/no-use-before-define": "off",
176
+ "@typescript-eslint/quotes": [
177
+ "error",
178
+ "single",
179
+ {
180
+ "avoidEscape": true,
181
+ "allowTemplateLiterals": false
182
+ }
183
+ ],
184
+ "curly": [
185
+ "error",
186
+ "all"
187
+ ],
188
+ "eqeqeq": "error",
189
+ "prefer-arrow-callback": "error",
190
+ "@typescript-eslint/no-floating-promises": "error"
191
+ }
192
+ },
193
+ "prettier": {
194
+ "singleQuote": true,
195
+ "trailingComma": "none",
196
+ "arrowParens": "avoid",
197
+ "endOfLine": "auto",
198
+ "overrides": [
199
+ {
200
+ "files": "package.json",
201
+ "options": {
202
+ "tabWidth": 4
203
+ }
204
+ }
205
+ ]
206
+ },
207
+ "stylelint": {
208
+ "extends": [
209
+ "stylelint-config-recommended",
210
+ "stylelint-config-standard",
211
+ "stylelint-prettier/recommended"
212
+ ],
213
+ "plugins": [
214
+ "stylelint-csstree-validator"
215
+ ],
216
+ "rules": {
217
+ "csstree/validator": true,
218
+ "property-no-vendor-prefix": null,
219
+ "selector-class-pattern": "^([a-z][A-z\\d]*)(-[A-z\\d]+)*$",
220
+ "selector-no-vendor-prefix": null,
221
+ "value-no-vendor-prefix": null
222
+ }
223
+ }
224
+ }
@@ -0,0 +1,101 @@
1
+ {
2
+ "jupyter.lab.shortcuts": [],
3
+ "jupyter.lab.setting-icon": "ui-components:settings",
4
+ "jupyter.lab.setting-icon-label": "Sage AI Settings",
5
+ "jupyter.lab.toolbars": {
6
+ "Cell": [
7
+ {
8
+ "name": "sage-ai-add-to-context",
9
+ "rank": 100
10
+ }
11
+ ]
12
+ },
13
+ "title": "Sage AI",
14
+ "description": "Settings for Sage AI",
15
+ "type": "object",
16
+ "properties": {
17
+ "defaultService": {
18
+ "type": "string",
19
+ "title": "Default AI Service",
20
+ "description": "The default AI service to use (anthropic or gemini)",
21
+ "default": "anthropic",
22
+ "enum": ["anthropic", "gemini"]
23
+ },
24
+ "apiKey": {
25
+ "type": "string",
26
+ "title": "Anthropic API Key",
27
+ "description": "API key for Anthropic AI services",
28
+ "default": ""
29
+ },
30
+ "modelName": {
31
+ "type": "string",
32
+ "title": "Model Name",
33
+ "description": "The name of the Anthropic model to use",
34
+ "default": "claude-3-5-sonnet-20241022"
35
+ },
36
+ "darkThemeApplied": {
37
+ "type": "boolean",
38
+ "title": "Dark Theme Applied",
39
+ "description": "Whether the dark theme has been applied on first load",
40
+ "default": false
41
+ },
42
+ "updateDeclinedVersion": {
43
+ "type": "string",
44
+ "title": "Update Declined Version",
45
+ "description": "Version declined",
46
+ "default": ""
47
+ },
48
+ "chatHistories": {
49
+ "type": "object",
50
+ "title": "Chat Histories",
51
+ "description": "Stored chat histories for notebooks",
52
+ "default": {}
53
+ },
54
+ "codebases": {
55
+ "type": "array",
56
+ "title": "Codebases",
57
+ "description": "List of configured codebases for AI search",
58
+ "default": [],
59
+ "items": {
60
+ "type": "object",
61
+ "properties": {
62
+ "id": {"type": "string"},
63
+ "path": {"type": "string"},
64
+ "name": {"type": "string"},
65
+ "instructions": {"type": "string"}
66
+ }
67
+ }
68
+ },
69
+ "sageTokenMode": {
70
+ "type": "boolean",
71
+ "title": "Sage Token Mode",
72
+ "description": "Whether to use Sage token mode for authentication",
73
+ "default": false
74
+ },
75
+ "claudeApiKey": {
76
+ "type": "string",
77
+ "title": "Claude API Key",
78
+ "description": "API key for Claude AI services",
79
+ "default": ""
80
+ },
81
+ "claudeModelId": {
82
+ "type": "string",
83
+ "title": "Claude Model ID",
84
+ "description": "The ID of the Claude model to use",
85
+ "default": "claude-sonnet-4-20250514"
86
+ },
87
+ "claudeModelUrl": {
88
+ "type": "string",
89
+ "title": "Claude Model URL",
90
+ "description": "The URL endpoint for Claude API",
91
+ "default": "https://sage.alpinex.ai:8760"
92
+ },
93
+ "databaseUrl": {
94
+ "type": "string",
95
+ "title": "Database URL",
96
+ "description": "Database connection URL",
97
+ "default": ""
98
+ }
99
+ },
100
+ "additionalProperties": false
101
+ }