@aexol/spectral 0.9.14 → 0.9.16
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/memory/config.d.ts +12 -0
- package/dist/memory/config.d.ts.map +1 -1
- package/dist/memory/config.js +27 -0
- package/dist/memory/hooks/compaction-hook.d.ts.map +1 -1
- package/dist/memory/hooks/compaction-hook.js +5 -2
- package/dist/memory/hooks/compaction-trigger.d.ts.map +1 -1
- package/dist/memory/hooks/compaction-trigger.js +3 -2
- package/dist/memory/hooks/inter-agent-receiver.d.ts +3 -0
- package/dist/memory/hooks/inter-agent-receiver.d.ts.map +1 -0
- package/dist/memory/hooks/inter-agent-receiver.js +183 -0
- package/dist/memory/hooks/observer-trigger.d.ts.map +1 -1
- package/dist/memory/hooks/observer-trigger.js +14 -0
- package/dist/memory/index.d.ts.map +1 -1
- package/dist/memory/index.js +6 -0
- package/dist/memory/inter-agent-broker-singleton.d.ts +5 -0
- package/dist/memory/inter-agent-broker-singleton.d.ts.map +1 -0
- package/dist/memory/inter-agent-broker-singleton.js +7 -0
- package/dist/memory/inter-agent-relay.d.ts +7 -0
- package/dist/memory/inter-agent-relay.d.ts.map +1 -0
- package/dist/memory/inter-agent-relay.js +41 -0
- package/dist/memory/project-observations-store.d.ts +7 -0
- package/dist/memory/project-observations-store.d.ts.map +1 -1
- package/dist/memory/tools/receive-agent-observations.d.ts +17 -0
- package/dist/memory/tools/receive-agent-observations.d.ts.map +1 -0
- package/dist/memory/tools/receive-agent-observations.js +68 -0
- package/dist/memory/tools/share-project-observation.d.ts +8 -0
- package/dist/memory/tools/share-project-observation.d.ts.map +1 -0
- package/dist/memory/tools/share-project-observation.js +106 -0
- package/dist/relay/dispatcher.d.ts +1 -1
- package/dist/relay/dispatcher.d.ts.map +1 -1
- package/dist/relay/dispatcher.js +13 -0
- package/dist/sdk/coding-agent/core/agent-session.d.ts +10 -0
- package/dist/sdk/coding-agent/core/agent-session.d.ts.map +1 -1
- package/dist/sdk/coding-agent/core/agent-session.js +37 -1
- package/dist/server/handlers/files-search.d.ts +26 -0
- package/dist/server/handlers/files-search.d.ts.map +1 -0
- package/dist/server/handlers/files-search.js +89 -0
- package/dist/server/inter-agent-broker.d.ts +111 -0
- package/dist/server/inter-agent-broker.d.ts.map +1 -0
- package/dist/server/inter-agent-broker.js +136 -0
- package/dist/server/session-stream.d.ts +1 -0
- package/dist/server/session-stream.d.ts.map +1 -1
- package/dist/server/session-stream.js +55 -6
- package/dist/server/storage.d.ts +28 -0
- package/dist/server/storage.d.ts.map +1 -1
- package/dist/server/storage.js +101 -0
- package/dist/server/wire.d.ts +15 -0
- package/dist/server/wire.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { Type } from "../../sdk/ai/index.js";
|
|
2
|
+
import { defineTool } from "../../sdk/coding-agent/index.js";
|
|
3
|
+
import { getProjectObsStore } from "../project-observations-store.js";
|
|
4
|
+
import { getInterAgentBroker } from "../inter-agent-broker-singleton.js";
|
|
5
|
+
import { getMemoryState } from "../branch.js";
|
|
6
|
+
import { RELEVANCE_VALUES } from "../types.js";
|
|
7
|
+
export const SHARE_PROJECT_OBSERVATION_TOOL_NAME = "share_project_observation";
|
|
8
|
+
function findObservationInBranch(branch, memoryId) {
|
|
9
|
+
if (!Array.isArray(branch))
|
|
10
|
+
return null;
|
|
11
|
+
const state = getMemoryState(branch);
|
|
12
|
+
for (const obs of state.committedObs) {
|
|
13
|
+
if (obs.id === memoryId) {
|
|
14
|
+
return { id: obs.id, content: obs.content, relevance: obs.relevance, originType: "observation" };
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
for (const obs of state.pendingObs) {
|
|
18
|
+
if (obs.id === memoryId) {
|
|
19
|
+
return { id: obs.id, content: obs.content, relevance: obs.relevance, originType: "observation" };
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
for (const reflection of state.reflections) {
|
|
23
|
+
const id = typeof reflection === "string" ? undefined : reflection.id;
|
|
24
|
+
const content = typeof reflection === "string" ? reflection : reflection.content;
|
|
25
|
+
if (id === memoryId) {
|
|
26
|
+
return { id, content, relevance: "high", originType: "reflection" };
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
function findObservationInStore(store, projectId, memoryId) {
|
|
32
|
+
const obs = store.getProjectObservationById(projectId, memoryId);
|
|
33
|
+
if (!obs)
|
|
34
|
+
return null;
|
|
35
|
+
const relevance = RELEVANCE_VALUES.includes(obs.relevance)
|
|
36
|
+
? obs.relevance
|
|
37
|
+
: "medium";
|
|
38
|
+
return { id: obs.id, content: obs.content, relevance, originType: "observation" };
|
|
39
|
+
}
|
|
40
|
+
export const shareProjectObservationTool = defineTool({
|
|
41
|
+
name: SHARE_PROJECT_OBSERVATION_TOOL_NAME,
|
|
42
|
+
label: "Share observation with other agents",
|
|
43
|
+
description: "Broadcast a project observation or reflection to other active sessions working on this project. " +
|
|
44
|
+
"Use this when you discover a fact another agent should know immediately, " +
|
|
45
|
+
"rather than waiting for them to search project memory.",
|
|
46
|
+
promptSnippet: "Use share_project_observation(memory_id) to push a known observation to other active sessions.",
|
|
47
|
+
promptGuidelines: [
|
|
48
|
+
"Only share observations that are relevant to collaborators on the same project.",
|
|
49
|
+
"Prefer sharing high/critical relevance facts — avoid noise.",
|
|
50
|
+
"The memory_id must be a 12-character lowercase hex id from the current branch or project memory.",
|
|
51
|
+
],
|
|
52
|
+
parameters: Type.Object({
|
|
53
|
+
memory_id: Type.String({
|
|
54
|
+
pattern: "^[a-f0-9]{12}$",
|
|
55
|
+
description: "12-character observation/reflection id.",
|
|
56
|
+
}),
|
|
57
|
+
}),
|
|
58
|
+
async execute(_toolCallId, params, _signal, _onUpdate, ctx) {
|
|
59
|
+
const store = getProjectObsStore();
|
|
60
|
+
const broker = getInterAgentBroker();
|
|
61
|
+
if (!store || !broker) {
|
|
62
|
+
return {
|
|
63
|
+
content: [{ type: "text", text: "Sharing is unavailable outside spectral serve." }],
|
|
64
|
+
details: { status: "unavailable" },
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
const projectId = store.getProjectByCwd(ctx.cwd);
|
|
68
|
+
const sessionId = ctx.sessionManager.getSessionId?.();
|
|
69
|
+
if (!projectId || !sessionId) {
|
|
70
|
+
return {
|
|
71
|
+
content: [{ type: "text", text: "No project/session context." }],
|
|
72
|
+
details: { status: "no_context" },
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
const branch = ctx.sessionManager.getBranch?.();
|
|
76
|
+
const obs = findObservationInBranch(branch, params.memory_id)
|
|
77
|
+
?? findObservationInStore(store, projectId, params.memory_id);
|
|
78
|
+
if (!obs) {
|
|
79
|
+
return {
|
|
80
|
+
content: [{ type: "text", text: `Observation \`${params.memory_id}\` not found.` }],
|
|
81
|
+
details: { status: "not_found" },
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
broker.send({
|
|
85
|
+
projectId,
|
|
86
|
+
channel: "memory",
|
|
87
|
+
senderSessionId: sessionId,
|
|
88
|
+
kind: "observation",
|
|
89
|
+
payload: JSON.stringify({
|
|
90
|
+
memoryId: obs.id,
|
|
91
|
+
content: obs.content,
|
|
92
|
+
relevance: obs.relevance,
|
|
93
|
+
sourceSessionId: sessionId,
|
|
94
|
+
originType: obs.originType,
|
|
95
|
+
timestamp: new Date().toISOString(),
|
|
96
|
+
}),
|
|
97
|
+
});
|
|
98
|
+
return {
|
|
99
|
+
content: [{ type: "text", text: `Shared observation \`${obs.id}\` with other project sessions.` }],
|
|
100
|
+
details: { status: "ok", memoryId: obs.id },
|
|
101
|
+
};
|
|
102
|
+
},
|
|
103
|
+
});
|
|
104
|
+
export function registerShareProjectObservationTool(ext) {
|
|
105
|
+
ext.registerTool(shareProjectObservationTool);
|
|
106
|
+
}
|
|
@@ -48,7 +48,7 @@ import type { RelayClient } from "./client.js";
|
|
|
48
48
|
* `id` is populated when the route had an `:id` placeholder.
|
|
49
49
|
*/
|
|
50
50
|
interface RouteMatch {
|
|
51
|
-
route: "list_projects" | "create_project" | "update_project" | "delete_project" | "bind_studio" | "list_project_sessions" | "create_session" | "get_session" | "update_session" | "delete_session" | "get_session_memory" | "get_session_memory_details" | "compact_session" | "remember_and_delete_session" | "fork_session" | "list_path_autocomplete" | "pick_directory" | "enqueue_prompt" | "get_prompt_queue" | "remove_prompt" | "clear_prompt_queue" | "list_mcp_status" | "get_settings" | "put_settings";
|
|
51
|
+
route: "list_projects" | "create_project" | "update_project" | "delete_project" | "bind_studio" | "list_project_sessions" | "create_session" | "get_session" | "update_session" | "delete_session" | "get_session_memory" | "get_session_memory_details" | "compact_session" | "remember_and_delete_session" | "fork_session" | "list_path_autocomplete" | "pick_directory" | "search_project_files" | "enqueue_prompt" | "get_prompt_queue" | "remove_prompt" | "clear_prompt_queue" | "list_mcp_status" | "get_settings" | "put_settings";
|
|
52
52
|
id?: string;
|
|
53
53
|
/** Parsed query params, if the path carried a `?...` suffix. */
|
|
54
54
|
query?: URLSearchParams;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/relay/dispatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAIH,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAI/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/relay/dispatcher.ts"],"names":[],"mappings":"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"}
|
package/dist/relay/dispatcher.js
CHANGED
|
@@ -43,6 +43,7 @@ import { BadRequestError, NotFoundError } from "../server/handlers/errors.js";
|
|
|
43
43
|
import { handleListMcpStatus } from "../server/handlers/mcp-status.js";
|
|
44
44
|
import { handlePathAutocomplete } from "../server/handlers/paths-autocomplete.js";
|
|
45
45
|
import { handlePickDirectory } from "../server/handlers/paths-pick-directory.js";
|
|
46
|
+
import { handleSearchProjectFiles } from "../server/handlers/files-search.js";
|
|
46
47
|
import { handleBindStudioProject, handleCreateProject, handleDeleteProject, handleListProjects, handleListSessionsByProject, handleUpdateProject, } from "../server/handlers/projects.js";
|
|
47
48
|
import { handleCompactSession, handleCreateSession, handleDeleteSession, handleForkSession, handleRememberAndDeleteSession, handleGetSessionDetail, handleGetSessionMemoryDetails, handleGetSessionMemoryStatus, handleUpdateSession, } from "../server/handlers/sessions.js";
|
|
48
49
|
import { handleClearPromptQueue, handleEnqueuePrompt, handleGetPromptQueue, handleRemovePrompt, } from "../server/handlers/queue.js";
|
|
@@ -101,6 +102,14 @@ export function matchRoute(method, path) {
|
|
|
101
102
|
return { route: "create_session" };
|
|
102
103
|
return null;
|
|
103
104
|
}
|
|
105
|
+
// /api/projects/:id/files/search
|
|
106
|
+
const projectFilesMatch = /^\/api\/projects\/([^/]+)\/files\/search$/.exec(cleanPath);
|
|
107
|
+
if (projectFilesMatch) {
|
|
108
|
+
const id = decodeURIComponent(projectFilesMatch[1]);
|
|
109
|
+
if (method === "GET")
|
|
110
|
+
return { route: "search_project_files", id, query };
|
|
111
|
+
return null;
|
|
112
|
+
}
|
|
104
113
|
// /api/projects/:id/bind-studio
|
|
105
114
|
const bindStudioMatch = /^\/api\/projects\/([^/]+)\/bind-studio$/.exec(cleanPath);
|
|
106
115
|
if (bindStudioMatch) {
|
|
@@ -406,6 +415,10 @@ async function dispatchRoute(match, body, deps) {
|
|
|
406
415
|
}
|
|
407
416
|
case "pick_directory":
|
|
408
417
|
return handlePickDirectory();
|
|
418
|
+
case "search_project_files": {
|
|
419
|
+
const searchQuery = match.query?.get("query") ?? "";
|
|
420
|
+
return handleSearchProjectFiles(store, id, searchQuery);
|
|
421
|
+
}
|
|
409
422
|
case "enqueue_prompt":
|
|
410
423
|
return handleEnqueuePrompt(store, manager, id, asObject(body));
|
|
411
424
|
case "get_prompt_queue":
|
|
@@ -176,6 +176,7 @@ export declare class AgentSession {
|
|
|
176
176
|
private _pendingNextTurnMessages;
|
|
177
177
|
private _compactionAbortController;
|
|
178
178
|
private _autoCompactionAbortController;
|
|
179
|
+
private _compactionInProgress;
|
|
179
180
|
private _overflowRecoveryAttempted;
|
|
180
181
|
private _branchSummaryAbortController;
|
|
181
182
|
private _retryAbortController;
|
|
@@ -459,12 +460,21 @@ export declare class AgentSession {
|
|
|
459
460
|
* Saves to settings.
|
|
460
461
|
*/
|
|
461
462
|
setFollowUpMode(mode: "all" | "one-at-a-time"): void;
|
|
463
|
+
/**
|
|
464
|
+
* Acquire the compaction lock for the duration of the callback.
|
|
465
|
+
* Throws if compaction is already in progress.
|
|
466
|
+
*/
|
|
467
|
+
private _withCompactionLock;
|
|
462
468
|
/**
|
|
463
469
|
* Manually compact the session context.
|
|
464
470
|
* Aborts current agent operation first.
|
|
465
471
|
* @param customInstructions Optional instructions for the compaction summary
|
|
466
472
|
*/
|
|
467
473
|
compact(customInstructions?: string): Promise<CompactionResult>;
|
|
474
|
+
/**
|
|
475
|
+
* Execute a manual compaction under the compaction lock.
|
|
476
|
+
*/
|
|
477
|
+
private _executeCompaction;
|
|
468
478
|
/**
|
|
469
479
|
* Cancel in-progress compaction (manual or auto).
|
|
470
480
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../../../src/sdk/coding-agent/core/agent-session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../../../src/sdk/coding-agent/core/agent-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,6 +72,7 @@ export class AgentSession {
|
|
|
72
72
|
// Compaction state
|
|
73
73
|
_compactionAbortController = undefined;
|
|
74
74
|
_autoCompactionAbortController = undefined;
|
|
75
|
+
_compactionInProgress = false;
|
|
75
76
|
_overflowRecoveryAttempted = false;
|
|
76
77
|
// Branch summarization state
|
|
77
78
|
_branchSummaryAbortController = undefined;
|
|
@@ -543,7 +544,8 @@ export class AgentSession {
|
|
|
543
544
|
}
|
|
544
545
|
/** Whether compaction or branch summarization is currently running */
|
|
545
546
|
get isCompacting() {
|
|
546
|
-
return (this.
|
|
547
|
+
return (this._compactionInProgress ||
|
|
548
|
+
this._autoCompactionAbortController !== undefined ||
|
|
547
549
|
this._compactionAbortController !== undefined ||
|
|
548
550
|
this._branchSummaryAbortController !== undefined);
|
|
549
551
|
}
|
|
@@ -1236,12 +1238,34 @@ export class AgentSession {
|
|
|
1236
1238
|
// =========================================================================
|
|
1237
1239
|
// Compaction
|
|
1238
1240
|
// =========================================================================
|
|
1241
|
+
/**
|
|
1242
|
+
* Acquire the compaction lock for the duration of the callback.
|
|
1243
|
+
* Throws if compaction is already in progress.
|
|
1244
|
+
*/
|
|
1245
|
+
async _withCompactionLock(fn) {
|
|
1246
|
+
if (this._compactionInProgress) {
|
|
1247
|
+
throw new Error("Compaction already in progress");
|
|
1248
|
+
}
|
|
1249
|
+
this._compactionInProgress = true;
|
|
1250
|
+
try {
|
|
1251
|
+
return await fn();
|
|
1252
|
+
}
|
|
1253
|
+
finally {
|
|
1254
|
+
this._compactionInProgress = false;
|
|
1255
|
+
}
|
|
1256
|
+
}
|
|
1239
1257
|
/**
|
|
1240
1258
|
* Manually compact the session context.
|
|
1241
1259
|
* Aborts current agent operation first.
|
|
1242
1260
|
* @param customInstructions Optional instructions for the compaction summary
|
|
1243
1261
|
*/
|
|
1244
1262
|
async compact(customInstructions) {
|
|
1263
|
+
return this._withCompactionLock(() => this._executeCompaction(customInstructions));
|
|
1264
|
+
}
|
|
1265
|
+
/**
|
|
1266
|
+
* Execute a manual compaction under the compaction lock.
|
|
1267
|
+
*/
|
|
1268
|
+
async _executeCompaction(customInstructions) {
|
|
1245
1269
|
this._disconnectFromAgent();
|
|
1246
1270
|
await this.abort();
|
|
1247
1271
|
this._compactionAbortController = new AbortController();
|
|
@@ -1498,6 +1522,17 @@ export class AgentSession {
|
|
|
1498
1522
|
* Internal: Run auto-compaction with events.
|
|
1499
1523
|
*/
|
|
1500
1524
|
async _runAutoCompaction(reason, willRetry) {
|
|
1525
|
+
if (this._compactionInProgress) {
|
|
1526
|
+
this._emit({
|
|
1527
|
+
type: "compaction_end",
|
|
1528
|
+
reason,
|
|
1529
|
+
result: undefined,
|
|
1530
|
+
aborted: true,
|
|
1531
|
+
willRetry: false,
|
|
1532
|
+
});
|
|
1533
|
+
return false;
|
|
1534
|
+
}
|
|
1535
|
+
this._compactionInProgress = true;
|
|
1501
1536
|
const settings = this.settingsManager.getCompactionSettings();
|
|
1502
1537
|
this._emit({ type: "compaction_start", reason });
|
|
1503
1538
|
this._autoCompactionAbortController = new AbortController();
|
|
@@ -1666,6 +1701,7 @@ export class AgentSession {
|
|
|
1666
1701
|
return false;
|
|
1667
1702
|
}
|
|
1668
1703
|
finally {
|
|
1704
|
+
this._compactionInProgress = false;
|
|
1669
1705
|
this._autoCompactionAbortController = undefined;
|
|
1670
1706
|
}
|
|
1671
1707
|
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project file search for the agent composer `@` mention dropdown.
|
|
3
|
+
*
|
|
4
|
+
* `GET /api/projects/:id/files/search?query=<query>` returns files whose
|
|
5
|
+
* relative path contains the query (case-insensitive). Results are limited
|
|
6
|
+
* to `MAX_RESULTS` and common generated directories are always excluded.
|
|
7
|
+
*
|
|
8
|
+
* The handler is synchronous-style but returns a Promise because `glob`
|
|
9
|
+
* exposes an async API.
|
|
10
|
+
*/
|
|
11
|
+
import type { SessionStore } from "../storage.js";
|
|
12
|
+
export interface ProjectFileSearchResult {
|
|
13
|
+
/** Absolute filesystem path. */
|
|
14
|
+
path: string;
|
|
15
|
+
/** Path relative to the project root (POSIX separators). */
|
|
16
|
+
relativePath: string;
|
|
17
|
+
/** Filename (basename). */
|
|
18
|
+
name: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Search files in a project whose relative path contains `query`
|
|
22
|
+
* (case-insensitive). Returns an empty array when the project has no
|
|
23
|
+
* files, when the query is empty, or when the project path is unreadable.
|
|
24
|
+
*/
|
|
25
|
+
export declare function handleSearchProjectFiles(store: SessionStore, projectId: string, query: string): Promise<ProjectFileSearchResult[]>;
|
|
26
|
+
//# sourceMappingURL=files-search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"files-search.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/files-search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,MAAM,WAAW,uBAAuB;IACtC,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC;IACrB,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd;AAyBD;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAqDpC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project file search for the agent composer `@` mention dropdown.
|
|
3
|
+
*
|
|
4
|
+
* `GET /api/projects/:id/files/search?query=<query>` returns files whose
|
|
5
|
+
* relative path contains the query (case-insensitive). Results are limited
|
|
6
|
+
* to `MAX_RESULTS` and common generated directories are always excluded.
|
|
7
|
+
*
|
|
8
|
+
* The handler is synchronous-style but returns a Promise because `glob`
|
|
9
|
+
* exposes an async API.
|
|
10
|
+
*/
|
|
11
|
+
import { readFileSync } from "node:fs";
|
|
12
|
+
import { join } from "node:path";
|
|
13
|
+
import { glob } from "glob";
|
|
14
|
+
import { NotFoundError } from "./errors.js";
|
|
15
|
+
/** Maximum number of suggestions shown in the composer dropdown. */
|
|
16
|
+
const MAX_RESULTS = 20;
|
|
17
|
+
/**
|
|
18
|
+
* Directories/patterns that are never useful as `@` mention targets.
|
|
19
|
+
* These are applied in addition to the project's own `.gitignore`.
|
|
20
|
+
*/
|
|
21
|
+
const ALWAYS_IGNORE = [
|
|
22
|
+
"**/node_modules/**",
|
|
23
|
+
"**/.git/**",
|
|
24
|
+
"**/.next/**",
|
|
25
|
+
"**/.nuxt/**",
|
|
26
|
+
"**/.svelte-kit/**",
|
|
27
|
+
"**/.astro/**",
|
|
28
|
+
"**/dist/**",
|
|
29
|
+
"**/build/**",
|
|
30
|
+
"**/.spectral/**",
|
|
31
|
+
"**/.vscode/**",
|
|
32
|
+
"**/.idea/**",
|
|
33
|
+
"**/coverage/**",
|
|
34
|
+
"**/*.log",
|
|
35
|
+
];
|
|
36
|
+
/**
|
|
37
|
+
* Search files in a project whose relative path contains `query`
|
|
38
|
+
* (case-insensitive). Returns an empty array when the project has no
|
|
39
|
+
* files, when the query is empty, or when the project path is unreadable.
|
|
40
|
+
*/
|
|
41
|
+
export async function handleSearchProjectFiles(store, projectId, query) {
|
|
42
|
+
const project = store.getProject(projectId);
|
|
43
|
+
if (!project) {
|
|
44
|
+
throw new NotFoundError("Project not found");
|
|
45
|
+
}
|
|
46
|
+
const projectPath = project.path;
|
|
47
|
+
const trimmedQuery = query.trim();
|
|
48
|
+
if (!trimmedQuery) {
|
|
49
|
+
return [];
|
|
50
|
+
}
|
|
51
|
+
const ignorePatterns = [...ALWAYS_IGNORE];
|
|
52
|
+
// Read root .gitignore when present. Nested .gitignores are ignored for
|
|
53
|
+
// now — this keeps the search fast and the implementation small; the
|
|
54
|
+
// hard-coded ALWAYS_IGNORE already catches the largest generated dirs.
|
|
55
|
+
try {
|
|
56
|
+
const gitignore = readFileSync(join(projectPath, ".gitignore"), "utf8");
|
|
57
|
+
const patterns = gitignore
|
|
58
|
+
.split("\n")
|
|
59
|
+
.map((line) => line.trim())
|
|
60
|
+
.filter((line) => line && !line.startsWith("#"));
|
|
61
|
+
ignorePatterns.push(...patterns);
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
// .gitignore missing or unreadable — proceed without it.
|
|
65
|
+
}
|
|
66
|
+
const lowerQuery = trimmedQuery.toLowerCase();
|
|
67
|
+
let matches;
|
|
68
|
+
try {
|
|
69
|
+
matches = await glob("**/*", {
|
|
70
|
+
cwd: projectPath,
|
|
71
|
+
nodir: true,
|
|
72
|
+
dot: false,
|
|
73
|
+
ignore: ignorePatterns,
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
catch {
|
|
77
|
+
// Project path unreadable or not a directory — return empty rather
|
|
78
|
+
// than crashing the composer dropdown.
|
|
79
|
+
return [];
|
|
80
|
+
}
|
|
81
|
+
const filtered = matches
|
|
82
|
+
.filter((relativePath) => relativePath.toLowerCase().includes(lowerQuery))
|
|
83
|
+
.slice(0, MAX_RESULTS);
|
|
84
|
+
return filtered.map((relativePath) => ({
|
|
85
|
+
path: join(projectPath, relativePath),
|
|
86
|
+
relativePath,
|
|
87
|
+
name: relativePath.split("/").pop() ?? relativePath,
|
|
88
|
+
}));
|
|
89
|
+
}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Inter-agent communication broker for `spectral serve`.
|
|
3
|
+
*
|
|
4
|
+
* Provides project-scoped, channel-based messaging between active agent
|
|
5
|
+
* sessions running in the same spectral process on the same machine. Messages
|
|
6
|
+
* are durably backed by SQLite so they survive reconnects and can be polled by
|
|
7
|
+
* sessions that were not attached when the message was sent.
|
|
8
|
+
*
|
|
9
|
+
* The broker is intentionally process-local: subscriptions are in-memory
|
|
10
|
+
* inside the `spectral serve` daemon. Cross-process delivery on the same
|
|
11
|
+
* machine happens through the shared SQLite backing when each process creates
|
|
12
|
+
* its own broker instance pointing at the same `sessions.db`.
|
|
13
|
+
*/
|
|
14
|
+
import type { SessionStore } from "./storage.js";
|
|
15
|
+
export interface InterAgentMessage {
|
|
16
|
+
/** Unique message id (UUID). */
|
|
17
|
+
id: string;
|
|
18
|
+
/** Owning project. */
|
|
19
|
+
projectId: string;
|
|
20
|
+
/** Logical channel within the project (e.g. "memory", "task-handoff"). */
|
|
21
|
+
channel: string;
|
|
22
|
+
/** Session that sent the message. */
|
|
23
|
+
senderSessionId: string;
|
|
24
|
+
/** Optional human-readable sender name. */
|
|
25
|
+
senderName?: string;
|
|
26
|
+
/** When set, the message is a private direct message; otherwise broadcast. */
|
|
27
|
+
recipientSessionId?: string;
|
|
28
|
+
/** Message kind used to route interpretation (e.g. "observation"). */
|
|
29
|
+
kind: string;
|
|
30
|
+
/** Opaque JSON payload. */
|
|
31
|
+
payload: string;
|
|
32
|
+
/** Timestamp (ms since epoch) when the message was created. */
|
|
33
|
+
createdAt: number;
|
|
34
|
+
/** Timestamp (ms) when the recipient first polled it, if ever. */
|
|
35
|
+
deliveredAt?: number;
|
|
36
|
+
/** Timestamp (ms) after which the message may be garbage collected. */
|
|
37
|
+
expiresAt?: number;
|
|
38
|
+
}
|
|
39
|
+
export interface InterAgentSendInput {
|
|
40
|
+
projectId: string;
|
|
41
|
+
channel: string;
|
|
42
|
+
senderSessionId: string;
|
|
43
|
+
senderName?: string;
|
|
44
|
+
/** Omit for broadcast. */
|
|
45
|
+
recipientSessionId?: string;
|
|
46
|
+
kind: string;
|
|
47
|
+
payload: string;
|
|
48
|
+
/** Default: 24 hours. Set to 0 to disable expiry. */
|
|
49
|
+
ttlSeconds?: number;
|
|
50
|
+
}
|
|
51
|
+
export interface InterAgentPollInput {
|
|
52
|
+
projectId: string;
|
|
53
|
+
/** Filter by channel. Omit to poll all channels in the project. */
|
|
54
|
+
channel?: string;
|
|
55
|
+
/** Poll only messages addressed to this session (or broadcast). Omit to poll all. */
|
|
56
|
+
recipientSessionId?: string;
|
|
57
|
+
/** Only return messages created after this timestamp (exclusive). */
|
|
58
|
+
since?: number;
|
|
59
|
+
/** Maximum messages to return. Default 100. */
|
|
60
|
+
limit?: number;
|
|
61
|
+
/** Mark returned messages as delivered. Default true. */
|
|
62
|
+
markDelivered?: boolean;
|
|
63
|
+
}
|
|
64
|
+
export interface InterAgentSubscribeInput {
|
|
65
|
+
sessionId: string;
|
|
66
|
+
projectId: string;
|
|
67
|
+
channel?: string;
|
|
68
|
+
handler: (msg: InterAgentMessage) => void;
|
|
69
|
+
}
|
|
70
|
+
export interface InterAgentBrokerOptions {
|
|
71
|
+
store: SessionStore;
|
|
72
|
+
/** Default TTL in seconds for messages that don't specify one. Default 86400. */
|
|
73
|
+
defaultTtlSeconds?: number;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* In-process broker for inter-session messages.
|
|
77
|
+
*
|
|
78
|
+
* All public methods are synchronous because the underlying `SessionStore`
|
|
79
|
+
* uses better-sqlite3. Live subscribers are called synchronously from `send`.
|
|
80
|
+
*/
|
|
81
|
+
export declare class InterAgentBroker {
|
|
82
|
+
private readonly store;
|
|
83
|
+
private readonly defaultTtlSeconds;
|
|
84
|
+
/**
|
|
85
|
+
* In-process subscriptions keyed by `projectId:channel`. Each active session
|
|
86
|
+
* in the current process registers a handler here to receive live pushes.
|
|
87
|
+
*/
|
|
88
|
+
private readonly subscriptions;
|
|
89
|
+
constructor(opts: InterAgentBrokerOptions);
|
|
90
|
+
/**
|
|
91
|
+
* Send a message. Persists it to SQLite and synchronously pushes it to any
|
|
92
|
+
* in-process subscribers whose session/channel filters match.
|
|
93
|
+
*/
|
|
94
|
+
send(input: InterAgentSendInput): InterAgentMessage;
|
|
95
|
+
/**
|
|
96
|
+
* Poll for messages matching the filter. By default marks returned messages
|
|
97
|
+
* as delivered so they won't be returned again on subsequent polls.
|
|
98
|
+
*/
|
|
99
|
+
poll(input: InterAgentPollInput): InterAgentMessage[];
|
|
100
|
+
/**
|
|
101
|
+
* Subscribe a session to live pushes for a project/channel. Returns an
|
|
102
|
+
* unsubscribe function. Subscriptions are in-process only.
|
|
103
|
+
*/
|
|
104
|
+
subscribe(input: InterAgentSubscribeInput): () => void;
|
|
105
|
+
/**
|
|
106
|
+
* Delete expired messages from the backing store. Call periodically.
|
|
107
|
+
*/
|
|
108
|
+
cleanup(maxAgeSeconds?: number): void;
|
|
109
|
+
private pushToSubscribers;
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=inter-agent-broker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inter-agent-broker.d.ts","sourceRoot":"","sources":["../../src/server/inter-agent-broker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,MAAM,WAAW,iBAAiB;IAChC,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,sBAAsB;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,eAAe,EAAE,MAAM,CAAC;IACxB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,sEAAsE;IACtE,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qFAAqF;IACrF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAC3C;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,YAAY,CAAC;IACpB,iFAAiF;IACjF,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;GAKG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAE3C;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4D;gBAE9E,IAAI,EAAE,uBAAuB;IAKzC;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,mBAAmB,GAAG,iBAAiB;IAyBnD;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,mBAAmB,GAAG,iBAAiB,EAAE;IAWrD;;;OAGG;IACH,SAAS,CAAC,KAAK,EAAE,wBAAwB,GAAG,MAAM,IAAI;IA4BtD;;OAEG;IACH,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IAQrC,OAAO,CAAC,iBAAiB;CAqB1B"}
|