@bbyqtbean/taco-helper 0.2.7 → 0.2.8

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.
@@ -1 +1 @@
1
- {"version":3,"file":"config-writer.d.ts","sourceRoot":"","sources":["../../src/agents/config-writer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQzC;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BnE;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAgCvE;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAetE;AAoDD;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAsD7F;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAoD7F"}
1
+ {"version":3,"file":"config-writer.d.ts","sourceRoot":"","sources":["../../src/agents/config-writer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQzC;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAmCnE;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAoCvE;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAkBtE;AAmJD;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAsD7F;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAoD7F"}
@@ -23,6 +23,10 @@ export async function writeConfig(agent) {
23
23
  if (!existsSync(dir)) {
24
24
  await mkdir(dir, { recursive: true });
25
25
  }
26
+ if (agent.format === 'toml') {
27
+ await writeTomlConfig(agent);
28
+ return;
29
+ }
26
30
  let config = {};
27
31
  // If the file already exists, parse it
28
32
  if (existsSync(configPath)) {
@@ -55,6 +59,9 @@ export async function removeConfig(agent) {
55
59
  if (!existsSync(configPath)) {
56
60
  return false; // Nothing to remove
57
61
  }
62
+ if (agent.format === 'toml') {
63
+ return removeTomlConfig(agent);
64
+ }
58
65
  let config;
59
66
  try {
60
67
  const raw = await readFile(configPath, 'utf-8');
@@ -89,6 +96,9 @@ export async function checkConfig(agent) {
89
96
  }
90
97
  try {
91
98
  const raw = await readFile(configPath, 'utf-8');
99
+ if (agent.format === 'toml') {
100
+ return tomlTacoTableRegex(wrapperKey).test(raw);
101
+ }
92
102
  const config = JSON.parse(raw);
93
103
  const servers = config[wrapperKey];
94
104
  return !!(servers && 'taco' in servers);
@@ -97,6 +107,91 @@ export async function checkConfig(agent) {
97
107
  return false;
98
108
  }
99
109
  }
110
+ /** Matches the `[mcp_servers.taco]` table header, tolerating whitespace and quoted keys. */
111
+ function tomlTacoTableRegex(wrapperKey) {
112
+ return new RegExp(`^\\s*\\[${wrapperKey}\\.("taco"|taco)\\]`, 'm');
113
+ }
114
+ /** The TOML block written into Codex-style configs, wrapped in sentinels for clean removal. */
115
+ function tacoTomlBlock(wrapperKey) {
116
+ return [
117
+ TOML_SENTINEL_START,
118
+ `[${wrapperKey}.taco]`,
119
+ `command = "${TACO_MCP_ENTRY.command}"`,
120
+ `args = [${TACO_MCP_ENTRY.args.map((a) => `"${a}"`).join(', ')}]`,
121
+ TOML_SENTINEL_END,
122
+ ].join('\n');
123
+ }
124
+ const TOML_SENTINEL_START = '# --- taco-start ---';
125
+ const TOML_SENTINEL_END = '# --- taco-end ---';
126
+ /**
127
+ * Append the taco MCP server table to a TOML config (e.g. Codex's ~/.codex/config.toml).
128
+ *
129
+ * The file is treated as text rather than parsed: a `[mcp_servers.taco]` table is
130
+ * appended at the end, preserving the user's existing settings and comments.
131
+ * (A table header at the end of file cannot affect earlier tables in TOML.)
132
+ */
133
+ async function writeTomlConfig(agent) {
134
+ const { configPath, wrapperKey } = agent;
135
+ let content = '';
136
+ if (existsSync(configPath)) {
137
+ content = await readFile(configPath, 'utf-8');
138
+ if (tomlTacoTableRegex(wrapperKey).test(content)) {
139
+ return; // Already configured
140
+ }
141
+ }
142
+ const trimmed = content.trimEnd();
143
+ const next = (trimmed ? trimmed + '\n\n' : '') + tacoTomlBlock(wrapperKey) + '\n';
144
+ await writeFile(configPath, next, 'utf-8');
145
+ }
146
+ /**
147
+ * Remove the taco table from a TOML config.
148
+ *
149
+ * Removes the sentinel-wrapped block written by writeTomlConfig. If the table
150
+ * exists without sentinels (user moved/edited it), removes from the table header
151
+ * up to the next table header or end of file.
152
+ */
153
+ async function removeTomlConfig(agent) {
154
+ const { configPath, wrapperKey } = agent;
155
+ const content = await readFile(configPath, 'utf-8');
156
+ const lines = content.split('\n');
157
+ const result = [];
158
+ let removed = false;
159
+ let skipping = null;
160
+ const tableHeader = tomlTacoTableRegex(wrapperKey);
161
+ for (const line of lines) {
162
+ const trimmedLine = line.trim();
163
+ if (skipping === 'sentinel') {
164
+ if (trimmedLine === TOML_SENTINEL_END)
165
+ skipping = null;
166
+ continue;
167
+ }
168
+ if (skipping === 'table') {
169
+ // Stop skipping at the next table/array-of-tables header
170
+ if (/^\s*\[/.test(line) && !tableHeader.test(line)) {
171
+ skipping = null;
172
+ result.push(line);
173
+ }
174
+ continue;
175
+ }
176
+ if (trimmedLine === TOML_SENTINEL_START) {
177
+ // Peek not needed: sentinels are only ever written around the taco block
178
+ skipping = 'sentinel';
179
+ removed = true;
180
+ continue;
181
+ }
182
+ if (tableHeader.test(line)) {
183
+ skipping = 'table';
184
+ removed = true;
185
+ continue;
186
+ }
187
+ result.push(line);
188
+ }
189
+ if (!removed) {
190
+ return false;
191
+ }
192
+ await writeFile(configPath, result.join('\n').trimEnd() + '\n', 'utf-8');
193
+ return true;
194
+ }
100
195
  const SENTINEL_START = '# --- taco-start ---';
101
196
  const SENTINEL_END = '# --- taco-end ---';
102
197
  const TACO_RULES_CONTENT = `${SENTINEL_START}
@@ -1 +1 @@
1
- {"version":3,"file":"config-writer.js","sourceRoot":"","sources":["../../src/agents/config-writer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAGrC,uEAAuE;AACvE,MAAM,cAAc,GAAG;IACnB,OAAO,EAAE,KAAK;IACd,IAAI,EAAE,CAAC,IAAI,EAAE,+BAA+B,EAAE,KAAK,CAAC;CACvD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAkB;IAChD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAEzC,qCAAqC;IACrC,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAChC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACnB,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,MAAM,GAA4B,EAAE,CAAC;IAEzC,uCAAuC;IACvC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAChD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACL,kDAAkD;YAClD,OAAO,CAAC,KAAK,CAAC,uBAAuB,UAAU,6BAA6B,CAAC,CAAC;YAC9E,MAAM,GAAG,EAAE,CAAC;QAChB,CAAC;IACL,CAAC;IAED,gEAAgE;IAChE,MAAM,OAAO,GAAI,MAAM,CAAC,UAAU,CAA6B,IAAI,EAAE,CAAC;IACtE,OAAO,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC;IACjC,MAAM,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;IAE7B,aAAa;IACb,MAAM,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACjF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAAkB;IACjD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAEzC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,CAAC,oBAAoB;IACtC,CAAC;IAED,IAAI,MAA+B,CAAC;IACpC,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,CAAC,KAAK,CAAC,uBAAuB,UAAU,uBAAuB,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAwC,CAAC;IAC1E,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC,CAAC,6BAA6B;IAC/C,CAAC;IAED,6BAA6B;IAC7B,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvB,iDAAiD;IACjD,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAED,aAAa;IACb,MAAM,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7E,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAkB;IAChD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAEzC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAwC,CAAC;QAC1E,OAAO,CAAC,CAAC,CAAC,OAAO,IAAI,MAAM,IAAI,OAAO,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC;AAED,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAC9C,MAAM,YAAY,GAAG,oBAAoB,CAAC;AAE1C,MAAM,kBAAkB,GAAG,GAAG,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6C1C,YAAY,EAAE,CAAC;AAEjB;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAkB,EAAE,UAAkB;IACvE,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IAEhC,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC,CAAC,0BAA0B;IAC5C,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAElD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACzB,iDAAiD;QACjD,MAAM,SAAS,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,yDAAyD;IACzD,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACD,OAAO,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACnC,wCAAwC;QACxC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,cAAc,GAAG,KAAK,CAAC;QAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;gBAC7B,cAAc,GAAG,IAAI,CAAC;gBACtB,SAAS;YACb,CAAC;YACD,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;gBAC3B,cAAc,GAAG,KAAK,CAAC;gBACvB,SAAS;YACb,CAAC;YACD,IAAI,CAAC,cAAc,EAAE,CAAC;gBAClB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;QACL,CAAC;QAED,0BAA0B;QAC1B,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QACjD,MAAM,SAAS,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,GAAG,kBAAkB,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;QAClF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,2BAA2B;IAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAClC,MAAM,SAAS,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,GAAG,kBAAkB,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;IAClF,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAkB,EAAE,UAAkB;IACvE,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IAEhC,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC,CAAC,0BAA0B;IAC5C,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAElD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,CAAC,mBAAmB;IACrC,CAAC;IAED,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACD,OAAO,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,CAAC,KAAK,CAAC,sBAAsB,SAAS,4BAA4B,CAAC,CAAC;QAC3E,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAE5B,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;YAC7B,cAAc,GAAG,IAAI,CAAC;YACtB,aAAa,GAAG,IAAI,CAAC;YACrB,SAAS,CAAC,iBAAiB;QAC/B,CAAC;QAED,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;YAC3B,cAAc,GAAG,KAAK,CAAC;YACvB,SAAS,CAAC,iBAAiB;QAC/B,CAAC;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;YAClB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACL,CAAC;IAED,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC,CAAC,wBAAwB;IAC1C,CAAC;IAED,8DAA8D;IAC9D,MAAM,SAAS,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"config-writer.js","sourceRoot":"","sources":["../../src/agents/config-writer.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ export interface AgentConfig {
10
10
  wrapperKey: string;
11
11
  /** Filename for the agent's rules file (e.g. ".cursorrules", "CLAUDE.md"). null if the agent has no rules file. */
12
12
  rulesFileName: string | null;
13
+ /** Config file format. TOML configs (Codex) are edited as sentinel-wrapped text blocks rather than parsed JSON. */
14
+ format: 'json' | 'toml';
13
15
  }
14
16
  export declare const AGENTS: Record<string, AgentConfig>;
15
17
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,CAAC;IACnB,mHAAmH;IACnH,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAID,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CA2C9C,CAAC;AAEF;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAEjE;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAEvC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,CAAC;IACnB,mHAAmH;IACnH,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,mHAAmH;IACnH,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CAC3B;AAID,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAiD9C,CAAC;AAEF;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAEjE;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAEvC"}
@@ -11,6 +11,7 @@ export const AGENTS = {
11
11
  configPath: join(home, '.cursor', 'mcp.json'),
12
12
  wrapperKey: 'mcpServers',
13
13
  rulesFileName: '.cursorrules',
14
+ format: 'json',
14
15
  },
15
16
  'claude-desktop': {
16
17
  name: 'Claude Desktop',
@@ -18,6 +19,7 @@ export const AGENTS = {
18
19
  configPath: join(home, 'Library', 'Application Support', 'Claude', 'claude_desktop_config.json'),
19
20
  wrapperKey: 'mcpServers',
20
21
  rulesFileName: null,
22
+ format: 'json',
21
23
  },
22
24
  'claude-code': {
23
25
  name: 'Claude Code',
@@ -25,13 +27,15 @@ export const AGENTS = {
25
27
  configPath: join(home, '.claude.json'),
26
28
  wrapperKey: 'mcpServers',
27
29
  rulesFileName: 'CLAUDE.md',
30
+ format: 'json',
28
31
  },
29
32
  windsurf: {
30
33
  name: 'Windsurf',
31
34
  agentId: 'windsurf',
32
- configPath: join(home, '.windsurf', 'mcp.json'),
35
+ configPath: join(home, '.codeium', 'windsurf', 'mcp_config.json'),
33
36
  wrapperKey: 'mcpServers',
34
37
  rulesFileName: '.windsurfrules',
38
+ format: 'json',
35
39
  },
36
40
  antigravity: {
37
41
  name: 'Antigravity',
@@ -39,13 +43,15 @@ export const AGENTS = {
39
43
  configPath: join(home, '.gemini', 'antigravity', 'mcp_config.json'),
40
44
  wrapperKey: 'mcpServers',
41
45
  rulesFileName: '.antigravityrules',
46
+ format: 'json',
42
47
  },
43
48
  codex: {
44
49
  name: 'Codex (ChatGPT)',
45
50
  agentId: 'codex',
46
- configPath: join(home, '.codex', 'mcp.json'),
47
- wrapperKey: 'mcpServers',
48
- rulesFileName: '.codexrules',
51
+ configPath: join(home, '.codex', 'config.toml'),
52
+ wrapperKey: 'mcp_servers',
53
+ rulesFileName: 'AGENTS.md',
54
+ format: 'toml',
49
55
  },
50
56
  };
51
57
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAa5B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;AAEvB,MAAM,CAAC,MAAM,MAAM,GAAgC;IAC/C,MAAM,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,QAAQ;QACjB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;QAC7C,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,cAAc;KAChC;IACD,gBAAgB,EAAE;QACd,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,gBAAgB;QACzB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,QAAQ,EAAE,4BAA4B,CAAC;QAChG,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,IAAI;KACtB;IACD,aAAa,EAAE;QACX,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;QACtC,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,WAAW;KAC7B;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC;QAC/C,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,gBAAgB;KAClC;IACD,WAAW,EAAE;QACT,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,iBAAiB,CAAC;QACnE,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,mBAAmB;KACrC;IACD,KAAK,EAAE;QACH,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC;QAC5C,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,aAAa;KAC/B;CACJ,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAe;IACpC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY;IACxB,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAe5B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;AAEvB,MAAM,CAAC,MAAM,MAAM,GAAgC;IAC/C,MAAM,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,QAAQ;QACjB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;QAC7C,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,cAAc;QAC7B,MAAM,EAAE,MAAM;KACjB;IACD,gBAAgB,EAAE;QACd,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,gBAAgB;QACzB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,QAAQ,EAAE,4BAA4B,CAAC;QAChG,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,MAAM;KACjB;IACD,aAAa,EAAE;QACX,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;QACtC,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,WAAW;QAC1B,MAAM,EAAE,MAAM;KACjB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,CAAC;QACjE,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,gBAAgB;QAC/B,MAAM,EAAE,MAAM;KACjB;IACD,WAAW,EAAE;QACT,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,iBAAiB,CAAC;QACnE,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,mBAAmB;QAClC,MAAM,EAAE,MAAM;KACjB;IACD,KAAK,EAAE;QACH,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,CAAC;QAC/C,UAAU,EAAE,aAAa;QACzB,aAAa,EAAE,WAAW;QAC1B,MAAM,EAAE,MAAM;KACjB;CACJ,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAe;IACpC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY;IACxB,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
package/dist/index.js CHANGED
File without changes
package/package.json CHANGED
@@ -1,17 +1,18 @@
1
1
  {
2
2
  "name": "@bbyqtbean/taco-helper",
3
- "version": "0.2.7",
3
+ "version": "0.2.8",
4
4
  "description": "MCP server + CLI for connecting the Taco Chrome extension to AI agents",
5
5
  "mcpName": "taco-helper",
6
6
  "type": "module",
7
7
  "main": "./dist/index.js",
8
8
  "bin": {
9
- "taco-helper": "./dist/index.js"
9
+ "taco-helper": "dist/index.js"
10
10
  },
11
11
  "scripts": {
12
12
  "build": "tsc",
13
13
  "dev": "tsc --watch",
14
- "prepublishOnly": "npm run build"
14
+ "prepublishOnly": "npm run build",
15
+ "test": "npm run build && node --test \"test/**/*.test.js\""
15
16
  },
16
17
  "keywords": [
17
18
  "mcp",
package/dist/ipc.d.ts DELETED
@@ -1,55 +0,0 @@
1
- /**
2
- * IPC Protocol — shared types for shim ↔ daemon communication.
3
- * Messages are newline-delimited JSON over a Unix socket at ~/.taco/daemon.sock.
4
- *
5
- * See daemon-mcp-strategy.md (IPC Protocol section) for the full spec.
6
- */
7
- export declare const TACO_DIR: string;
8
- export declare const SOCKET_PATH: string;
9
- export declare const LOCK_PATH: string;
10
- export declare const PROJECTS_PATH: string;
11
- export declare const CONFIG_PATH: string;
12
- export declare const DB_PATH: string;
13
- export interface ConnectMessage {
14
- event: 'connect';
15
- cwd: string;
16
- pid: number;
17
- agent: string;
18
- }
19
- export interface DisconnectMessage {
20
- event: 'disconnect';
21
- shimId: string;
22
- }
23
- export interface ToolCallMessage {
24
- event: 'tool_call';
25
- shimId: string;
26
- tool: string;
27
- args: Record<string, unknown>;
28
- }
29
- export type ShimToDaemonMessage = ConnectMessage | DisconnectMessage | ToolCallMessage;
30
- export interface ConnectedMessage {
31
- event: 'connected';
32
- shimId: string;
33
- }
34
- export interface ToolResultMessage {
35
- event: 'tool_result';
36
- shimId: string;
37
- result: unknown;
38
- error?: string;
39
- }
40
- export interface SampleMessage {
41
- event: 'sample';
42
- }
43
- export type DaemonToShimMessage = ConnectedMessage | ToolResultMessage | SampleMessage;
44
- /**
45
- * Encode a message as newline-delimited JSON.
46
- */
47
- export declare function encodeMessage(msg: unknown): string;
48
- /**
49
- * Parse newline-delimited JSON buffer. Returns parsed messages and any remaining partial data.
50
- */
51
- export declare function parseMessages(buffer: string): {
52
- messages: any[];
53
- remainder: string;
54
- };
55
- //# sourceMappingURL=ipc.d.ts.map
package/dist/ipc.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"ipc.d.ts","sourceRoot":"","sources":["../src/ipc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,eAAO,MAAM,QAAQ,QAA2B,CAAC;AACjD,eAAO,MAAM,WAAW,QAAgC,CAAC;AACzD,eAAO,MAAM,SAAS,QAAgC,CAAC;AACvD,eAAO,MAAM,aAAa,QAAkC,CAAC;AAC7D,eAAO,MAAM,WAAW,QAAgC,CAAC;AACzD,eAAO,MAAM,OAAO,QAAgC,CAAC;AAIrD,MAAM,WAAW,cAAc;IAC3B,KAAK,EAAE,SAAS,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,WAAW,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG,iBAAiB,GAAG,eAAe,CAAC;AAIvF,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,WAAW,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC1B,KAAK,EAAE,QAAQ,CAAC;CACnB;AAED,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,aAAa,CAAC;AAIvF;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAElD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAgBpF"}
package/dist/ipc.js DELETED
@@ -1,43 +0,0 @@
1
- /**
2
- * IPC Protocol — shared types for shim ↔ daemon communication.
3
- * Messages are newline-delimited JSON over a Unix socket at ~/.taco/daemon.sock.
4
- *
5
- * See daemon-mcp-strategy.md (IPC Protocol section) for the full spec.
6
- */
7
- import { join } from 'path';
8
- import { homedir } from 'os';
9
- // ─── Paths ──────────────────────────────────────────────────────────
10
- export const TACO_DIR = join(homedir(), '.taco');
11
- export const SOCKET_PATH = join(TACO_DIR, 'daemon.sock');
12
- export const LOCK_PATH = join(TACO_DIR, 'daemon.lock');
13
- export const PROJECTS_PATH = join(TACO_DIR, 'projects.json');
14
- export const CONFIG_PATH = join(TACO_DIR, 'config.json');
15
- export const DB_PATH = join(TACO_DIR, 'comments.db');
16
- // ─── Helpers ────────────────────────────────────────────────────────
17
- /**
18
- * Encode a message as newline-delimited JSON.
19
- */
20
- export function encodeMessage(msg) {
21
- return JSON.stringify(msg) + '\n';
22
- }
23
- /**
24
- * Parse newline-delimited JSON buffer. Returns parsed messages and any remaining partial data.
25
- */
26
- export function parseMessages(buffer) {
27
- const messages = [];
28
- const lines = buffer.split('\n');
29
- const remainder = lines.pop() ?? ''; // last element is either empty or partial
30
- for (const line of lines) {
31
- const trimmed = line.trim();
32
- if (!trimmed)
33
- continue;
34
- try {
35
- messages.push(JSON.parse(trimmed));
36
- }
37
- catch {
38
- console.error('🌮 [IPC] Failed to parse message:', trimmed);
39
- }
40
- }
41
- return { messages, remainder };
42
- }
43
- //# sourceMappingURL=ipc.js.map
package/dist/ipc.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"ipc.js","sourceRoot":"","sources":["../src/ipc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAE7B,uEAAuE;AAEvE,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;AACjD,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AACzD,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AACvD,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;AAC7D,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AACzD,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AA6CrD,uEAAuE;AAEvE;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,GAAY;IACtC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IACxC,MAAM,QAAQ,GAAU,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,0CAA0C;IAE/E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,OAAO,CAAC,CAAC;QAChE,CAAC;IACL,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AACnC,CAAC"}