@tyvm/knowhow 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/package.json +1 -1
  2. package/src/plugins/PluginBase.ts +51 -0
  3. package/src/plugins/asana.ts +12 -2
  4. package/src/plugins/downloader/plugin.ts +12 -2
  5. package/src/plugins/embedding.ts +12 -2
  6. package/src/plugins/figma.ts +18 -2
  7. package/src/plugins/github.ts +34 -5
  8. package/src/plugins/jira.ts +11 -2
  9. package/src/plugins/language.ts +11 -2
  10. package/src/plugins/linear.ts +11 -2
  11. package/src/plugins/notion.ts +11 -2
  12. package/src/plugins/plugins.ts +90 -24
  13. package/src/plugins/types.ts +15 -2
  14. package/src/plugins/url.ts +12 -1
  15. package/src/plugins/vim.ts +12 -2
  16. package/ts_build/src/plugins/EmbeddingPluginV2.d.ts +7 -0
  17. package/ts_build/src/plugins/EmbeddingPluginV2.js +41 -0
  18. package/ts_build/src/plugins/EmbeddingPluginV2.js.map +1 -0
  19. package/ts_build/src/plugins/GitHubPluginV2.d.ts +10 -0
  20. package/ts_build/src/plugins/GitHubPluginV2.js +57 -0
  21. package/ts_build/src/plugins/GitHubPluginV2.js.map +1 -0
  22. package/ts_build/src/plugins/PluginBase.d.ts +15 -0
  23. package/ts_build/src/plugins/PluginBase.js +34 -0
  24. package/ts_build/src/plugins/PluginBase.js.map +1 -0
  25. package/ts_build/src/plugins/asana.d.ts +3 -2
  26. package/ts_build/src/plugins/asana.js +10 -1
  27. package/ts_build/src/plugins/asana.js.map +1 -1
  28. package/ts_build/src/plugins/downloader/plugin.d.ts +4 -2
  29. package/ts_build/src/plugins/downloader/plugin.js +10 -1
  30. package/ts_build/src/plugins/downloader/plugin.js.map +1 -1
  31. package/ts_build/src/plugins/embedding.d.ts +4 -2
  32. package/ts_build/src/plugins/embedding.js +10 -1
  33. package/ts_build/src/plugins/embedding.js.map +1 -1
  34. package/ts_build/src/plugins/figma.d.ts +4 -1
  35. package/ts_build/src/plugins/figma.js +16 -2
  36. package/ts_build/src/plugins/figma.js.map +1 -1
  37. package/ts_build/src/plugins/github.d.ts +4 -2
  38. package/ts_build/src/plugins/github.js +28 -4
  39. package/ts_build/src/plugins/github.js.map +1 -1
  40. package/ts_build/src/plugins/jira.d.ts +3 -2
  41. package/ts_build/src/plugins/jira.js +10 -1
  42. package/ts_build/src/plugins/jira.js.map +1 -1
  43. package/ts_build/src/plugins/language.d.ts +3 -1
  44. package/ts_build/src/plugins/language.js +8 -1
  45. package/ts_build/src/plugins/language.js.map +1 -1
  46. package/ts_build/src/plugins/linear.d.ts +3 -2
  47. package/ts_build/src/plugins/linear.js +10 -1
  48. package/ts_build/src/plugins/linear.js.map +1 -1
  49. package/ts_build/src/plugins/notion.d.ts +3 -2
  50. package/ts_build/src/plugins/notion.js +10 -1
  51. package/ts_build/src/plugins/notion.js.map +1 -1
  52. package/ts_build/src/plugins/plugins.d.ts +9 -5
  53. package/ts_build/src/plugins/plugins.js +90 -23
  54. package/ts_build/src/plugins/plugins.js.map +1 -1
  55. package/ts_build/src/plugins/types.d.ts +12 -2
  56. package/ts_build/src/plugins/url.d.ts +4 -1
  57. package/ts_build/src/plugins/url.js +10 -1
  58. package/ts_build/src/plugins/url.js.map +1 -1
  59. package/ts_build/src/plugins/vim.d.ts +4 -2
  60. package/ts_build/src/plugins/vim.js +10 -1
  61. package/ts_build/src/plugins/vim.js.map +1 -1
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  Object.defineProperty(exports, "__esModule", { value: true });
3
26
  exports.Plugins = exports.PluginService = void 0;
4
27
  const vim_1 = require("./vim");
