@desktalk/core 0.1.2 → 0.1.4
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.
- package/dist/frontend/assets/{frontend-BIEc2N7M.js → frontend-BIX1osqf.js} +2 -2
- package/dist/frontend/assets/{frontend-BIEc2N7M.js.map → frontend-BIX1osqf.js.map} +1 -1
- package/dist/frontend/assets/{frontend-BG-YLJqZ.js → frontend-BzdZVdad.js} +2 -2
- package/dist/frontend/assets/{frontend-BG-YLJqZ.js.map → frontend-BzdZVdad.js.map} +1 -1
- package/dist/frontend/assets/{frontend-DHFvbI_u.js → frontend-CNI9ZWUx.js} +2 -2
- package/dist/frontend/assets/{frontend-DHFvbI_u.js.map → frontend-CNI9ZWUx.js.map} +1 -1
- package/dist/frontend/assets/{frontend-BNhxRpOo.js → frontend-CSSNHa7X.js} +2 -2
- package/dist/frontend/assets/{frontend-BNhxRpOo.js.map → frontend-CSSNHa7X.js.map} +1 -1
- package/dist/frontend/assets/{frontend-D9i707Nm.js → frontend-Da6BeHSp.js} +2 -2
- package/dist/frontend/assets/{frontend-D9i707Nm.js.map → frontend-Da6BeHSp.js.map} +1 -1
- package/dist/frontend/assets/{frontend-Dy9eRAQd.js → frontend-f1PcGFgm.js} +67 -25
- package/dist/frontend/assets/frontend-f1PcGFgm.js.map +1 -0
- package/dist/frontend/assets/{frontend-CrQvPdit.js → frontend-zfGj9snS.js} +2 -2
- package/dist/frontend/assets/{frontend-CrQvPdit.js.map → frontend-zfGj9snS.js.map} +1 -1
- package/dist/frontend/assets/{highlighted-body-TPN3WLV5-B8LPaWFP.js → highlighted-body-TPN3WLV5-g134n7tc.js} +2 -2
- package/dist/frontend/assets/{highlighted-body-TPN3WLV5-B8LPaWFP.js.map → highlighted-body-TPN3WLV5-g134n7tc.js.map} +1 -1
- package/dist/frontend/assets/index-AQaNuL08.css +1 -0
- package/dist/frontend/assets/{index-DCZC2uPI.js → index-D4gDxl9-.js} +99 -99
- package/dist/frontend/assets/index-D4gDxl9-.js.map +1 -0
- package/dist/frontend/index.html +2 -2
- package/dist/server/api-routes.d.ts.map +1 -1
- package/dist/server/api-routes.js +88 -7
- package/dist/server/api-routes.js.map +1 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +3 -0
- package/dist/server/index.js.map +1 -1
- package/dist/services/ai/pi-session-service.d.ts +8 -0
- package/dist/services/ai/pi-session-service.d.ts.map +1 -1
- package/dist/services/ai/pi-session-service.js +17 -1
- package/dist/services/ai/pi-session-service.js.map +1 -1
- package/dist/services/ai/providers.d.ts.map +1 -1
- package/dist/services/ai/providers.js +40 -14
- package/dist/services/ai/providers.js.map +1 -1
- package/dist/services/logger.d.ts +2 -2
- package/dist/services/logger.d.ts.map +1 -1
- package/dist/services/logger.js +55 -12
- package/dist/services/logger.js.map +1 -1
- package/package.json +12 -10
- package/dist/frontend/assets/frontend-Dy9eRAQd.js.map +0 -1
- package/dist/frontend/assets/index-BljFdF__.css +0 -1
- package/dist/frontend/assets/index-DCZC2uPI.js.map +0 -1
|
@@ -1,8 +1,19 @@
|
|
|
1
1
|
export const AI_DEFAULT_PROVIDER = 'openai';
|
|
2
|
+
const LEGACY_AI_PROVIDER_IDS = {
|
|
3
|
+
copilot: 'github-copilot',
|
|
4
|
+
};
|
|
5
|
+
function normalizeAiProviderId(provider) {
|
|
6
|
+
return LEGACY_AI_PROVIDER_IDS[provider] ?? provider;
|
|
7
|
+
}
|
|
8
|
+
function getLegacyAiProviderIds(provider) {
|
|
9
|
+
return Object.entries(LEGACY_AI_PROVIDER_IDS)
|
|
10
|
+
.filter(([, canonical]) => canonical === provider)
|
|
11
|
+
.map(([legacy]) => legacy);
|
|
12
|
+
}
|
|
2
13
|
export const AI_PROVIDER_DEFINITIONS = [
|
|
3
14
|
// ─── Subscription (OAuth) providers ────────────────────────────────────
|
|
4
15
|
{
|
|
5
|
-
id: 'copilot',
|
|
16
|
+
id: 'github-copilot',
|
|
6
17
|
label: 'GitHub Copilot',
|
|
7
18
|
authType: 'subscription',
|
|
8
19
|
supportsApiKey: false,
|
|
@@ -147,13 +158,15 @@ export const AI_PROVIDER_DEFINITIONS = [
|
|
|
147
158
|
},
|
|
148
159
|
];
|
|
149
160
|
export function getAiProviderPreferenceKey(provider, field) {
|
|
150
|
-
return `ai.providers.${provider}.${field}`;
|
|
161
|
+
return `ai.providers.${normalizeAiProviderId(provider)}.${field}`;
|
|
151
162
|
}
|
|
152
163
|
export function isKnownAiProvider(provider) {
|
|
153
|
-
|
|
164
|
+
const normalizedProvider = normalizeAiProviderId(provider);
|
|
165
|
+
return AI_PROVIDER_DEFINITIONS.some((entry) => entry.id === normalizedProvider);
|
|
154
166
|
}
|
|
155
167
|
export function getAiProviderDefinition(provider) {
|
|
156
|
-
|
|
168
|
+
const normalizedProvider = normalizeAiProviderId(provider);
|
|
169
|
+
return AI_PROVIDER_DEFINITIONS.find((entry) => entry.id === normalizedProvider);
|
|
157
170
|
}
|
|
158
171
|
export function isSubscriptionProvider(provider) {
|
|
159
172
|
const definition = getAiProviderDefinition(provider);
|
|
@@ -163,19 +176,32 @@ export async function getDefaultAiProvider(getPreference) {
|
|
|
163
176
|
const configured = (await getPreference('ai.defaultProvider')) ??
|
|
164
177
|
(await getPreference('ai.provider')) ??
|
|
165
178
|
AI_DEFAULT_PROVIDER;
|
|
166
|
-
|
|
179
|
+
const normalizedProvider = normalizeAiProviderId(configured);
|
|
180
|
+
return isKnownAiProvider(normalizedProvider) ? normalizedProvider : AI_DEFAULT_PROVIDER;
|
|
167
181
|
}
|
|
168
182
|
export async function getAiProviderPreferences(getPreference, provider) {
|
|
169
|
-
const
|
|
170
|
-
const
|
|
171
|
-
const
|
|
172
|
-
|
|
173
|
-
const
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
183
|
+
const normalizedProvider = normalizeAiProviderId(provider);
|
|
184
|
+
const legacyProvider = normalizeAiProviderId((await getPreference('ai.provider')) ?? AI_DEFAULT_PROVIDER);
|
|
185
|
+
const legacyMatches = legacyProvider === normalizedProvider;
|
|
186
|
+
const providerIds = [normalizedProvider, ...getLegacyAiProviderIds(normalizedProvider)];
|
|
187
|
+
const readProviderField = async (field) => {
|
|
188
|
+
for (const providerId of providerIds) {
|
|
189
|
+
const value = (await getPreference(`ai.providers.${providerId}.${field}`));
|
|
190
|
+
if (value !== undefined) {
|
|
191
|
+
return value;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
if (!legacyMatches) {
|
|
195
|
+
return '';
|
|
196
|
+
}
|
|
197
|
+
const legacyKey = field === 'model' ? 'ai.model' : field === 'apiKey' ? 'ai.apiKey' : 'ai.baseUrl';
|
|
198
|
+
return (await getPreference(legacyKey)) ?? '';
|
|
199
|
+
};
|
|
200
|
+
const model = await readProviderField('model');
|
|
201
|
+
const apiKey = await readProviderField('apiKey');
|
|
202
|
+
const baseUrl = await readProviderField('baseUrl');
|
|
177
203
|
return {
|
|
178
|
-
provider,
|
|
204
|
+
provider: normalizedProvider,
|
|
179
205
|
model,
|
|
180
206
|
apiKey,
|
|
181
207
|
baseUrl,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../src/services/ai/providers.ts"],"names":[],"mappings":"AAiBA,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../src/services/ai/providers.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,8 +10,8 @@ export interface LoggerConfig {
|
|
|
10
10
|
/**
|
|
11
11
|
* Creates the root pino logger.
|
|
12
12
|
*
|
|
13
|
-
* - Dev mode: pretty-printed to stdout via pino-pretty.
|
|
14
|
-
* - Prod mode: structured JSON
|
|
13
|
+
* - Dev mode: pretty-printed to stdout via pino-pretty (debug level).
|
|
14
|
+
* - Prod mode: pretty-printed to stdout + structured JSON to <logDir>/desktalk.log (info level).
|
|
15
15
|
*/
|
|
16
16
|
export declare function createRootLogger(opts: {
|
|
17
17
|
dev: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/services/logger.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/services/logger.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,MAAM,CA+CpF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,CAiDlF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,YAAY,CAMf"}
|
package/dist/services/logger.js
CHANGED
|
@@ -4,8 +4,8 @@ import { mkdirSync, existsSync } from 'node:fs';
|
|
|
4
4
|
/**
|
|
5
5
|
* Creates the root pino logger.
|
|
6
6
|
*
|
|
7
|
-
* - Dev mode: pretty-printed to stdout via pino-pretty.
|
|
8
|
-
* - Prod mode: structured JSON
|
|
7
|
+
* - Dev mode: pretty-printed to stdout via pino-pretty (debug level).
|
|
8
|
+
* - Prod mode: pretty-printed to stdout + structured JSON to <logDir>/desktalk.log (info level).
|
|
9
9
|
*/
|
|
10
10
|
export function createRootLogger(opts) {
|
|
11
11
|
if (opts.dev) {
|
|
@@ -26,11 +26,32 @@ export function createRootLogger(opts) {
|
|
|
26
26
|
if (!existsSync(opts.logDir)) {
|
|
27
27
|
mkdirSync(opts.logDir, { recursive: true });
|
|
28
28
|
}
|
|
29
|
-
return pino({
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
return pino({
|
|
30
|
+
level: 'info',
|
|
31
|
+
transport: {
|
|
32
|
+
targets: [
|
|
33
|
+
{
|
|
34
|
+
target: 'pino-pretty',
|
|
35
|
+
level: 'info',
|
|
36
|
+
options: {
|
|
37
|
+
colorize: true,
|
|
38
|
+
translateTime: 'HH:MM:ss.l',
|
|
39
|
+
ignore: 'pid,hostname',
|
|
40
|
+
singleLine: true,
|
|
41
|
+
destination: 1, // stdout
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
target: 'pino/file',
|
|
46
|
+
level: 'info',
|
|
47
|
+
options: {
|
|
48
|
+
destination: join(opts.logDir, 'desktalk.log'),
|
|
49
|
+
mkdir: true,
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
],
|
|
53
|
+
},
|
|
54
|
+
});
|
|
34
55
|
}
|
|
35
56
|
/**
|
|
36
57
|
* Creates a pino logger in a child process from the serialized config.
|
|
@@ -56,11 +77,33 @@ export function createChildLogger(config, scope) {
|
|
|
56
77
|
if (!existsSync(config.logDir)) {
|
|
57
78
|
mkdirSync(config.logDir, { recursive: true });
|
|
58
79
|
}
|
|
59
|
-
return pino({
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
80
|
+
return pino({
|
|
81
|
+
level: config.level,
|
|
82
|
+
base: { scope },
|
|
83
|
+
transport: {
|
|
84
|
+
targets: [
|
|
85
|
+
{
|
|
86
|
+
target: 'pino-pretty',
|
|
87
|
+
level: 'info',
|
|
88
|
+
options: {
|
|
89
|
+
colorize: true,
|
|
90
|
+
translateTime: 'HH:MM:ss.l',
|
|
91
|
+
ignore: 'pid,hostname',
|
|
92
|
+
singleLine: true,
|
|
93
|
+
destination: 1, // stdout
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
target: 'pino/file',
|
|
98
|
+
level: config.level,
|
|
99
|
+
options: {
|
|
100
|
+
destination: join(config.logDir, 'desktalk.log'),
|
|
101
|
+
mkdir: true,
|
|
102
|
+
},
|
|
103
|
+
},
|
|
104
|
+
],
|
|
105
|
+
},
|
|
106
|
+
});
|
|
64
107
|
}
|
|
65
108
|
/**
|
|
66
109
|
* Extracts a serializable LoggerConfig from a root logger's setup.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/services/logger.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAWhD;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAsC;IACrE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;YACV,KAAK,EAAE,OAAO;YACd,SAAS,EAAE;gBACT,MAAM,EAAE,aAAa;gBACrB,OAAO,EAAE;oBACP,QAAQ,EAAE,IAAI;oBACd,aAAa,EAAE,YAAY;oBAC3B,MAAM,EAAE,cAAc;oBACtB,UAAU,EAAE,IAAI;iBACjB;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED,8BAA8B;IAC9B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,IAAI,
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/services/logger.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@desktalk/core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "DeskTalk application shell, CLI, and backend server.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -49,17 +49,18 @@
|
|
|
49
49
|
"sharp": "^0.34.5",
|
|
50
50
|
"simple-git": "^3.33.0",
|
|
51
51
|
"undici": "^7.24.1",
|
|
52
|
-
"@desktalk/miniapp-file-explorer": "0.1.
|
|
53
|
-
"@desktalk/miniapp-
|
|
54
|
-
"@desktalk/miniapp-
|
|
55
|
-
"@desktalk/miniapp-
|
|
56
|
-
"@desktalk/miniapp-
|
|
57
|
-
"@desktalk/
|
|
58
|
-
"@desktalk/miniapp-
|
|
59
|
-
"@desktalk/
|
|
60
|
-
"@desktalk/ui": "0.1.
|
|
52
|
+
"@desktalk/miniapp-file-explorer": "0.1.4",
|
|
53
|
+
"@desktalk/miniapp-note": "0.1.4",
|
|
54
|
+
"@desktalk/miniapp-player": "0.1.4",
|
|
55
|
+
"@desktalk/miniapp-preference": "0.1.4",
|
|
56
|
+
"@desktalk/miniapp-terminal": "0.1.4",
|
|
57
|
+
"@desktalk/sdk": "0.1.4",
|
|
58
|
+
"@desktalk/miniapp-text-edit": "0.1.4",
|
|
59
|
+
"@desktalk/miniapp-preview": "0.1.4",
|
|
60
|
+
"@desktalk/ui": "0.1.4"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
|
+
"@playwright/test": "^1.55.0",
|
|
63
64
|
"@types/better-sqlite3": "^7.6.13",
|
|
64
65
|
"@types/culori": "^4.0.1",
|
|
65
66
|
"@types/node": "^22.0.0",
|
|
@@ -86,6 +87,7 @@
|
|
|
86
87
|
"dev:backend": "node dist/cli/index.js start --dev",
|
|
87
88
|
"dev:frontend": "vite",
|
|
88
89
|
"clean": "rm -rf dist",
|
|
90
|
+
"e2e:test": "playwright test --config playwright.config.ts",
|
|
89
91
|
"unit:test": "vitest run"
|
|
90
92
|
}
|
|
91
93
|
}
|