compact-agent 1.16.1 → 1.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/rules.js CHANGED
@@ -173,30 +173,47 @@ export function listRuleSets() {
173
173
  }
174
174
  return result.sort((a, b) => a.language.localeCompare(b.language));
175
175
  }
176
+ // Centralized extension → language map. Used by all three detection
177
+ // paths (whole-repo scan, user-query scan, git-diff scan) so they stay
178
+ // consistent.
179
+ const EXT_TO_LANG = {
180
+ '.ts': 'typescript', '.tsx': 'typescript', '.js': 'typescript', '.jsx': 'typescript',
181
+ '.mjs': 'typescript', '.cjs': 'typescript',
182
+ '.py': 'python', '.pyw': 'python',
183
+ '.go': 'go',
184
+ '.rs': 'rust',
185
+ '.java': 'java',
186
+ '.kt': 'kotlin', '.kts': 'kotlin',
187
+ '.cpp': 'cpp', '.cc': 'cpp', '.cxx': 'cpp', '.h': 'cpp', '.hpp': 'cpp', '.hxx': 'cpp',
188
+ '.cs': 'csharp',
189
+ '.php': 'php',
190
+ '.rb': 'ruby',
191
+ '.swift': 'swift',
192
+ '.dart': 'dart',
193
+ '.fs': 'fsharp', '.fsx': 'fsharp',
194
+ '.sql': 'sql',
195
+ };
196
+ function extOf(name) {
197
+ const dot = name.lastIndexOf('.');
198
+ if (dot < 0)
199
+ return '';
200
+ return name.slice(dot).toLowerCase();
201
+ }
176
202
  /**
177
203
  * Auto-detect languages in the project by file extensions.
204
+ * Broad scan — walks the whole cwd. Used as the fallback when targeted
205
+ * detection (query + git diff) finds nothing.
178
206
  */
