vault-forge 2.0.7 → 2.0.9
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/commands/init.js +1 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/config/text.js +1 -1
- package/dist/config/text.js.map +1 -1
- package/dist/index.js +0 -0
- package/dist/lib/mainAction.js +1 -1
- package/dist/lib/mainAction.js.map +1 -1
- package/dist/services/ConfigService.d.ts +7 -0
- package/dist/services/ConfigService.d.ts.map +1 -1
- package/dist/services/ConfigService.js +17 -4
- package/dist/services/ConfigService.js.map +1 -1
- package/dist/templates/defaultPrompt.d.ts.map +1 -1
- package/dist/templates/defaultPrompt.js +6 -0
- package/dist/templates/defaultPrompt.js.map +1 -1
- package/package.json +2 -2
- package/dist/actions/dummy.d.ts +0 -2
- package/dist/actions/dummy.d.ts.map +0 -1
- package/dist/actions/dummy.js +0 -3
- package/dist/actions/dummy.js.map +0 -1
- package/dist/actions/mainAction.d.ts +0 -5
- package/dist/actions/mainAction.d.ts.map +0 -1
- package/dist/actions/mainAction.js +0 -68
- package/dist/actions/mainAction.js.map +0 -1
- package/dist/commands/ask.d.ts +0 -3
- package/dist/commands/ask.d.ts.map +0 -1
- package/dist/commands/ask.js +0 -15
- package/dist/commands/ask.js.map +0 -1
- package/dist/commands/dummy.d.ts +0 -2
- package/dist/commands/dummy.d.ts.map +0 -1
- package/dist/commands/dummy.js +0 -3
- package/dist/commands/dummy.js.map +0 -1
- package/dist/commands/find.d.ts +0 -2
- package/dist/commands/find.d.ts.map +0 -1
- package/dist/commands/find.js +0 -3
- package/dist/commands/find.js.map +0 -1
- package/dist/core/PromptLoader.d.ts +0 -30
- package/dist/core/PromptLoader.d.ts.map +0 -1
- package/dist/core/PromptLoader.js +0 -187
- package/dist/core/PromptLoader.js.map +0 -1
- package/dist/lib/completion.d.ts +0 -8
- package/dist/lib/completion.d.ts.map +0 -1
- package/dist/lib/completion.js +0 -55
- package/dist/lib/completion.js.map +0 -1
- package/dist/lib/dummy.d.ts +0 -2
- package/dist/lib/dummy.d.ts.map +0 -1
- package/dist/lib/dummy.js +0 -3
- package/dist/lib/dummy.js.map +0 -1
- package/dist/services/AIModelService.d.ts +0 -33
- package/dist/services/AIModelService.d.ts.map +0 -1
- package/dist/services/AIModelService.js +0 -116
- package/dist/services/AIModelService.js.map +0 -1
- package/dist/strategies/SearchStrategy.d.ts +0 -19
- package/dist/strategies/SearchStrategy.d.ts.map +0 -1
- package/dist/strategies/SearchStrategy.js +0 -112
- package/dist/strategies/SearchStrategy.js.map +0 -1
- package/dist/templates/completion.bash +0 -24
- package/dist/utils/completion.d.ts +0 -8
- package/dist/utils/completion.d.ts.map +0 -1
- package/dist/utils/completion.js +0 -58
- package/dist/utils/completion.js.map +0 -1
- package/dist/utils/dummy.d.ts +0 -2
- package/dist/utils/dummy.d.ts.map +0 -1
- package/dist/utils/dummy.js +0 -3
- package/dist/utils/dummy.js.map +0 -1
package/dist/commands/init.js
CHANGED
|
@@ -10,7 +10,7 @@ export function registerInitCommand(program) {
|
|
|
10
10
|
.description(TEXT.commands.init.description)
|
|
11
11
|
.action(async () => {
|
|
12
12
|
const configService = new ConfigService();
|
|
13
|
-
if (!configService.
|
|
13
|
+
if (!configService.isConfigured()) {
|
|
14
14
|
console.error(TEXT.errors.envMissing);
|
|
15
15
|
process.exit(1);
|
|
16
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAChD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;SAClB,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;SAC3C,MAAM,CAAC,KAAK,IAAI,EAAE;QAEf,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,IAAI,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAChD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;SAClB,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;SAC3C,MAAM,CAAC,KAAK,IAAI,EAAE;QAEf,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,EAAE,CAAC;YAChC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;aAAM,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,EAAE,CAAC;YACvC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,MAAM,MAAM,GAAqB;YAC7B,SAAS,EAAE,aAAa,CAAC,SAAS;YAClC,SAAS,EAAE,EAAE;YACb,IAAI,EAAE,OAAO,CAAC,IAAI;SACrB,CAAC;QAEF,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;QAEhB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,MAAM,qBAAqB,GAAG,MAAM,OAAO,CAAC;YACxC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,sBAAsB;SAC1C,CAAC,CAAC;QAEH,IAAI,qBAAqB,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;YAElD,IAAI,CAAC;gBACD,MAAM,MAAM,CAAC,OAAO,CAAC;oBACjB,IAAI,EAAE,IAAI;oBACV,SAAS,EAAE,IAAI;iBAClB,CAAC,CAAC;YACP,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC;YAC/C,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC,CAAC,CAAC;AACX,CAAC"}
|
package/dist/config/text.js
CHANGED
|
@@ -2,7 +2,7 @@ import { MESSAGES as JA_MESSAGES } from './locales/ja.js';
|
|
|
2
2
|
import { MESSAGES as EN_MESSAGES } from './locales/en.js';
|
|
3
3
|
import { PROMPTS as JA_PROMPTS } from './prompts/ja.js';
|
|
4
4
|
import { PROMPTS as EN_PROMPTS } from './prompts/en.js';
|
|
5
|
-
const lang = process.env.APP_LANG || 'ja';
|
|
5
|
+
const lang = process.env.VF_LANG || process.env.APP_LANG || 'ja';
|
|
6
6
|
const JA = {
|
|
7
7
|
...JA_MESSAGES,
|
|
8
8
|
prompts: JA_PROMPTS
|
package/dist/config/text.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/config/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,QAAQ,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/config/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,QAAQ,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC;AAEjE,MAAM,EAAE,GAAG;IACP,GAAG,WAAW;IACd,OAAO,EAAE,UAAU;CACtB,CAAC;AAEF,MAAM,EAAE,GAAG;IACP,GAAG,WAAW;IACd,OAAO,EAAE,UAAU;CACtB,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAc,CAAC"}
|
package/dist/index.js
CHANGED
|
File without changes
|
package/dist/lib/mainAction.js
CHANGED
|
@@ -28,7 +28,7 @@ export async function mainAction(inputArg, options) {
|
|
|
28
28
|
}
|
|
29
29
|
let mode = options.preset || AppMode.GENERAL;
|
|
30
30
|
const configService = new ConfigService();
|
|
31
|
-
if (!configService.
|
|
31
|
+
if (!configService.isConfigured()) {
|
|
32
32
|
console.error(TEXT.errors.envMissing);
|
|
33
33
|
console.error(TEXT.ui.runInit);
|
|
34
34
|
process.exit(1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mainAction.js","sourceRoot":"","sources":["../../src/lib/mainAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAElC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAA4B,EAAE,OAAY;IACvE,IAAI,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC;YAC5G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC;YAC5G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC;YAC5G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,IAAI,IAAI,GAAI,OAAO,CAAC,MAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;QAE1D,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAE1C,IAAI,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"mainAction.js","sourceRoot":"","sources":["../../src/lib/mainAction.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,13 @@ export declare class ConfigService {
|
|
|
11
11
|
* Checks if the .env file exists.
|
|
12
12
|
*/
|
|
13
13
|
hasEnvFile(): boolean;
|
|
14
|
+
/**
|
|
15
|
+
* アプリケーションが設定済みかどうかを確認する。
|
|
16
|
+
* .env ファイルが存在するか、または必須の環境変数 (OBSIDIAN_VAULT_PATH) が設定されていれば true を返す。
|
|
17
|
+
* Checks if the application is configured.
|
|
18
|
+
* Returns true if the .env file exists OR if the required environment variable (OBSIDIAN_VAULT_PATH) is set.
|
|
19
|
+
*/
|
|
20
|
+
isConfigured(): boolean;
|
|
14
21
|
/**
|
|
15
22
|
* Vault Path が設定されているかどうかを確認する。
|
|
16
23
|
* Checks if the Vault Path is set.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigService.d.ts","sourceRoot":"","sources":["../../src/services/ConfigService.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ConfigService.d.ts","sourceRoot":"","sources":["../../src/services/ConfigService.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,qBAAa,aAAa;;IAmBtB;;;OAGG;IACH,UAAU,IAAI,OAAO;IAOrB;;;;;OAKG;IACH,YAAY,IAAI,OAAO;IAIvB;;;OAGG;IACH,YAAY,IAAI,OAAO;IAIvB;;;;OAIG;IACH,IAAI,SAAS,IAAI,MAAM,CAWtB;IAED;;;;OAIG;IACH,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAE/B;IAED;;;;OAIG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;;OAGG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;;OAGG;IACH,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED;;;;;;OAMG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IA0BnC;;;OAGG;IACH,qBAAqB,IAAI,MAAM,EAAE;CAUpC"}
|
|
@@ -3,6 +3,7 @@ import { TEXT } from '../config/text.js';
|
|
|
3
3
|
import * as dotenv from 'dotenv';
|
|
4
4
|
import * as path from 'path';
|
|
5
5
|
import * as fs from 'fs';
|
|
6
|
+
import * as os from 'os';
|
|
6
7
|
/**
|
|
7
8
|
* 環境変数や設定値を一元管理するサービスクラス。
|
|
8
9
|
* アプリケーション全体で process.env を直接参照せず、このクラスを通じて値を取得する。
|
|
@@ -35,6 +36,15 @@ export class ConfigService {
|
|
|
35
36
|
}
|
|
36
37
|
return fs.existsSync(path.join(process.cwd(), '.env'));
|
|
37
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* アプリケーションが設定済みかどうかを確認する。
|
|
41
|
+
* .env ファイルが存在するか、または必須の環境変数 (OBSIDIAN_VAULT_PATH) が設定されていれば true を返す。
|
|
42
|
+
* Checks if the application is configured.
|
|
43
|
+
* Returns true if the .env file exists OR if the required environment variable (OBSIDIAN_VAULT_PATH) is set.
|
|
44
|
+
*/
|
|
45
|
+
isConfigured() {
|
|
46
|
+
return this.hasEnvFile() || this.hasVaultPath();
|
|
47
|
+
}
|
|
38
48
|
/**
|
|
39
49
|
* Vault Path が設定されているかどうかを確認する。
|
|
40
50
|
* Checks if the Vault Path is set.
|
|
@@ -48,11 +58,14 @@ export class ConfigService {
|
|
|
48
58
|
* @throws {Error} 環境変数が設定されていない場合 / If the environment variable is not set.
|
|
49
59
|
*/
|
|
50
60
|
get vaultPath() {
|
|
51
|
-
|
|
52
|
-
if (!
|
|
61
|
+
let vaultPath = process.env.OBSIDIAN_VAULT_PATH;
|
|
62
|
+
if (!vaultPath) {
|
|
53
63
|
throw new Error(TEXT.errors.vaultPathNotSet);
|
|
54
64
|
}
|
|
55
|
-
|
|
65
|
+
if (vaultPath.startsWith('~')) {
|
|
66
|
+
vaultPath = path.join(os.homedir(), vaultPath.slice(1));
|
|
67
|
+
}
|
|
68
|
+
return vaultPath;
|
|
56
69
|
}
|
|
57
70
|
/**
|
|
58
71
|
* 使用するエディタのコマンドを取得する。
|
|
@@ -68,7 +81,7 @@ export class ConfigService {
|
|
|
68
81
|
* @returns {string} 言語コード (デフォルトは 'en') / Language code (defaults to 'en').
|
|
69
82
|
*/
|
|
70
83
|
get language() {
|
|
71
|
-
return process.env.APP_LANG || 'en';
|
|
84
|
+
return process.env.VF_LANG || process.env.APP_LANG || 'en';
|
|
72
85
|
}
|
|
73
86
|
/**
|
|
74
87
|
* テスト環境かどうかを判定する。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigService.js","sourceRoot":"","sources":["../../src/services/ConfigService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB;;;;;GAKG;AACH,MAAM,OAAO,aAAa;IAEtB;QACI,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;YACrE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;YACnE,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzB,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YACrC,CAAC;YACD,OAAO;QACX,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;YACjD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzB,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YACrC,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,UAAU;QACN,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;YACrE,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACH,YAAY;QACR,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACH,IAAI,SAAS;QACT,
|
|
1
|
+
{"version":3,"file":"ConfigService.js","sourceRoot":"","sources":["../../src/services/ConfigService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultPrompt.d.ts","sourceRoot":"","sources":["../../src/templates/defaultPrompt.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"defaultPrompt.d.ts","sourceRoot":"","sources":["../../src/templates/defaultPrompt.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiClD,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const DEFAULT_PROMPTS = {
|
|
|
4
4
|
description: "${TEXT.loader.defaultPromptDescription.replace('{promptName}', 'general')}"
|
|
5
5
|
version: 1.0
|
|
6
6
|
tags: ["system-prompt"]
|
|
7
|
+
aiProvider: ""
|
|
8
|
+
model: ""
|
|
7
9
|
---
|
|
8
10
|
|
|
9
11
|
${TEXT.prompts.general}
|
|
@@ -12,6 +14,8 @@ ${TEXT.prompts.general}
|
|
|
12
14
|
description: "${TEXT.loader.defaultPromptDescription.replace('{promptName}', 'xpost')}"
|
|
13
15
|
version: 1.0
|
|
14
16
|
tags: ["system-prompt"]
|
|
17
|
+
aiProvider: ""
|
|
18
|
+
model: ""
|
|
15
19
|
---
|
|
16
20
|
|
|
17
21
|
${TEXT.prompts.xpost}
|
|
@@ -20,6 +24,8 @@ ${TEXT.prompts.xpost}
|
|
|
20
24
|
description: "${TEXT.loader.defaultPromptDescription.replace('{promptName}', 'debug')}"
|
|
21
25
|
version: 1.0
|
|
22
26
|
tags: ["system-prompt"]
|
|
27
|
+
aiProvider: ""
|
|
28
|
+
model: ""
|
|
23
29
|
---
|
|
24
30
|
|
|
25
31
|
${TEXT.prompts.debug}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultPrompt.js","sourceRoot":"","sources":["../../src/templates/defaultPrompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEzC,MAAM,CAAC,MAAM,eAAe,GAA2B;IACnD,OAAO,EAAE;gBACG,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,OAAO,CAAC,cAAc,EAAE,SAAS,CAAC
|
|
1
|
+
{"version":3,"file":"defaultPrompt.js","sourceRoot":"","sources":["../../src/templates/defaultPrompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEzC,MAAM,CAAC,MAAM,eAAe,GAA2B;IACnD,OAAO,EAAE;gBACG,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,OAAO,CAAC,cAAc,EAAE,SAAS,CAAC;;;;;;;EAOrF,IAAI,CAAC,OAAO,CAAC,OAAO;CACrB;IAEG,KAAK,EAAE;gBACK,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC;;;;;;;EAOnF,IAAI,CAAC,OAAO,CAAC,KAAK;CACnB;IAEG,KAAK,EAAE;gBACK,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC;;;;;;;EAOnF,IAAI,CAAC,OAAO,CAAC,KAAK;CACnB;CACA,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vault-forge",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.9",
|
|
4
4
|
"description": "Forge new ideas from your Obsidian Vault with AI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"README_ja.md"
|
|
13
13
|
],
|
|
14
14
|
"scripts": {
|
|
15
|
-
"build": "tsc",
|
|
15
|
+
"build": "rm -rf dist && tsc",
|
|
16
16
|
"watch": "tsc --watch",
|
|
17
17
|
"start": "ts-node src/index.ts",
|
|
18
18
|
"test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest",
|
package/dist/actions/dummy.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dummy.d.ts","sourceRoot":"","sources":["../../src/actions/dummy.ts"],"names":[],"mappings":""}
|
package/dist/actions/dummy.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dummy.js","sourceRoot":"","sources":["../../src/actions/dummy.ts"],"names":[],"mappings":";AAAA,iCAAiC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mainAction.d.ts","sourceRoot":"","sources":["../../src/actions/mainAction.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,GAAG,iBA2D1E"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { spawn } from 'child_process';
|
|
2
|
-
import * as path from 'path';
|
|
3
|
-
import * as fsSync from 'fs';
|
|
4
|
-
import { VaultForge } from '../core/VaultForge.js';
|
|
5
|
-
import { AppMode } from '../types/constants.js';
|
|
6
|
-
import { AIModelService } from '../services/AIModelService.js';
|
|
7
|
-
import { getCandidates } from '../utils/completion.js';
|
|
8
|
-
import { fileURLToPath } from 'url';
|
|
9
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
10
|
-
const __dirname = path.dirname(__filename);
|
|
11
|
-
const masterModelsPath = path.join(__dirname, '../config/ai-models.json');
|
|
12
|
-
/**
|
|
13
|
-
* 内部でタグの # を復元して実行するメインアクション
|
|
14
|
-
*/
|
|
15
|
-
export async function mainAction(inputArg, options) {
|
|
16
|
-
try {
|
|
17
|
-
if (options.detach) {
|
|
18
|
-
const args = process.argv.slice(2).filter(arg => arg !== '-d' && arg !== '--detach');
|
|
19
|
-
const subprocess = spawn(process.argv[0] || 'node', [process.argv[1] || '', ...args], { detached: true, stdio: 'ignore' });
|
|
20
|
-
subprocess.unref();
|
|
21
|
-
process.exit(0);
|
|
22
|
-
}
|
|
23
|
-
const vaultPath = process.env.OBSIDIAN_VAULT_PATH;
|
|
24
|
-
const aiModelService = new AIModelService(vaultPath);
|
|
25
|
-
const validCandidates = getCandidates();
|
|
26
|
-
let detectedModel = null;
|
|
27
|
-
const userModelsPath = path.join(vaultPath, '_AI_Prompts', 'ai-models.json');
|
|
28
|
-
let allModelsData = {};
|
|
29
|
-
if (fsSync.existsSync(userModelsPath)) {
|
|
30
|
-
allModelsData = JSON.parse(fsSync.readFileSync(userModelsPath, 'utf-8'));
|
|
31
|
-
}
|
|
32
|
-
if (options.model) {
|
|
33
|
-
const modelName = options.model;
|
|
34
|
-
for (const [provider, models] of Object.entries(allModelsData)) {
|
|
35
|
-
if (Array.isArray(models) && models.includes(modelName)) {
|
|
36
|
-
detectedModel = { provider, model: modelName };
|
|
37
|
-
break;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
if (!detectedModel) {
|
|
41
|
-
detectedModel = { provider: '', model: modelName };
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
const processedInput = (inputArg || "").split(' ').map(word => {
|
|
45
|
-
if (validCandidates.includes(word)) {
|
|
46
|
-
return `#${word}`;
|
|
47
|
-
}
|
|
48
|
-
return word;
|
|
49
|
-
}).join(' ');
|
|
50
|
-
const config = {
|
|
51
|
-
vaultPath: vaultPath,
|
|
52
|
-
inputData: processedInput,
|
|
53
|
-
mode: options.mode || AppMode.GENERAL,
|
|
54
|
-
instruction: options.instruction,
|
|
55
|
-
overrideModel: detectedModel || undefined
|
|
56
|
-
};
|
|
57
|
-
const app = new VaultForge(config);
|
|
58
|
-
await app.run();
|
|
59
|
-
if (detectedModel && detectedModel.provider) {
|
|
60
|
-
const modelInfo = detectedModel;
|
|
61
|
-
await aiModelService.addModel(modelInfo.provider, modelInfo.model);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
catch (e) {
|
|
65
|
-
process.exit(1);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=mainAction.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mainAction.js","sourceRoot":"","sources":["../../src/actions/mainAction.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/ask.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ask.d.ts","sourceRoot":"","sources":["../../src/commands/ask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,QAWlD"}
|
package/dist/commands/ask.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Command } from 'commander';
|
|
2
|
-
import { mainAction } from '../lib/mainAction.js';
|
|
3
|
-
export function registerAskCommand(program) {
|
|
4
|
-
program.command('ask')
|
|
5
|
-
.argument('[input...]')
|
|
6
|
-
.option('-m, --mode <mode>', '', 'general')
|
|
7
|
-
.option('--model <name>', 'Specify AI model')
|
|
8
|
-
.option('-i, --instruction <text>')
|
|
9
|
-
.option('-d, --detach')
|
|
10
|
-
.allowUnknownOption()
|
|
11
|
-
.action(async (parts, opts) => {
|
|
12
|
-
await mainAction(parts.join(' '), opts);
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=ask.js.map
|
package/dist/commands/ask.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ask.js","sourceRoot":"","sources":["../../src/commands/ask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IAC/C,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;SACjB,QAAQ,CAAC,YAAY,CAAC;SACtB,MAAM,CAAC,mBAAmB,EAAE,EAAE,EAAE,SAAS,CAAC;SAC1C,MAAM,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;SAC5C,MAAM,CAAC,0BAA0B,CAAC;SAClC,MAAM,CAAC,cAAc,CAAC;SACtB,kBAAkB,EAAE;SACpB,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC1B,MAAM,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACX,CAAC"}
|
package/dist/commands/dummy.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dummy.d.ts","sourceRoot":"","sources":["../../src/commands/dummy.ts"],"names":[],"mappings":""}
|
package/dist/commands/dummy.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dummy.js","sourceRoot":"","sources":["../../src/commands/dummy.ts"],"names":[],"mappings":";AAAA,iCAAiC"}
|
package/dist/commands/find.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../src/commands/find.ts"],"names":[],"mappings":""}
|
package/dist/commands/find.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../src/commands/find.ts"],"names":[],"mappings":";AAAA,UAAU"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { ObsidianService } from '../services/ObsidianService.js';
|
|
2
|
-
import type { PromptData } from '../types/interfaces.js';
|
|
3
|
-
export declare const BACK_SIGNAL: unique symbol;
|
|
4
|
-
export declare class PromptLoader {
|
|
5
|
-
private obsidian;
|
|
6
|
-
private lang;
|
|
7
|
-
private aiModelService;
|
|
8
|
-
constructor(obsidian: ObsidianService, lang: string);
|
|
9
|
-
/**
|
|
10
|
-
* プロンプトファイルを読み込む
|
|
11
|
-
* Loads a prompt file.
|
|
12
|
-
*/
|
|
13
|
-
load(promptName: string): Promise<PromptData>;
|
|
14
|
-
/**
|
|
15
|
-
* プロンプトファイルを新規作成(または上書き)する
|
|
16
|
-
* Creates (or overwrites) a prompt file.
|
|
17
|
-
*/
|
|
18
|
-
create(promptName: string, interactive: boolean): Promise<string | typeof BACK_SIGNAL>;
|
|
19
|
-
/**
|
|
20
|
-
* 既存のプロンプトファイルのAI設定のみを更新する
|
|
21
|
-
* Updates only the AI settings of an existing prompt file.
|
|
22
|
-
*/
|
|
23
|
-
updateAI(promptName: string): Promise<void | typeof BACK_SIGNAL>;
|
|
24
|
-
/**
|
|
25
|
-
* コンテンツに対話的にAI設定を注入するヘルパーメソッド
|
|
26
|
-
* Helper method to interactively inject AI settings into content.
|
|
27
|
-
*/
|
|
28
|
-
private injectAIConfig;
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=PromptLoader.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PromptLoader.d.ts","sourceRoot":"","sources":["../../src/core/PromptLoader.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAGjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGzD,eAAO,MAAM,WAAW,eAAiB,CAAC;AAE1C,qBAAa,YAAY;IACrB,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,cAAc,CAAiB;gBAE3B,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM;IAMnD;;;OAGG;IACG,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IA4CnD;;;OAGG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,WAAW,CAAC;IAuB5F;;;OAGG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,OAAO,WAAW,CAAC;IAuBtE;;;OAGG;YACW,cAAc;CA8F/B"}
|
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
import * as path from 'path';
|
|
2
|
-
import matter from 'gray-matter';
|
|
3
|
-
import { z } from 'zod';
|
|
4
|
-
import { PromptFileSchema } from '../types/schemas.js';
|
|
5
|
-
import { DEFAULT_PROMPTS } from '../templates/defaultPrompt.js';
|
|
6
|
-
import { TEXT } from '../config/text.js';
|
|
7
|
-
import { ObsidianService } from '../services/ObsidianService.js';
|
|
8
|
-
import { select, text as clackText, isCancel, cancel } from '@clack/prompts';
|
|
9
|
-
import { AIProvider, AppMode } from '../types/constants.js';
|
|
10
|
-
import { AIModelService } from '../services/AIModelService.js';
|
|
11
|
-
export const BACK_SIGNAL = Symbol('BACK');
|
|
12
|
-
export class PromptLoader {
|
|
13
|
-
obsidian;
|
|
14
|
-
lang;
|
|
15
|
-
aiModelService;
|
|
16
|
-
constructor(obsidian, lang) {
|
|
17
|
-
this.obsidian = obsidian;
|
|
18
|
-
this.lang = lang;
|
|
19
|
-
this.aiModelService = new AIModelService(obsidian.getVaultPath());
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* プロンプトファイルを読み込む
|
|
23
|
-
* Loads a prompt file.
|
|
24
|
-
*/
|
|
25
|
-
async load(promptName) {
|
|
26
|
-
const relativePath = path.join('_AI_Prompts', 'prompts', this.lang, `${promptName}.md`);
|
|
27
|
-
try {
|
|
28
|
-
const fileContent = await this.obsidian.readNote(relativePath);
|
|
29
|
-
const { content, data } = matter(fileContent);
|
|
30
|
-
const validated = PromptFileSchema.parse({
|
|
31
|
-
frontmatter: data,
|
|
32
|
-
content: content.trim()
|
|
33
|
-
});
|
|
34
|
-
return {
|
|
35
|
-
content: validated.content,
|
|
36
|
-
aiProvider: validated.frontmatter?.aiProvider,
|
|
37
|
-
model: validated.frontmatter?.model,
|
|
38
|
-
outputMode: validated.frontmatter?.outputMode
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
catch (error) {
|
|
42
|
-
if (error.code === 'ENOENT') {
|
|
43
|
-
const result = await this.create(promptName, false);
|
|
44
|
-
if (result === BACK_SIGNAL)
|
|
45
|
-
throw new Error(TEXT.errors.unexpectedBackSignal);
|
|
46
|
-
const { content, data } = matter(result);
|
|
47
|
-
return { content: content.trim(), ...data };
|
|
48
|
-
}
|
|
49
|
-
if (error instanceof z.ZodError) {
|
|
50
|
-
const contentError = error.issues.find(issue => issue.path.includes('content') && issue.code === 'too_small');
|
|
51
|
-
if (contentError) {
|
|
52
|
-
const errorMessage = TEXT.loader.loadErrorDetail.replace('{filePath}', relativePath);
|
|
53
|
-
throw new Error(`${errorMessage}\n${TEXT.loader.reason}: ${TEXT.validation.promptTooShort}`);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
const errorMessage = TEXT.loader.loadErrorDetail.replace('{filePath}', relativePath);
|
|
57
|
-
throw new Error(`${errorMessage}\n${TEXT.loader.reason}: ${error.message}`);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* プロンプトファイルを新規作成(または上書き)する
|
|
62
|
-
* Creates (or overwrites) a prompt file.
|
|
63
|
-
*/
|
|
64
|
-
async create(promptName, interactive) {
|
|
65
|
-
const relativePath = path.join('_AI_Prompts', 'prompts', this.lang, `${promptName}.md`);
|
|
66
|
-
let defaultContent = DEFAULT_PROMPTS[promptName];
|
|
67
|
-
if (!defaultContent) {
|
|
68
|
-
const errorMessage = TEXT.loader.noDefaultPrompt.replace('{promptName}', promptName);
|
|
69
|
-
throw new Error(errorMessage);
|
|
70
|
-
}
|
|
71
|
-
if (interactive) {
|
|
72
|
-
const result = await this.injectAIConfig(defaultContent, promptName);
|
|
73
|
-
if (result === BACK_SIGNAL)
|
|
74
|
-
return BACK_SIGNAL;
|
|
75
|
-
defaultContent = result;
|
|
76
|
-
}
|
|
77
|
-
await this.obsidian.createNote(relativePath, defaultContent);
|
|
78
|
-
const logMessage = TEXT.loader.createdDefaultFile.replace('{filePath}', relativePath);
|
|
79
|
-
console.log(logMessage);
|
|
80
|
-
return defaultContent;
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* 既存のプロンプトファイルのAI設定のみを更新する
|
|
84
|
-
* Updates only the AI settings of an existing prompt file.
|
|
85
|
-
*/
|
|
86
|
-
async updateAI(promptName) {
|
|
87
|
-
const relativePath = path.join('_AI_Prompts', 'prompts', this.lang, `${promptName}.md`);
|
|
88
|
-
try {
|
|
89
|
-
const fileContent = await this.obsidian.readNote(relativePath);
|
|
90
|
-
const newContent = await this.injectAIConfig(fileContent, promptName);
|
|
91
|
-
if (newContent === BACK_SIGNAL)
|
|
92
|
-
return BACK_SIGNAL;
|
|
93
|
-
await this.obsidian.createNote(relativePath, newContent);
|
|
94
|
-
console.log(TEXT.ui.aiSettingsUpdatedFor.replace('{mode}', promptName));
|
|
95
|
-
}
|
|
96
|
-
catch (error) {
|
|
97
|
-
if (error.code === 'ENOENT') {
|
|
98
|
-
const result = await this.create(promptName, true);
|
|
99
|
-
if (result === BACK_SIGNAL)
|
|
100
|
-
return BACK_SIGNAL;
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
throw error;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* コンテンツに対話的にAI設定を注入するヘルパーメソッド
|
|
110
|
-
* Helper method to interactively inject AI settings into content.
|
|
111
|
-
*/
|
|
112
|
-
async injectAIConfig(fileContent, promptName) {
|
|
113
|
-
const availableProviders = Object.values(AIProvider).filter(provider => {
|
|
114
|
-
const key = `${provider.toUpperCase()}_API_KEY`;
|
|
115
|
-
return process.env[key] || process.env[`${provider.toUpperCase()}_API_SECRET`];
|
|
116
|
-
});
|
|
117
|
-
if (availableProviders.length > 0) {
|
|
118
|
-
const options = availableProviders.map(p => ({ value: p, label: p }));
|
|
119
|
-
options.push({ value: 'BACK', label: TEXT.ui.backOption });
|
|
120
|
-
const selectedProvider = await select({
|
|
121
|
-
message: TEXT.ui.selectAIForMode.replace('{mode}', promptName),
|
|
122
|
-
options: options,
|
|
123
|
-
});
|
|
124
|
-
if (isCancel(selectedProvider)) {
|
|
125
|
-
cancel(TEXT.ui.operationCancelled);
|
|
126
|
-
process.exit(0);
|
|
127
|
-
}
|
|
128
|
-
if (selectedProvider === 'BACK') {
|
|
129
|
-
return BACK_SIGNAL;
|
|
130
|
-
}
|
|
131
|
-
const provider = selectedProvider;
|
|
132
|
-
const models = await this.aiModelService.getModels(provider);
|
|
133
|
-
const modelOptions = models.map(m => ({ value: m, label: m }));
|
|
134
|
-
modelOptions.push({ value: 'CUSTOM', label: TEXT.ui.customModelOption });
|
|
135
|
-
const selectedModel = await select({
|
|
136
|
-
message: TEXT.ui.selectModel,
|
|
137
|
-
options: modelOptions,
|
|
138
|
-
});
|
|
139
|
-
if (isCancel(selectedModel)) {
|
|
140
|
-
cancel(TEXT.ui.operationCancelled);
|
|
141
|
-
process.exit(0);
|
|
142
|
-
}
|
|
143
|
-
let model = selectedModel;
|
|
144
|
-
if (selectedModel === 'CUSTOM') {
|
|
145
|
-
const customModel = await clackText({
|
|
146
|
-
message: TEXT.ui.enterCustomModel,
|
|
147
|
-
placeholder: 'e.g. gpt-4-32k',
|
|
148
|
-
});
|
|
149
|
-
if (isCancel(customModel)) {
|
|
150
|
-
cancel(TEXT.ui.operationCancelled);
|
|
151
|
-
process.exit(0);
|
|
152
|
-
}
|
|
153
|
-
model = customModel;
|
|
154
|
-
await this.aiModelService.addModel(provider, model);
|
|
155
|
-
}
|
|
156
|
-
const outputModeOptions = [
|
|
157
|
-
{ value: 'normal', label: TEXT.ui.outputModeNormal },
|
|
158
|
-
{ value: 'stream', label: TEXT.ui.outputModeStream },
|
|
159
|
-
];
|
|
160
|
-
if (promptName !== AppMode.GENERAL) {
|
|
161
|
-
outputModeOptions.push({ value: 'background', label: TEXT.ui.outputModeBackground });
|
|
162
|
-
}
|
|
163
|
-
const selectedOutputMode = await select({
|
|
164
|
-
message: TEXT.ui.selectOutputMode.replace('{mode}', promptName),
|
|
165
|
-
options: outputModeOptions,
|
|
166
|
-
initialValue: 'normal',
|
|
167
|
-
});
|
|
168
|
-
if (isCancel(selectedOutputMode)) {
|
|
169
|
-
cancel(TEXT.ui.operationCancelled);
|
|
170
|
-
process.exit(0);
|
|
171
|
-
}
|
|
172
|
-
const { data: frontmatter, content } = matter(fileContent);
|
|
173
|
-
const existingTags = frontmatter.tags || [];
|
|
174
|
-
const newTags = Array.from(new Set([...existingTags, selectedProvider, model]));
|
|
175
|
-
const newFrontmatter = {
|
|
176
|
-
...frontmatter,
|
|
177
|
-
aiProvider: selectedProvider,
|
|
178
|
-
model: model,
|
|
179
|
-
outputMode: selectedOutputMode,
|
|
180
|
-
tags: newTags
|
|
181
|
-
};
|
|
182
|
-
return matter.stringify(content, newFrontmatter);
|
|
183
|
-
}
|
|
184
|
-
return fileContent;
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
//# sourceMappingURL=PromptLoader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PromptLoader.js","sourceRoot":"","sources":["../../src/core/PromptLoader.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/completion.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import omelette from 'omelette';
|
|
2
|
-
export declare const completion: omelette.Instance;
|
|
3
|
-
/**
|
|
4
|
-
* 補完候補のリストを取得する(#を付けない)
|
|
5
|
-
*/
|
|
6
|
-
export declare const getCandidates: () => string[];
|
|
7
|
-
export declare const setupCompletion: () => void;
|
|
8
|
-
//# sourceMappingURL=completion.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/lib/completion.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAIhC,eAAO,MAAM,UAAU,mBAAiC,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,aAAa,QAAO,MAAM,EAqBtC,CAAC;AAEF,eAAO,MAAM,eAAe,YA0B3B,CAAC"}
|
package/dist/lib/completion.js
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import omelette from 'omelette';
|
|
2
|
-
import * as fsSync from 'fs';
|
|
3
|
-
import * as path from 'path';
|
|
4
|
-
export const completion = omelette('vf <action> <item>');
|
|
5
|
-
/**
|
|
6
|
-
* 補完候補のリストを取得する(#を付けない)
|
|
7
|
-
*/
|
|
8
|
-
export const getCandidates = () => {
|
|
9
|
-
try {
|
|
10
|
-
const vaultPath = process.env.OBSIDIAN_VAULT_PATH;
|
|
11
|
-
if (!vaultPath)
|
|
12
|
-
return [];
|
|
13
|
-
const candidates = [];
|
|
14
|
-
const tagsPath = path.join(vaultPath, '_AI_Prompts', 'tags.json');
|
|
15
|
-
if (fsSync.existsSync(tagsPath)) {
|
|
16
|
-
const tags = JSON.parse(fsSync.readFileSync(tagsPath, 'utf-8'));
|
|
17
|
-
if (Array.isArray(tags))
|
|
18
|
-
candidates.push(...tags);
|
|
19
|
-
}
|
|
20
|
-
const modelsPath = path.join(vaultPath, '_AI_Prompts', 'ai-models.json');
|
|
21
|
-
if (fsSync.existsSync(modelsPath)) {
|
|
22
|
-
const modelsData = JSON.parse(fsSync.readFileSync(modelsPath, 'utf-8'));
|
|
23
|
-
Object.values(modelsData).forEach((models) => {
|
|
24
|
-
if (Array.isArray(models))
|
|
25
|
-
candidates.push(...models);
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
return candidates;
|
|
29
|
-
}
|
|
30
|
-
catch (e) {
|
|
31
|
-
return [];
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
export const setupCompletion = () => {
|
|
35
|
-
completion.on('action', ({ reply }) => {
|
|
36
|
-
reply(['ask', 'diary', 'd', 'search', 's', 'init', 'completion']);
|
|
37
|
-
});
|
|
38
|
-
completion.on('item', ({ reply, line }) => {
|
|
39
|
-
const parts = line.split(/\s+/);
|
|
40
|
-
const action = parts[1] || '';
|
|
41
|
-
const askOptions = ['--mode', '-m', '--instruction', '-i', '--detach', '-d', '--model']; // -f 削除
|
|
42
|
-
const diaryOptions = ['--task', '-t'];
|
|
43
|
-
if (['ask', 'diary', 'd', 'search', 's'].includes(action)) {
|
|
44
|
-
reply([...getCandidates(), ...(action === 'ask' ? askOptions : (action === 'diary' || action === 'd' ? diaryOptions : []))]);
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
const isCompletionRequest = process.argv.some(arg => arg.includes('--comp') || arg === '_completion' || arg === 'completion');
|
|
48
|
-
if (isCompletionRequest) {
|
|
49
|
-
if (process.argv.some(arg => arg.includes('--compzsh') || arg.includes('--compbash') || arg === '--completion')) {
|
|
50
|
-
completion.init();
|
|
51
|
-
process.exit(0);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
//# sourceMappingURL=completion.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/lib/completion.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/dummy.d.ts
DELETED
package/dist/lib/dummy.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dummy.d.ts","sourceRoot":"","sources":["../../src/lib/dummy.ts"],"names":[],"mappings":""}
|
package/dist/lib/dummy.js
DELETED
package/dist/lib/dummy.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dummy.js","sourceRoot":"","sources":["../../src/lib/dummy.ts"],"names":[],"mappings":";AAAA,QAAQ"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
export declare class AIModelService {
|
|
2
|
-
private modelsPath;
|
|
3
|
-
private templatePath;
|
|
4
|
-
constructor(vaultPath: string);
|
|
5
|
-
/**
|
|
6
|
-
* ai-models.jsonを初期化する
|
|
7
|
-
* @returns true if a new file was created
|
|
8
|
-
*/
|
|
9
|
-
initialize(): Promise<boolean>;
|
|
10
|
-
/**
|
|
11
|
-
* 指定されたプロバイダーのモデルリストを取得する
|
|
12
|
-
* Gets the list of models for the specified provider.
|
|
13
|
-
*/
|
|
14
|
-
getModels(provider: string): Promise<string[]>;
|
|
15
|
-
/**
|
|
16
|
-
* 新しいモデルを追加する
|
|
17
|
-
* Adds a new model.
|
|
18
|
-
*/
|
|
19
|
-
addModel(provider: string, model: string): Promise<void>;
|
|
20
|
-
/**
|
|
21
|
-
* モデルを削除する
|
|
22
|
-
* Removes a model.
|
|
23
|
-
*/
|
|
24
|
-
removeModel(provider: string, model: string): Promise<void>;
|
|
25
|
-
/**
|
|
26
|
-
* モデル名からプロバイダーを推測する
|
|
27
|
-
* Infers the provider from the model name.
|
|
28
|
-
*/
|
|
29
|
-
inferProvider(modelName: string): Promise<string | null>;
|
|
30
|
-
private loadAllModels;
|
|
31
|
-
private saveAllModels;
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=AIModelService.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AIModelService.d.ts","sourceRoot":"","sources":["../../src/services/AIModelService.ts"],"names":[],"mappings":"AAKA,qBAAa,cAAc;IACvB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAS;gBAEjB,SAAS,EAAE,MAAM;IAW7B;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAUpC;;;OAGG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMpD;;;OAGG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa9D;;;OAGG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYjE;;;OAGG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;YAoBhD,aAAa;YAiBb,aAAa;CAK9B"}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import * as fs from 'fs/promises';
|
|
2
|
-
import * as path from 'path';
|
|
3
|
-
import { fileURLToPath } from 'url';
|
|
4
|
-
import { AIProvider } from '../types/constants.js';
|
|
5
|
-
export class AIModelService {
|
|
6
|
-
modelsPath;
|
|
7
|
-
templatePath;
|
|
8
|
-
constructor(vaultPath) {
|
|
9
|
-
this.modelsPath = path.join(vaultPath, '_AI_Prompts', 'ai-models.json');
|
|
10
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
11
|
-
const __dirname = path.dirname(__filename);
|
|
12
|
-
// src/config/ai-models.json へのパス (ビルド後の構成に依存)
|
|
13
|
-
// 注意: index.ts での修正に合わせて、ここも .ts ファイルからのインポートに変更するのが理想だが、
|
|
14
|
-
// 今回は既存のパス解決ロジックを踏襲しつつ、inferProvider を追加する
|
|
15
|
-
this.templatePath = path.join(__dirname, '../config/ai-models.json');
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* ai-models.jsonを初期化する
|
|
19
|
-
* @returns true if a new file was created
|
|
20
|
-
*/
|
|
21
|
-
async initialize() {
|
|
22
|
-
try {
|
|
23
|
-
await fs.access(this.modelsPath);
|
|
24
|
-
return false;
|
|
25
|
-
}
|
|
26
|
-
catch (e) {
|
|
27
|
-
await this.loadAllModels();
|
|
28
|
-
return true;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* 指定されたプロバイダーのモデルリストを取得する
|
|
33
|
-
* Gets the list of models for the specified provider.
|
|
34
|
-
*/
|
|
35
|
-
async getModels(provider) {
|
|
36
|
-
const allModels = await this.loadAllModels();
|
|
37
|
-
const models = allModels[provider] || [];
|
|
38
|
-
return models.filter(model => model !== '');
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* 新しいモデルを追加する
|
|
42
|
-
* Adds a new model.
|
|
43
|
-
*/
|
|
44
|
-
async addModel(provider, model) {
|
|
45
|
-
const allModels = await this.loadAllModels();
|
|
46
|
-
if (!allModels[provider]) {
|
|
47
|
-
allModels[provider] = [];
|
|
48
|
-
}
|
|
49
|
-
if (!allModels[provider].includes(model)) {
|
|
50
|
-
allModels[provider].push(model);
|
|
51
|
-
await this.saveAllModels(allModels);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* モデルを削除する
|
|
56
|
-
* Removes a model.
|
|
57
|
-
*/
|
|
58
|
-
async removeModel(provider, model) {
|
|
59
|
-
const allModels = await this.loadAllModels();
|
|
60
|
-
if (allModels[provider]) {
|
|
61
|
-
const index = allModels[provider].indexOf(model);
|
|
62
|
-
if (index > -1) {
|
|
63
|
-
allModels[provider].splice(index, 1);
|
|
64
|
-
await this.saveAllModels(allModels);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* モデル名からプロバイダーを推測する
|
|
70
|
-
* Infers the provider from the model name.
|
|
71
|
-
*/
|
|
72
|
-
async inferProvider(modelName) {
|
|
73
|
-
const allModels = await this.loadAllModels();
|
|
74
|
-
// 1. 完全一致チェック
|
|
75
|
-
for (const [provider, models] of Object.entries(allModels)) {
|
|
76
|
-
if (Array.isArray(models) && models.includes(modelName)) {
|
|
77
|
-
return provider;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
// 2. プレフィックスによる推測
|
|
81
|
-
const lowerName = modelName.toLowerCase();
|
|
82
|
-
if (lowerName.startsWith('gpt'))
|
|
83
|
-
return AIProvider.OPENAI;
|
|
84
|
-
if (lowerName.startsWith('gemini'))
|
|
85
|
-
return AIProvider.GEMINI;
|
|
86
|
-
if (lowerName.startsWith('claude'))
|
|
87
|
-
return AIProvider.CLAUDE;
|
|
88
|
-
if (lowerName.startsWith('llama') || lowerName.startsWith('mixtral') || lowerName.startsWith('gemma'))
|
|
89
|
-
return AIProvider.GROQ;
|
|
90
|
-
return null;
|
|
91
|
-
}
|
|
92
|
-
async loadAllModels() {
|
|
93
|
-
try {
|
|
94
|
-
const data = await fs.readFile(this.modelsPath, 'utf-8');
|
|
95
|
-
return JSON.parse(data);
|
|
96
|
-
}
|
|
97
|
-
catch (e) {
|
|
98
|
-
try {
|
|
99
|
-
const templateData = await fs.readFile(this.templatePath, 'utf-8');
|
|
100
|
-
const models = JSON.parse(templateData);
|
|
101
|
-
await this.saveAllModels(models);
|
|
102
|
-
return models;
|
|
103
|
-
}
|
|
104
|
-
catch (templateError) {
|
|
105
|
-
// console.error("Failed to load model template:", templateError);
|
|
106
|
-
return {};
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
async saveAllModels(models) {
|
|
111
|
-
const dirPath = path.dirname(this.modelsPath);
|
|
112
|
-
await fs.mkdir(dirPath, { recursive: true });
|
|
113
|
-
await fs.writeFile(this.modelsPath, JSON.stringify(models, null, 2), 'utf-8');
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
//# sourceMappingURL=AIModelService.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AIModelService.js","sourceRoot":"","sources":["../../src/services/AIModelService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ObsidianService } from '../services/ObsidianService.js';
|
|
2
|
-
import { BaseStrategy } from './BaseStrategy.js';
|
|
3
|
-
import { PromptSmith } from '../core/PromptSmith.js';
|
|
4
|
-
import { AIOrchestratorService } from '../services/AIOrchestratorService.js';
|
|
5
|
-
export declare class SearchStrategy extends BaseStrategy {
|
|
6
|
-
protected mode: "search";
|
|
7
|
-
protected saveInput: boolean;
|
|
8
|
-
execute(inputData: string, obsidian: ObsidianService, promptSmith: PromptSmith, aiOrchestrator: AIOrchestratorService, fileInfo: {
|
|
9
|
-
relativePath: string;
|
|
10
|
-
fullPath: string;
|
|
11
|
-
}, date: Date, instruction?: string, overrideModel?: {
|
|
12
|
-
provider: string;
|
|
13
|
-
model: string;
|
|
14
|
-
}, isPiped?: boolean): Promise<any>;
|
|
15
|
-
private searchWithRipgrep;
|
|
16
|
-
private searchWithObsidianUri;
|
|
17
|
-
private openFile;
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=SearchStrategy.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SearchStrategy.d.ts","sourceRoot":"","sources":["../../src/strategies/SearchStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAGjE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAMrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAI7E,qBAAa,cAAe,SAAQ,YAAY;IAC5C,SAAS,CAAC,IAAI,WAAkB;IAChC,SAAS,CAAC,SAAS,UAAS;IAEb,OAAO,CAClB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,eAAe,EACzB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,qBAAqB,EACrC,QAAQ,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EACpD,IAAI,EAAE,IAAI,EACV,WAAW,CAAC,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EACnD,OAAO,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,GAAG,CAAC;YAkBD,iBAAiB;YAqDjB,qBAAqB;YAYrB,QAAQ;CA0BzB"}
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import { ObsidianService } from '../services/ObsidianService.js';
|
|
2
|
-
import { TEXT } from '../config/text.js';
|
|
3
|
-
import { AppMode } from '../types/constants.js';
|
|
4
|
-
import { BaseStrategy } from './BaseStrategy.js';
|
|
5
|
-
import { PromptSmith } from '../core/PromptSmith.js';
|
|
6
|
-
import { TagService } from '../services/TagService.js';
|
|
7
|
-
import { select, isCancel, cancel } from '@clack/prompts';
|
|
8
|
-
import { exec, spawn } from 'child_process';
|
|
9
|
-
import { promisify } from 'util';
|
|
10
|
-
import * as path from 'path';
|
|
11
|
-
import { AIOrchestratorService } from '../services/AIOrchestratorService.js';
|
|
12
|
-
const execAsync = promisify(exec);
|
|
13
|
-
export class SearchStrategy extends BaseStrategy {
|
|
14
|
-
mode = AppMode.SEARCH;
|
|
15
|
-
saveInput = false;
|
|
16
|
-
async execute(inputData, obsidian, promptSmith, aiOrchestrator, fileInfo, date, instruction, overrideModel, isPiped) {
|
|
17
|
-
const query = inputData.trim();
|
|
18
|
-
if (!query) {
|
|
19
|
-
console.error(TEXT.errors.noInput);
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
const tagService = new TagService(obsidian.getVaultPath());
|
|
23
|
-
const hasRipgrep = await tagService.checkRipgrepAvailability();
|
|
24
|
-
if (hasRipgrep) {
|
|
25
|
-
await this.searchWithRipgrep(query, obsidian.getVaultPath());
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
await this.searchWithObsidianUri(query, obsidian.getVaultPath());
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
async searchWithRipgrep(query, vaultPath) {
|
|
32
|
-
console.log(TEXT.logs.searchingWithRipgrep.replace('{query}', query));
|
|
33
|
-
try {
|
|
34
|
-
const { stdout } = await execAsync(`rg -i --vimgrep -g '*.md' "${query}" "${vaultPath}"`);
|
|
35
|
-
const lines = stdout.split('\n').filter(line => line.trim() !== '');
|
|
36
|
-
if (lines.length === 0) {
|
|
37
|
-
console.log(TEXT.logs.noResultsFound);
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
const choices = lines.map(line => {
|
|
41
|
-
const parts = line.split(':');
|
|
42
|
-
if (parts.length < 4)
|
|
43
|
-
return null;
|
|
44
|
-
const filePath = parts[0];
|
|
45
|
-
const lineNum = parts[1];
|
|
46
|
-
const colNum = parts[2];
|
|
47
|
-
const content = parts.slice(3).join(':').trim();
|
|
48
|
-
if (!filePath)
|
|
49
|
-
return null;
|
|
50
|
-
const relativePath = filePath.replace(vaultPath + '/', '');
|
|
51
|
-
return {
|
|
52
|
-
name: `${relativePath}:${lineNum} ${content.substring(0, 60)}...`,
|
|
53
|
-
value: filePath,
|
|
54
|
-
description: content
|
|
55
|
-
};
|
|
56
|
-
}).filter(c => c !== null);
|
|
57
|
-
const selectedFile = await select({
|
|
58
|
-
message: TEXT.ui.searchResultsFound.replace('{count}', choices.length.toString()),
|
|
59
|
-
options: choices,
|
|
60
|
-
});
|
|
61
|
-
if (isCancel(selectedFile)) {
|
|
62
|
-
cancel(TEXT.ui.operationCancelled);
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
await this.openFile(selectedFile, vaultPath);
|
|
66
|
-
}
|
|
67
|
-
catch (e) {
|
|
68
|
-
if (e.code === 1) {
|
|
69
|
-
console.log(TEXT.logs.noResultsFound);
|
|
70
|
-
}
|
|
71
|
-
else {
|
|
72
|
-
console.error(`${TEXT.errors.searchError} ${e.message}`);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
async searchWithObsidianUri(query, vaultPath) {
|
|
77
|
-
console.log(TEXT.logs.ripgrepNotFoundOpeningObsidian);
|
|
78
|
-
const vaultName = path.basename(vaultPath);
|
|
79
|
-
const encodedQuery = encodeURIComponent(query);
|
|
80
|
-
const uri = `obsidian://search?vault=${vaultName}&query=${encodedQuery}`;
|
|
81
|
-
const openCommand = process.platform === 'darwin' ? 'open'
|
|
82
|
-
: (process.platform === 'win32' ? 'start' : 'xdg-open');
|
|
83
|
-
await execAsync(`${openCommand} "${uri}"`);
|
|
84
|
-
}
|
|
85
|
-
async openFile(filePath, vaultPath) {
|
|
86
|
-
const editor = process.env.EDITOR;
|
|
87
|
-
if (editor) {
|
|
88
|
-
const child = spawn(editor, [filePath], {
|
|
89
|
-
stdio: 'inherit'
|
|
90
|
-
});
|
|
91
|
-
return new Promise((resolve, reject) => {
|
|
92
|
-
child.on('exit', (code) => {
|
|
93
|
-
if (code === 0)
|
|
94
|
-
resolve();
|
|
95
|
-
else
|
|
96
|
-
reject(new Error(TEXT.errors.editorExitError.replace('{code}', (code ?? 'unknown').toString())));
|
|
97
|
-
});
|
|
98
|
-
child.on('error', reject);
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
else {
|
|
102
|
-
const vaultName = path.basename(vaultPath);
|
|
103
|
-
const relativePath = filePath.replace(vaultPath + '/', '');
|
|
104
|
-
const encodedFile = encodeURIComponent(relativePath);
|
|
105
|
-
const uri = `obsidian://open?vault=${vaultName}&file=${encodedFile}`;
|
|
106
|
-
const openCommand = process.platform === 'darwin' ? 'open'
|
|
107
|
-
: (process.platform === 'win32' ? 'start' : 'xdg-open');
|
|
108
|
-
await execAsync(`${openCommand} "${uri}"`);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
//# sourceMappingURL=SearchStrategy.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SearchStrategy.js","sourceRoot":"","sources":["../../src/strategies/SearchStrategy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
### vf completion - begin ###
|
|
2
|
-
if type compdef &>/dev/null; then
|
|
3
|
-
# Zsh
|
|
4
|
-
_vf_completion() {
|
|
5
|
-
local -a reply
|
|
6
|
-
|
|
7
|
-
# Zsh's word splitting can be tricky. Let omelette handle it.
|
|
8
|
-
reply=($(vf _completion --compzsh --compgen "${CURRENT}" "${words[CURRENT-1]}" "${BUFFER}"))
|
|
9
|
-
|
|
10
|
-
# Tell compadd to handle '#' as a normal character
|
|
11
|
-
compadd -Q -S '' -a reply
|
|
12
|
-
}
|
|
13
|
-
compdef _vf_completion vf
|
|
14
|
-
elif type complete &>/dev/null; then
|
|
15
|
-
# Bash
|
|
16
|
-
_vf_completion() {
|
|
17
|
-
local cur prev words cword
|
|
18
|
-
_get_comp_words_by_ref -n : cur prev words cword
|
|
19
|
-
COMPREPLY=( $(compgen -W "$(vf _completion --compbash --compgen "$cword" "$prev" "${COMP_LINE}")" -- "$cur") )
|
|
20
|
-
return 0
|
|
21
|
-
}
|
|
22
|
-
complete -F _vf_completion vf
|
|
23
|
-
fi
|
|
24
|
-
### vf completion - end ###
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import omelette from 'omelette';
|
|
2
|
-
export declare const completion: omelette.Instance;
|
|
3
|
-
/**
|
|
4
|
-
* 補完候補のリストを取得する(#を付けない)
|
|
5
|
-
*/
|
|
6
|
-
export declare const getCandidates: () => string[];
|
|
7
|
-
export declare const setupCompletion: () => void;
|
|
8
|
-
//# sourceMappingURL=completion.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/utils/completion.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAKhC,eAAO,MAAM,UAAU,mBAAiC,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,aAAa,QAAO,MAAM,EAqBtC,CAAC;AAGF,eAAO,MAAM,eAAe,YA2B3B,CAAC"}
|
package/dist/utils/completion.js
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import omelette from 'omelette';
|
|
2
|
-
import * as fsSync from 'fs';
|
|
3
|
-
import * as path from 'path';
|
|
4
|
-
// Omelette インスタンスの作成
|
|
5
|
-
export const completion = omelette('vf <action> <item>');
|
|
6
|
-
/**
|
|
7
|
-
* 補完候補のリストを取得する(#を付けない)
|
|
8
|
-
*/
|
|
9
|
-
export const getCandidates = () => {
|
|
10
|
-
try {
|
|
11
|
-
const vaultPath = process.env.OBSIDIAN_VAULT_PATH;
|
|
12
|
-
if (!vaultPath)
|
|
13
|
-
return [];
|
|
14
|
-
const candidates = [];
|
|
15
|
-
const tagsPath = path.join(vaultPath, '_AI_Prompts', 'tags.json');
|
|
16
|
-
if (fsSync.existsSync(tagsPath)) {
|
|
17
|
-
const tags = JSON.parse(fsSync.readFileSync(tagsPath, 'utf-8'));
|
|
18
|
-
if (Array.isArray(tags))
|
|
19
|
-
candidates.push(...tags);
|
|
20
|
-
}
|
|
21
|
-
const modelsPath = path.join(vaultPath, '_AI_Prompts', 'ai-models.json');
|
|
22
|
-
if (fsSync.existsSync(modelsPath)) {
|
|
23
|
-
const modelsData = JSON.parse(fsSync.readFileSync(modelsPath, 'utf-8'));
|
|
24
|
-
Object.values(modelsData).forEach((models) => {
|
|
25
|
-
if (Array.isArray(models))
|
|
26
|
-
candidates.push(...models);
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
return candidates;
|
|
30
|
-
}
|
|
31
|
-
catch (e) {
|
|
32
|
-
return [];
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
// 補完ロジックのセットアップ
|
|
36
|
-
export const setupCompletion = () => {
|
|
37
|
-
completion.on('action', ({ reply }) => {
|
|
38
|
-
reply(['ask', 'diary', 'd', 'search', 's', 'init', 'completion']);
|
|
39
|
-
});
|
|
40
|
-
completion.on('item', ({ reply, line }) => {
|
|
41
|
-
const parts = line.split(/\s+/);
|
|
42
|
-
const action = parts[1] || '';
|
|
43
|
-
const askOptions = ['--mode', '-m', '--file', '-f', '--instruction', '-i', '--detach', '-d', '--model'];
|
|
44
|
-
const diaryOptions = ['--task', '-t'];
|
|
45
|
-
if (['ask', 'diary', 'd', 'search', 's'].includes(action)) {
|
|
46
|
-
reply([...getCandidates(), ...(action === 'ask' ? askOptions : (action === 'diary' || action === 'd' ? diaryOptions : []))]);
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
// 絶対ガードロジック
|
|
50
|
-
const isCompletionRequest = process.argv.some(arg => arg.includes('--comp') || arg === '_completion' || arg === 'completion');
|
|
51
|
-
if (isCompletionRequest) {
|
|
52
|
-
if (process.argv.some(arg => arg.includes('--compzsh') || arg.includes('--compbash') || arg === '--completion')) {
|
|
53
|
-
completion.init();
|
|
54
|
-
process.exit(0);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
//# sourceMappingURL=completion.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/utils/completion.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/dummy.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dummy.d.ts","sourceRoot":"","sources":["../../src/utils/dummy.ts"],"names":[],"mappings":""}
|
package/dist/utils/dummy.js
DELETED
package/dist/utils/dummy.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dummy.js","sourceRoot":"","sources":["../../src/utils/dummy.ts"],"names":[],"mappings":";AAAA,iCAAiC"}
|