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.
Files changed (64) hide show
  1. package/dist/commands/init.js +1 -1
  2. package/dist/commands/init.js.map +1 -1
  3. package/dist/config/text.js +1 -1
  4. package/dist/config/text.js.map +1 -1
  5. package/dist/index.js +0 -0
  6. package/dist/lib/mainAction.js +1 -1
  7. package/dist/lib/mainAction.js.map +1 -1
  8. package/dist/services/ConfigService.d.ts +7 -0
  9. package/dist/services/ConfigService.d.ts.map +1 -1
  10. package/dist/services/ConfigService.js +17 -4
  11. package/dist/services/ConfigService.js.map +1 -1
  12. package/dist/templates/defaultPrompt.d.ts.map +1 -1
  13. package/dist/templates/defaultPrompt.js +6 -0
  14. package/dist/templates/defaultPrompt.js.map +1 -1
  15. package/package.json +2 -2
  16. package/dist/actions/dummy.d.ts +0 -2
  17. package/dist/actions/dummy.d.ts.map +0 -1
  18. package/dist/actions/dummy.js +0 -3
  19. package/dist/actions/dummy.js.map +0 -1
  20. package/dist/actions/mainAction.d.ts +0 -5
  21. package/dist/actions/mainAction.d.ts.map +0 -1
  22. package/dist/actions/mainAction.js +0 -68
  23. package/dist/actions/mainAction.js.map +0 -1
  24. package/dist/commands/ask.d.ts +0 -3
  25. package/dist/commands/ask.d.ts.map +0 -1
  26. package/dist/commands/ask.js +0 -15
  27. package/dist/commands/ask.js.map +0 -1
  28. package/dist/commands/dummy.d.ts +0 -2
  29. package/dist/commands/dummy.d.ts.map +0 -1
  30. package/dist/commands/dummy.js +0 -3
  31. package/dist/commands/dummy.js.map +0 -1
  32. package/dist/commands/find.d.ts +0 -2
  33. package/dist/commands/find.d.ts.map +0 -1
  34. package/dist/commands/find.js +0 -3
  35. package/dist/commands/find.js.map +0 -1
  36. package/dist/core/PromptLoader.d.ts +0 -30
  37. package/dist/core/PromptLoader.d.ts.map +0 -1
  38. package/dist/core/PromptLoader.js +0 -187
  39. package/dist/core/PromptLoader.js.map +0 -1
  40. package/dist/lib/completion.d.ts +0 -8
  41. package/dist/lib/completion.d.ts.map +0 -1
  42. package/dist/lib/completion.js +0 -55
  43. package/dist/lib/completion.js.map +0 -1
  44. package/dist/lib/dummy.d.ts +0 -2
  45. package/dist/lib/dummy.d.ts.map +0 -1
  46. package/dist/lib/dummy.js +0 -3
  47. package/dist/lib/dummy.js.map +0 -1
  48. package/dist/services/AIModelService.d.ts +0 -33
  49. package/dist/services/AIModelService.d.ts.map +0 -1
  50. package/dist/services/AIModelService.js +0 -116
  51. package/dist/services/AIModelService.js.map +0 -1
  52. package/dist/strategies/SearchStrategy.d.ts +0 -19
  53. package/dist/strategies/SearchStrategy.d.ts.map +0 -1
  54. package/dist/strategies/SearchStrategy.js +0 -112
  55. package/dist/strategies/SearchStrategy.js.map +0 -1
  56. package/dist/templates/completion.bash +0 -24
  57. package/dist/utils/completion.d.ts +0 -8
  58. package/dist/utils/completion.d.ts.map +0 -1
  59. package/dist/utils/completion.js +0 -58
  60. package/dist/utils/completion.js.map +0 -1
  61. package/dist/utils/dummy.d.ts +0 -2
  62. package/dist/utils/dummy.d.ts.map +0 -1
  63. package/dist/utils/dummy.js +0 -3
  64. package/dist/utils/dummy.js.map +0 -1