179
207
  export function detectLanguages(cwd) {
180
- const extMap = {
181
- '.ts': 'typescript', '.tsx': 'typescript', '.js': 'typescript', '.jsx': 'typescript',
182
- '.py': 'python', '.pyw': 'python',
183
- '.go': 'go',
184
- '.rs': 'rust',
185
- '.java': 'java',
186
- '.kt': 'kotlin', '.kts': 'kotlin',
187
- '.cpp': 'cpp', '.cc': 'cpp', '.cxx': 'cpp', '.h': 'cpp', '.hpp': 'cpp',
188
- '.php': 'php',
189
- };
190
208
  const detected = new Set();
191
209
  try {
192
210
  const files = readdirSync(cwd, { recursive: true, withFileTypes: true });
193
211
  for (const f of files) {
194
212
  if (!f.isFile())
195
213
  continue;
196
- const name = f.name;
197
- const ext = name.slice(name.lastIndexOf('.'));
198
- if (extMap[ext])
199
- detected.add(extMap[ext]);
214
+ const lang = EXT_TO_LANG[extOf(f.name)];
215
+ if (lang)
216
+ detected.add(lang);
200
217
  if (detected.size >= 5)
201
218
  break; // enough
202
219
  }
@@ -207,17 +224,95 @@ export function detectLanguages(cwd) {
207
224
  return Array.from(detected);
208
225
  }
209
226
  /**
210
- * Build rules section for system prompt based on detected languages.
227
+ * Detect languages mentioned in a free-form user message via file-path
228
+ * extensions. Matches paths like `src/foo.ts`, `~/Downloads/bar.py`,
229
+ * `C:\\path\\baz.go`. Ignores bare extensions like ".ts" alone — they're
230
+ * too often false positives (version strings, regex patterns).
211
231
  */
212
- export function buildRulesPrompt(cwd) {
213
- const languages = detectLanguages(cwd);
232
+ export function detectLanguagesFromQuery(query) {
233
+ const detected = new Set();
234
+ if (!query)
235
+ return [];
236
+ // Match path-like tokens: at least one [\w/\\.-] before the extension
237
+ const pathRe = /[\w/\\.-]+(\.[a-z]{1,5})\b/gi;
238
+ let m;
239
+ while ((m = pathRe.exec(query)) !== null) {
240
+ const lang = EXT_TO_LANG[m[1].toLowerCase()];
241
+ if (lang)
242
+ detected.add(lang);
243
+ }
244
+ return [...detected];
245
+ }
246
+ /**
247
+ * Detect languages from files changed in the working tree. Uses
248
+ * `git diff --name-only HEAD` (uncommitted + staged) and falls back to
249
+ * `git status --porcelain` if the diff command fails. Times out fast
250
+ * to never block startup.
251
+ */
252
+ export function detectLanguagesFromGit(cwd) {
253
+ const detected = new Set();
254
+ try {
255
+ // Dynamic require so this module stays usable in non-git contexts
256
+ // without importing the child_process spawn cost unnecessarily.
257
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
258
+ const { execSync } = require('node:child_process');
259
+ const out = execSync('git diff --name-only HEAD 2>nul || git status --porcelain', {
260
+ cwd, timeout: 2000, stdio: ['ignore', 'pipe', 'ignore'], encoding: 'utf-8',
261
+ });
262
+ for (const line of out.split('\n')) {
263
+ // Strip git-status porcelain prefix (XY space)
264
+ const path = line.replace(/^[\sMADRCU?!]+/, '').trim();
265
+ if (!path)
266
+ continue;
267
+ const lang = EXT_TO_LANG[extOf(path)];
268
+ if (lang)
269
+ detected.add(lang);
270
+ }
271
+ }
272
+ catch {
273
+ // Not a git repo, no changes, or git unavailable — silent
274
+ }
275
+ return [...detected];
276
+ }
277
+ /**
278
+ * Build rules section for system prompt. Detection prefers TARGETED
279
+ * sources (user query + git diff) over a broad repo scan, so polyglot
280
+ * repos don't have to inject every language's rules on every turn.
281
+ *
282
+ * priority 1: file paths mentioned in the user's current message
283
+ * priority 2: files changed in the working tree (git diff)
284
+ * fallback: broad recursive scan of cwd (the old behavior)
285
+ *
286
+ * Returns "" if no languages detected at all. Total injected length
287
+ * capped at ~3000 chars to avoid bloat (rules-per-language are usually
288
+ * 500-1500 chars each, so 3-4 languages fit comfortably).
289
+ */
290
+ export function buildRulesPrompt(cwd, userQuery) {
291
+ let languages = [];
292
+ // Priority 1+2: query + git
293
+ const fromQuery = userQuery ? detectLanguagesFromQuery(userQuery) : [];
294
+ const fromGit = detectLanguagesFromGit(cwd);
295
+ const targeted = [...new Set([...fromQuery, ...fromGit])];
296
+ if (targeted.length > 0) {
297
+ languages = targeted;
298
+ }
299
+ else {
300
+ // Fallback to broad scan
301
+ languages = detectLanguages(cwd);
302
+ }
214
303
  if (languages.length === 0)
215
304
  return '';
216
305
  const sections = [];
306
+ let totalLen = 0;
307
+ const CAP = 3000;
217
308
  for (const lang of languages) {
218
309
  const rules = loadRules(lang);
219
- if (rules)
220
- sections.push(rules);
310
+ if (!rules)
311
+ continue;
312
+ if (totalLen + rules.length > CAP && sections.length > 0)
313
+ break;
314
+ sections.push(rules);
315
+ totalLen += rules.length;
221
316
  }
222
317
  if (sections.length === 0)
223
318
  return '';
package/dist/rules.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../src/rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../src/rules.ts"],"names":[],"mappings":"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"}
@@ -55,8 +55,11 @@ export function buildSystemPrompt(config, cwd, mode = 'dev', userQuery) {
55
55
  catch { }
56
56
  // Mode-specific prompt addition
57
57
  const modeAddition = getModePromptAddition(mode);
58
- // Language-specific rules
59
- const rulesAddition = buildRulesPrompt(cwd);
58
+ // Language-specific rules. Pass userQuery so the detector can scope
59
+ // injection to languages mentioned in the message or changed in git
60
+ // — narrower than the old "every language found anywhere in cwd"
61
+ // sweep, which over-injected in polyglot repos.
62
+ const rulesAddition = buildRulesPrompt(cwd, userQuery);
60
63
  // Relevant instincts from learning system
61
64
  let instinctAddition = '';
62
65
  if (userQuery) {
@@ -1 +1 @@
1
- {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "compact-agent",
3
- "version": "1.16.1",
3
+ "version": "1.18.0",
4
4
  "description": "A dense, feature-rich AI coding agent for the terminal. Built-in voice dictation (Whisper) + TTS readout (ElevenLabs) + screen-reader mode for blind / low-vision users. 80+ slash commands, 9 modes including Hermes self-improving loop, multi-agent orchestration, bundled everything-claude-code skills library, learning system, and observable LLM transport. Works with OpenRouter, OpenAI, Anthropic-compatible, Ollama, LM Studio, DeepSeek, or any OpenAI-compatible API.",
5
5
  "type": "module",
6
6
  "license": "MIT",