tianxincode 1.0.46 → 1.0.47
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/config/tx.config.d.ts +0 -4
- package/dist/config/tx.config.d.ts.map +1 -1
- package/dist/config/tx.config.js +39 -3
- package/dist/config/tx.config.js.map +1 -1
- package/dist/entity/tx-config.entity.d.ts +0 -1
- package/dist/entity/tx-config.entity.d.ts.map +1 -1
- package/dist/modules/logger/logger.d.ts.map +1 -1
- package/dist/modules/logger/logger.js +20 -1
- package/dist/modules/logger/logger.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,10 +5,6 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { TxConfig } from '../entity/tx-config.entity.js';
|
|
7
7
|
export type { ContextConfig, TxConfig } from '../entity/tx-config.entity.js';
|
|
8
|
-
/**
|
|
9
|
-
* TxCode 默认配置
|
|
10
|
-
* 这是应用程序的默认配置,可以在运行时通过其他方式覆盖
|
|
11
|
-
*/
|
|
12
8
|
declare const config: TxConfig;
|
|
13
9
|
export default config;
|
|
14
10
|
export declare function getSongbingApiBaseUrl(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx.config.d.ts","sourceRoot":"","sources":["../../src/config/tx.config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"tx.config.d.ts","sourceRoot":"","sources":["../../src/config/tx.config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAiD7E,QAAA,MAAM,MAAM,EAAE,QAiBb,CAAC;AAEF,eAAe,MAAM,CAAC;AAEtB,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C"}
|
package/dist/config/tx.config.js
CHANGED
|
@@ -3,11 +3,30 @@
|
|
|
3
3
|
* 此文件定义了 TxCode 项目的全局配置接口和默认配置
|
|
4
4
|
* 主要用于控制应用程序的基本行为,如调试模式和日志记录
|
|
5
5
|
*/
|
|
6
|
+
import * as fs from 'fs';
|
|
7
|
+
import * as path from 'path';
|
|
8
|
+
import * as os from 'os';
|
|
9
|
+
function getUserConfigPath() {
|
|
10
|
+
const home = os.homedir();
|
|
11
|
+
return path.join(home, '.txcode', 'txcode.json');
|
|
12
|
+
}
|
|
13
|
+
function loadUserConfig() {
|
|
14
|
+
const configPath = getUserConfigPath();
|
|
15
|
+
if (!fs.existsSync(configPath))
|
|
16
|
+
return null;
|
|
17
|
+
try {
|
|
18
|
+
const raw = fs.readFileSync(configPath, 'utf-8');
|
|
19
|
+
return JSON.parse(raw);
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
6
25
|
/**
|
|
7
26
|
* TxCode 默认配置
|
|
8
27
|
* 这是应用程序的默认配置,可以在运行时通过其他方式覆盖
|
|
9
28
|
*/
|
|
10
|
-
const
|
|
29
|
+
const defaults = {
|
|
11
30
|
debug: false,
|
|
12
31
|
log: {
|
|
13
32
|
enabled: false,
|
|
@@ -16,11 +35,9 @@ const config = {
|
|
|
16
35
|
},
|
|
17
36
|
maxToolIterations: 50,
|
|
18
37
|
ai: {
|
|
19
|
-
maxContextTokens: 150000,
|
|
20
38
|
context: {
|
|
21
39
|
mode: 'fixed',
|
|
22
40
|
maxTokens: 150000,
|
|
23
|
-
//maxTokens: 8000,
|
|
24
41
|
percentage: 0.95,
|
|
25
42
|
autoCompact: true,
|
|
26
43
|
},
|
|
@@ -29,6 +46,25 @@ const config = {
|
|
|
29
46
|
platformUrl: 'https://ai.songbingcloud.com',
|
|
30
47
|
},
|
|
31
48
|
};
|
|
49
|
+
const userConfig = loadUserConfig();
|
|
50
|
+
const config = {
|
|
51
|
+
debug: defaults.debug,
|
|
52
|
+
log: {
|
|
53
|
+
enabled: userConfig?.log?.enabled ?? defaults.log.enabled,
|
|
54
|
+
dir: defaults.log.dir,
|
|
55
|
+
accessLog: defaults.log.accessLog,
|
|
56
|
+
},
|
|
57
|
+
maxToolIterations: userConfig?.maxToolIterations ?? defaults.maxToolIterations,
|
|
58
|
+
ai: {
|
|
59
|
+
context: {
|
|
60
|
+
mode: defaults.ai.context.mode,
|
|
61
|
+
maxTokens: userConfig?.ai?.context?.maxTokens ?? defaults.ai.context.maxTokens,
|
|
62
|
+
percentage: defaults.ai.context.percentage,
|
|
63
|
+
autoCompact: defaults.ai.context.autoCompact,
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
songbing: defaults.songbing,
|
|
67
|
+
};
|
|
32
68
|
export default config;
|
|
33
69
|
export function getSongbingApiBaseUrl() {
|
|
34
70
|
return config.songbing?.platformUrl + '/api/v1';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx.config.js","sourceRoot":"","sources":["../../src/config/tx.config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"tx.config.js","sourceRoot":"","sources":["../../src/config/tx.config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAIzB,SAAS,iBAAiB;IACxB,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,cAAc;IACrB,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;IACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAsB,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,QAAQ,GAAa;IACzB,KAAK,EAAE,KAAK;IAEZ,GAAG,EAAE;QACH,OAAO,EAAE,KAAK;QACd,GAAG,EAAE,KAAK;QACV,SAAS,EAAE,YAAY;KACxB;IAED,iBAAiB,EAAE,EAAE;IAErB,EAAE,EAAE;QACF,OAAO,EAAE;YACP,IAAI,EAAE,OAAO;YACb,SAAS,EAAE,MAAM;YACjB,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,IAAI;SAClB;KACF;IAED,QAAQ,EAAE;QACR,WAAW,EAAE,8BAA8B;KAC5C;CACF,CAAC;AAEF,MAAM,UAAU,GAAG,cAAc,EAAE,CAAC;AAEpC,MAAM,MAAM,GAAa;IACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;IACrB,GAAG,EAAE;QACH,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO;QACzD,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG;QACrB,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,SAAS;KAClC;IACD,iBAAiB,EAAE,UAAU,EAAE,iBAAiB,IAAI,QAAQ,CAAC,iBAAiB;IAC9E,EAAE,EAAE;QACF,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI;YAC9B,SAAS,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,IAAI,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS;YAC9E,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU;YAC1C,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW;SAC7C;KACF;IACD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;CAC5B,CAAC;AAEF,eAAe,MAAM,CAAC;AAEtB,MAAM,UAAU,qBAAqB;IACnC,OAAO,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,CAAC;AAClD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx-config.entity.d.ts","sourceRoot":"","sources":["../../src/entity/tx-config.entity.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,OAAO,GAAG,YAAY,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,OAAO,CAAC;IAEf,GAAG,EAAE;QACH,OAAO,EAAE,OAAO,CAAC;QACjB,GAAG,EAAE,MAAM,CAAC;QACZ,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAEF,iBAAiB,EAAE,MAAM,CAAC;IAE1B,EAAE,EAAE;QACF,
|
|
1
|
+
{"version":3,"file":"tx-config.entity.d.ts","sourceRoot":"","sources":["../../src/entity/tx-config.entity.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,OAAO,GAAG,YAAY,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,OAAO,CAAC;IAEf,GAAG,EAAE;QACH,OAAO,EAAE,OAAO,CAAC;QACjB,GAAG,EAAE,MAAM,CAAC;QACZ,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAEF,iBAAiB,EAAE,MAAM,CAAC;IAE1B,EAAE,EAAE;QACF,OAAO,EAAE,aAAa,CAAC;KACxB,CAAC;IAEF,QAAQ,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/modules/logger/logger.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/modules/logger/logger.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAqBH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,GAAG,UAAU,CAAC;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,GAAG,CAAC;CACX;AAED,cAAM,MAAM;IACV,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAU;;IAQzB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,UAAU;IAIlB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI;IAaxC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI;IAazC,OAAO,CAAC,SAAS;CAWlB;AAED,eAAO,MAAM,MAAM,QAAe,CAAC"}
|
|
@@ -8,6 +8,21 @@
|
|
|
8
8
|
import * as fs from 'fs';
|
|
9
9
|
import * as path from 'path';
|
|
10
10
|
import config from '../../config/tx.config.js';
|
|
11
|
+
function stripTools(obj) {
|
|
12
|
+
if (Array.isArray(obj)) {
|
|
13
|
+
return obj.map(stripTools);
|
|
14
|
+
}
|
|
15
|
+
if (obj !== null && typeof obj === 'object') {
|
|
16
|
+
const cleaned = {};
|
|
17
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
18
|
+
if (key === 'tools')
|
|
19
|
+
continue;
|
|
20
|
+
cleaned[key] = stripTools(value);
|
|
21
|
+
}
|
|
22
|
+
return cleaned;
|
|
23
|
+
}
|
|
24
|
+
return obj;
|
|
25
|
+
}
|
|
11
26
|
class Logger {
|
|
12
27
|
constructor() {
|
|
13
28
|
this.enabled = config.log.enabled;
|
|
@@ -49,7 +64,11 @@ class Logger {
|
|
|
49
64
|
appendLog(entry) {
|
|
50
65
|
const logPath = this.getLogPath();
|
|
51
66
|
const separator = '\n' + '='.repeat(80) + '\n';
|
|
52
|
-
const
|
|
67
|
+
const cleanEntry = {
|
|
68
|
+
...entry,
|
|
69
|
+
data: stripTools(entry.data),
|
|
70
|
+
};
|
|
71
|
+
const logLine = separator + JSON.stringify(cleanEntry, null, 2) + '\n';
|
|
53
72
|
fs.appendFileSync(logPath, logLine, 'utf-8');
|
|
54
73
|
}
|
|
55
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/modules/logger/logger.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,MAAM,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/modules/logger/logger.ts"],"names":[],"mappings":"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"}
|