@@ -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.hasEnvFile()) {
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,UAAU,EAAE,EAAE,CAAC;YAC9B,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"}
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"}
@@ -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
@@ -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;AAE1C,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"}
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
@@ -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.hasEnvFile()) {
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":"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"}
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":"AAMA;;;;;GAKG;AACH,qBAAa,aAAa;;IAmBtB;;;OAGG;IACH,UAAU,IAAI,OAAO;IAOrB;;;OAGG;IACH,YAAY,IAAI,OAAO;IAIvB;;;;OAIG;IACH,IAAI,SAAS,IAAI,MAAM,CAMtB;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"}
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
- const path = process.env.OBSIDIAN_VAULT_PATH;
52
- if (!path) {
61
+ let vaultPath = process.env.OBSIDIAN_VAULT_PATH;
62
+ if (!vaultPath) {
53
63
  throw new Error(TEXT.errors.vaultPathNotSet);
54
64
  }
55
- return path;
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,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QAC7C,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,IAAI,MAAM;QACN,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,IAAI,QAAQ;QACR,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,IAAI,SAAS;QACT,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,IAAI,cAAc;QACd,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,MAAM,CAAC;IACnD,CAAC;IAED;;;;;;OAMG;IACH,SAAS,CAAC,QAAgB;QACtB,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,QAAQ,QAAQ,EAAE,CAAC;YACf,KAAK,UAAU,CAAC,MAAM;gBAClB,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;gBAC1C,MAAM;YACV,KAAK,UAAU,CAAC,IAAI;gBAChB,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;gBACxC,MAAM;YACV,KAAK,UAAU,CAAC,MAAM;gBAClB,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC;gBAC3E,MAAM;YACV,KAAK,UAAU,CAAC,MAAM,CAAC;YACvB;gBACI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;gBACxE,MAAM;QACd,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,qBAAqB;QACjB,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YAC/C,IAAI,CAAC;gBACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACzB,OAAO,IAAI,CAAC;YAChB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,KAAK,CAAC;YACjB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CACJ"}
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,CA2BlD,CAAC"}
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;;;;;EAKrF,IAAI,CAAC,OAAO,CAAC,OAAO;CACrB;IAEG,KAAK,EAAE;gBACK,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC;;;;;EAKnF,IAAI,CAAC,OAAO,CAAC,KAAK;CACnB;IAEG,KAAK,EAAE;gBACK,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC;;;;;EAKnF,IAAI,CAAC,OAAO,CAAC,KAAK;CACnB;CACA,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.7",
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",
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=dummy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dummy.d.ts","sourceRoot":"","sources":["../../src/actions/dummy.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- export {};
2
- // dummy file to create directory
3
- //# sourceMappingURL=dummy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dummy.js","sourceRoot":"","sources":["../../src/actions/dummy.ts"],"names":[],"mappings":";AAAA,iCAAiC"}
@@ -1,5 +0,0 @@
1
- /**
2
- * 内部でタグの # を復元して実行するメインアクション
3
- */
4
- export declare function mainAction(inputArg: string | undefined, options: any): Promise<void>;
5
- //# sourceMappingURL=mainAction.d.ts.map
@@ -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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"}
@@ -1,3 +0,0 @@
1
- import { Command } from 'commander';
2
- export declare function registerAskCommand(program: Command): void;
3
- //# sourceMappingURL=ask.d.ts.map
@@ -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"}
@@ -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
@@ -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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=dummy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dummy.d.ts","sourceRoot":"","sources":["../../src/commands/dummy.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- export {};
2
- // dummy file to create directory
3
- //# sourceMappingURL=dummy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dummy.js","sourceRoot":"","sources":["../../src/commands/dummy.ts"],"names":[],"mappings":";AAAA,iCAAiC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=find.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../src/commands/find.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- export {};
2
- // Deleted
3
- //# sourceMappingURL=find.js.map
@@ -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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"}
@@ -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"}
@@ -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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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=dummy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dummy.d.ts","sourceRoot":"","sources":["../../src/lib/dummy.ts"],"names":[],"mappings":""}
package/dist/lib/dummy.js DELETED
@@ -1,3 +0,0 @@
1
- export {};
2
- // dummy
3
- //# sourceMappingURL=dummy.js.map
@@ -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":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC,MAAM,OAAO,cAAe,SAAQ,YAAY;IAClC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IACtB,SAAS,GAAG,KAAK,CAAC;IAEnB,KAAK,CAAC,OAAO,CAClB,SAAiB,EACjB,QAAyB,EACzB,WAAwB,EACxB,cAAqC,EACrC,QAAoD,EACpD,IAAU,EACV,WAAoB,EACpB,aAAmD,EACnD,OAAiB;QAGjB,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACnC,OAAO;QACX,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;QAC3D,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,wBAAwB,EAAE,CAAC;QAE/D,IAAI,UAAU,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;QACrE,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,KAAa,EAAE,SAAiB;QAC5D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QAEtE,IAAI,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,8BAA8B,KAAK,MAAM,SAAS,GAAG,CAAC,CAAC;YAE1F,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACpE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACtC,OAAO;YACX,CAAC;YAED,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC9B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,IAAI,CAAC;gBAElC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACzB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACxB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBAEhD,IAAI,CAAC,QAAQ;oBAAE,OAAO,IAAI,CAAC;gBAE3B,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;gBAE3D,OAAO;oBACH,IAAI,EAAE,GAAG,YAAY,IAAI,OAAO,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;oBAClE,KAAK,EAAE,QAAQ;oBACf,WAAW,EAAE,OAAO;iBACvB,CAAC;YACN,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YAE3B,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC;gBAC9B,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACjF,OAAO,EAAE,OAAc;aAC1B,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC;gBACnC,OAAO;YACX,CAAC;YAED,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAsB,EAAE,SAAS,CAAC,CAAC;QAE3D,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YACd,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7D,CAAC;QACL,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,KAAa,EAAE,SAAiB;QAChE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QAEtD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,2BAA2B,SAAS,UAAU,YAAY,EAAE,CAAC;QAEzE,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM;YACtD,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAC5D,MAAM,SAAS,CAAC,GAAG,WAAW,KAAK,GAAG,GAAG,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,SAAiB;QACtD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;QAElC,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE;gBACpC,KAAK,EAAE,SAAS;aACnB,CAAC,CAAC;YAEH,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACzC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;oBACtB,IAAI,IAAI,KAAK,CAAC;wBAAE,OAAO,EAAE,CAAC;;wBACrB,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1G,CAAC,CAAC,CAAC;gBACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC3C,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;YAC3D,MAAM,WAAW,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;YACrD,MAAM,GAAG,GAAG,yBAAyB,SAAS,SAAS,WAAW,EAAE,CAAC;YAErE,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM;gBACtD,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC5D,MAAM,SAAS,CAAC,GAAG,WAAW,KAAK,GAAG,GAAG,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC;CACJ"}
@@ -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"}
@@ -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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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=dummy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dummy.d.ts","sourceRoot":"","sources":["../../src/utils/dummy.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- export {};
2
- // dummy file to create directory
3
- //# sourceMappingURL=dummy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dummy.js","sourceRoot":"","sources":["../../src/utils/dummy.ts"],"names":[],"mappings":";AAAA,iCAAiC"}