@@ -13,37 +36,81 @@ const plugin_1 = require("./downloader/plugin");
13
36
  const figma_1 = require("./figma");
14
37
  const url_1 = require("./url");
15
38
  class PluginService {
16
- plugins = {
17
- embeddings: new embedding_1.EmbeddingPlugin(),
18
- vim: new vim_1.VimPlugin(),
19
- github: new github_1.GitHubPlugin(),
20
- asana: new asana_1.AsanaPlugin(),
21
- linear: new linear_1.LinearPlugin(),
22
- jira: new jira_1.JiraPlugin(),
23
- notion: new notion_1.NotionPlugin(),
24
- download: new plugin_1.DownloaderPlugin(),
25
- figma: new figma_1.FigmaPlugin(),
26
- language: new language_1.LanguagePlugin(this),
27
- url: new url_1.UrlPlugin(),
28
- };
39
+ pluginMap = new Map();
40
+ constructor() {
41
+ this.pluginMap.set("embeddings", new embedding_1.EmbeddingPlugin());
42
+ this.pluginMap.set("vim", new vim_1.VimPlugin());
43
+ this.pluginMap.set("github", new github_1.GitHubPlugin());
44
+ this.pluginMap.set("asana", new asana_1.AsanaPlugin());
45
+ this.pluginMap.set("linear", new linear_1.LinearPlugin());
46
+ this.pluginMap.set("jira", new jira_1.JiraPlugin());
47
+ this.pluginMap.set("notion", new notion_1.NotionPlugin());
48
+ this.pluginMap.set("download", new plugin_1.DownloaderPlugin());
49
+ this.pluginMap.set("figma", new figma_1.FigmaPlugin());
50
+ this.pluginMap.set("language", new language_1.LanguagePlugin(this));
51
+ this.pluginMap.set("url", new url_1.UrlPlugin());
52
+ }
53
+ async loadPlugin(spec) {
54
+ var _a;
55
+ const { default: PluginCtor } = await (_a = spec, Promise.resolve().then(() => __importStar(require(_a))));
56
+ const instance = new PluginCtor(this);
57
+ this.pluginMap.set(instance.meta.key, instance);
58
+ return instance.meta.key;
59
+ }
60
+ disablePlugin(key) {
61
+ const p = this.pluginMap.get(key);
62
+ if (!p)
63
+ return false;
64
+ p.disable();
65
+ return true;
66
+ }
67
+ enablePlugin(key) {
68
+ const p = this.pluginMap.get(key);
69
+ if (!p)
70
+ return false;
71
+ p.enable();
72
+ return true;
73
+ }
29
74
  listPlugins() {
30
- return Object.keys(this.plugins);
75
+ const newPlugins = [...this.pluginMap.keys()];
76
+ return newPlugins;
31
77
  }
32
78
  isPlugin(name) {
33
- return name in this.plugins;
79
+ return this.pluginMap.has(name);
34
80
  }
35
81
  registerPlugin(name, plugin) {
36
- this.plugins[name] = plugin;
82
+ this.pluginMap.set(name, plugin);
37
83
  }
38
- async callMany(plugins, user_input) {
39
- const calls = plugins.map((p) => this.plugins[p].call(user_input));
40
- return (await Promise.all(calls)).join("\n\n");
84
+ async callMany(plugins, userInput) {
85
+ const calls = plugins.map(async (p) => {
86
+ return this.call(p, userInput);
87
+ });
88
+ const results = await Promise.all(calls);
89
+ return results.filter((result) => result !== "").join("\n\n");
41
90
  }
42
- async call(kind, user_input) {
43
- return this.plugins[kind].call(user_input);
91
+ async call(kind, userInput) {
92
+ const newPlugin = this.pluginMap.get(kind);
93
+ if (!newPlugin) {
94
+ throw new Error(`Plugin ${kind} not found`);
95
+ }
96
+ const enabled = await newPlugin.isEnabled();
97
+ if (!enabled) {
98
+ console.log(`Plugin ${kind} is disabled, skipping`);
99
+ return "";
100
+ }
101
+ return newPlugin.call(userInput);
44
102
  }
45
- async embed(kind, user_input) {
46
- return this.plugins[kind].embed(user_input);
103
+ async embed(kind, userInput) {
104
+ const newPlugin = this.pluginMap.get(kind);
105
+ if (!newPlugin) {
106
+ throw new Error(`Plugin ${kind} not found`);
107
+ }
108
+ const enabled = await newPlugin.isEnabled();
109
+ if (!enabled) {
110
+ console.log(`Plugin ${kind} is disabled, skipping`);
111
+ return [];
112
+ }
113
+ return newPlugin.embed ? newPlugin.embed(userInput) : [];
47
114
  }
48
115
  }
49
116
  exports.PluginService = PluginService;
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../src/plugins/plugins.ts"],"names":[],"mappings":";;;AAEA,+BAAkC;AAClC,yCAA4C;AAC5C,2CAA8C;AAC9C,qCAAwC;AACxC,mCAAsC;AACtC,qCAAwC;AACxC,iCAAoC;AACpC,qCAAwC;AACxC,gDAAuD;AACvD,mCAAsC;AACtC,+BAAkC;AAElC,MAAa,aAAa;IACxB,OAAO,GAAG;QACR,UAAU,EAAE,IAAI,2BAAe,EAAE;QACjC,GAAG,EAAE,IAAI,eAAS,EAAE;QACpB,MAAM,EAAE,IAAI,qBAAY,EAAE;QAC1B,KAAK,EAAE,IAAI,mBAAW,EAAE;QACxB,MAAM,EAAE,IAAI,qBAAY,EAAE;QAC1B,IAAI,EAAE,IAAI,iBAAU,EAAE;QACtB,MAAM,EAAE,IAAI,qBAAY,EAAE;QAC1B,QAAQ,EAAE,IAAI,yBAAgB,EAAE;QAChC,KAAK,EAAE,IAAI,mBAAW,EAAE;QACxB,QAAQ,EAAE,IAAI,yBAAc,CAAC,IAAI,CAAC;QAClC,GAAG,EAAE,IAAI,eAAS,EAAE;KACK,CAAC;IAE5B,WAAW;QACT,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,OAAO,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,cAAc,CAAC,IAAI,EAAE,MAAc;QACjC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAiB,EAAE,UAAmB;QACnD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACnE,OAAO,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,UAAmB;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,IAAY,EAAE,UAAkB;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;CACF;AAvCD,sCAuCC;AAEY,QAAA,OAAO,GAAG,IAAI,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../src/plugins/plugins.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,15 @@
1
1
  import { MinimalEmbedding } from "../types";
2
+ export interface PluginMeta {
3
+ key: string;
4
+ name: string;
5
+ description?: string;
6
+ requires?: string[];
7
+ }
2
8
  export interface Plugin {
3
- call(user_input?: string): Promise<string>;
4
- embed(user_input?: string): Promise<MinimalEmbedding[]>;
9
+ call(userInput?: string): Promise<string>;
10
+ embed(userInput?: string): Promise<MinimalEmbedding[]>;
11
+ enable(): void;
12
+ disable(): void;
13
+ isEnabled(): boolean;
14
+ meta: PluginMeta;
5
15
  }
@@ -1,6 +1,9 @@
1
+ import { PluginBase, PluginMeta } from "./PluginBase";
1
2
  import { Plugin } from "./types";
2
3
  import { MinimalEmbedding } from "../types";
3
- export declare class UrlPlugin implements Plugin {
4
+ export declare class UrlPlugin extends PluginBase implements Plugin {
5
+ static readonly meta: PluginMeta;
6
+ constructor();
4
7
  embed(userPrompt: string): Promise<MinimalEmbedding[]>;
5
8
  extractUrls(userPrompt: string): string[];
6
9
  fetchAndParseUrl(url: string): Promise<MinimalEmbedding | null>;
@@ -4,8 +4,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.UrlPlugin = void 0;
7
+ const PluginBase_1 = require("./PluginBase");
7
8
  const loadWebpage_1 = __importDefault(require("../agents/tools/loadWebpage"));
8
- class UrlPlugin {
9
+ class UrlPlugin extends PluginBase_1.PluginBase {
10
+ static meta = {
11
+ key: "url",
12
+ name: "URL Plugin",
13
+ requires: []
14
+ };
15
+ constructor() {
16
+ super(UrlPlugin.meta);
17
+ }
9
18
  async embed(userPrompt) {
10
19
  const urls = this.extractUrls(userPrompt);
11
20
  const embeddings = await Promise.all(urls.map(this.fetchAndParseUrl));
@@ -1 +1 @@
1
- {"version":3,"file":"url.js","sourceRoot":"","sources":["../../../src/plugins/url.ts"],"names":[],"mappings":";;;;;;AAIA,8EAAsD;AAEtD,MAAa,SAAS;IACpB,KAAK,CAAC,KAAK,CAAC,UAAkB;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACtE,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAyB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IACrE,CAAC;IAED,WAAW,CAAC,UAAkB;QAC5B,MAAM,QAAQ,GAAG,sBAAsB,CAAC;QACxC,OAAO,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,GAAW;QAChC,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,IAAA,qBAAW,EAAC,GAAG,CAAC,CAAC;YAEpC,OAAO,CAAC,GAAG,CAAC,oCAAoC,GAAG,GAAG,EAAE,IAAI,CAAC,CAAC;YAE9D,OAAO;gBACL,EAAE,EAAE,GAAG,GAAG,MAAM;gBAChB,IAAI;gBACJ,QAAQ,EAAE,EAAE,GAAG,EAAE;aAClB,CAAC;SACH;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,iCAAiC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC;YAC9D,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,UAAkB;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO,+BAA+B,CAAC;SACxC;QAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC,CAAC,EAAyB,EAAE,CAAC,CAAC,KAAK,IAAI,CACzC,CAAC;QAEF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,OAAO,gDAAgD,CAAC;SACzD;QAED,MAAM,gBAAgB,GAAG,YAAY;aAClC,GAAG,CACF,CAAC,MAAM,EAAE,EAAE,CACT,QAAQ,MAAM,CAAC,QAAQ,CAAC,GAAG,iBAAiB,MAAM,CAAC,IAAI,CAAC,SAAS,CAC/D,CAAC,EACD,GAAG,CACJ,KAAK,CACT;aACA,IAAI,CAAC,aAAa,CAAC,CAAC;QAEvB,OAAO,sEAAsE,gBAAgB,EAAE,CAAC;IAClG,CAAC;CACF;AAxDD,8BAwDC"}
1
+ {"version":3,"file":"url.js","sourceRoot":"","sources":["../../../src/plugins/url.ts"],"names":[],"mappings":";;;;;;AAAA,6CAAsD;AAKtD,8EAAsD;AAEtD,MAAa,SAAU,SAAQ,uBAAU;IACvC,MAAM,CAAU,IAAI,GAAe;QACjC,GAAG,EAAE,KAAK;QACV,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,EAAE;KACb,CAAC;IAEF;QACE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,UAAkB;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACtE,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAyB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IACrE,CAAC;IAED,WAAW,CAAC,UAAkB;QAC5B,MAAM,QAAQ,GAAG,sBAAsB,CAAC;QACxC,OAAO,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,GAAW;QAChC,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,IAAA,qBAAW,EAAC,GAAG,CAAC,CAAC;YAEpC,OAAO,CAAC,GAAG,CAAC,oCAAoC,GAAG,GAAG,EAAE,IAAI,CAAC,CAAC;YAE9D,OAAO;gBACL,EAAE,EAAE,GAAG,GAAG,MAAM;gBAChB,IAAI;gBACJ,QAAQ,EAAE,EAAE,GAAG,EAAE;aAClB,CAAC;SACH;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,iCAAiC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC;YAC9D,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,UAAkB;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO,+BAA+B,CAAC;SACxC;QAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC,CAAC,EAAyB,EAAE,CAAC,CAAC,KAAK,IAAI,CACzC,CAAC;QAEF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,OAAO,gDAAgD,CAAC;SACzD;QAED,MAAM,gBAAgB,GAAG,YAAY;aAClC,GAAG,CACF,CAAC,MAAM,EAAE,EAAE,CACT,QAAQ,MAAM,CAAC,QAAQ,CAAC,GAAG,iBAAiB,MAAM,CAAC,IAAI,CAAC,SAAS,CAC/D,CAAC,EACD,GAAG,CACJ,KAAK,CACT;aACA,IAAI,CAAC,aAAa,CAAC,CAAC;QAEvB,OAAO,sEAAsE,gBAAgB,EAAE,CAAC;IAClG,CAAC;;AAjEH,8BAkEC"}
@@ -1,5 +1,7 @@
1
- import { Plugin } from "./types";
2
- export declare class VimPlugin implements Plugin {
1
+ import { PluginBase, PluginMeta } from "./PluginBase";
2
+ export declare class VimPlugin extends PluginBase {
3
+ static readonly meta: PluginMeta;
4
+ constructor();
3
5
  embed(userPrompt: string): Promise<any[]>;
4
6
  getVimFiles(): Promise<any>;
5
7
  getSourcePath(vimPath: string, dotFile?: boolean): Promise<string>;
@@ -6,7 +6,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.VimPlugin = void 0;
7
7
  const glob_1 = __importDefault(require("glob"));
8
8
  const utils_1 = require("../utils");
9
- class VimPlugin {
9
+ const PluginBase_1 = require("./PluginBase");
10
+ class VimPlugin extends PluginBase_1.PluginBase {
11
+ static meta = {
12
+ key: "vim",
13
+ name: "Vim Plugin",
14
+ requires: []
15
+ };
16
+ constructor() {
17
+ super(VimPlugin.meta);
18
+ }
10
19
  async embed(userPrompt) {
11
20
  return [];
12
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vim.js","sourceRoot":"","sources":["../../../src/plugins/vim.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,oCAA0D;AAG1D,MAAa,SAAS;IACpB,KAAK,CAAC,KAAK,CAAC,UAAkB;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,QAAQ,GAAG,MAAM,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAe,EAAE,OAAO,GAAG,KAAK;QAClD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjD,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtE,MAAM,SAAS,GAAG,UAAU,GAAG,GAAG,GAAG,eAAe,CAAC;QACrD,MAAM,WAAW,GAAG,UAAU,GAAG,IAAI,GAAG,eAAe,CAAC;QAExD,MAAM,eAAe,GAAG,MAAM,IAAA,kBAAU,EAAC,SAAS,CAAC,CAAC;QAEpD,IAAI,eAAe,EAAE;YACnB,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,aAAa,GAAG,MAAM,IAAA,kBAAU,EAAC,WAAW,CAAC,CAAC;QACpD,IAAI,aAAa,EAAE;YACjB,OAAO,WAAW,CAAC;SACpB;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAU,EAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC;SACrD;QAED,MAAM,IAAI,GAAG,MAAM,IAAA,gBAAQ,EAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;YACtB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;SAC3C;QACD,IAAI,IAAI,CAAC,IAAI,GAAG,KAAK,EAAE;YACrB,OAAO,CAAC,KAAK,CACX,oBAAoB,QAAQ,2BAA2B,IAAI,CAAC,IAAI,EAAE,CACnE,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;SAChD;QAED,OAAO,CAAC,GAAG,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,IAAA,gBAAQ,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CACpC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAC7C,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,OAAO,kCAAkC,CAAC;SAC3C;QACD,OAAO,CACL,mDAAmD;YACnD,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;CACF;AApED,8BAoEC"}
1
+ {"version":3,"file":"vim.js","sourceRoot":"","sources":["../../../src/plugins/vim.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,oCAA0D;AAC1D,6CAAsD;AAEtD,MAAa,SAAU,SAAQ,uBAAU;IACvC,MAAM,CAAU,IAAI,GAAe;QACjC,GAAG,EAAE,KAAK;QACV,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,EAAE;KACb,CAAC;IAEF;QACE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,UAAkB;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,QAAQ,GAAG,MAAM,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAe,EAAE,OAAO,GAAG,KAAK;QAClD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjD,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtE,MAAM,SAAS,GAAG,UAAU,GAAG,GAAG,GAAG,eAAe,CAAC;QACrD,MAAM,WAAW,GAAG,UAAU,GAAG,IAAI,GAAG,eAAe,CAAC;QAExD,MAAM,eAAe,GAAG,MAAM,IAAA,kBAAU,EAAC,SAAS,CAAC,CAAC;QAEpD,IAAI,eAAe,EAAE;YACnB,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,aAAa,GAAG,MAAM,IAAA,kBAAU,EAAC,WAAW,CAAC,CAAC;QACpD,IAAI,aAAa,EAAE;YACjB,OAAO,WAAW,CAAC;SACpB;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAU,EAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC;SACrD;QAED,MAAM,IAAI,GAAG,MAAM,IAAA,gBAAQ,EAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;YACtB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;SAC3C;QACD,IAAI,IAAI,CAAC,IAAI,GAAG,KAAK,EAAE;YACrB,OAAO,CAAC,KAAK,CACX,oBAAoB,QAAQ,2BAA2B,IAAI,CAAC,IAAI,EAAE,CACnE,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;SAChD;QAED,OAAO,CAAC,GAAG,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,IAAA,gBAAQ,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CACpC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAC7C,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,OAAO,kCAAkC,CAAC;SAC3C;QACD,OAAO,CACL,mDAAmD;YACnD,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAC7B,CAAC;IACJ,CAAC;;AA7EH,8BA8EC"}