eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
71 lines (70 loc) • 2.99 kB
TypeScript
import type { AgentSourceManifest, ConnectionSourceRef, InstructionsSourceRef, LocalSubagentSourceRef, ScheduleSourceRef, SkillSourceRef } from "#discover/manifest.js";
import type { ModuleSourceRef } from "#shared/source-ref.js";
import type { AgentModuleCandidate, AgentResourceCandidate, AgentSourceCandidate, AgentSourceLayer, AgentSourceOwner } from "#compiler/source-graph.js";
export type ProjectedModuleSource = {
readonly candidate: AgentModuleCandidate;
readonly kind: "connection";
readonly source: ConnectionSourceRef;
} | {
readonly candidate: AgentModuleCandidate;
readonly kind: "channel" | "config" | "extension" | "hook" | "instructions" | "memory" | "sandbox" | "schedule" | "skill" | "tool";
readonly source: ModuleSourceRef;
};
export type ProjectedResourceSource = {
readonly candidate: AgentResourceCandidate;
readonly kind: "instructions";
readonly source: InstructionsSourceRef;
} | {
readonly candidate: AgentResourceCandidate;
readonly kind: "schedule";
readonly source: ScheduleSourceRef;
} | {
readonly candidate: AgentResourceCandidate;
readonly kind: "skill";
readonly source: SkillSourceRef;
};
export type ProjectedSource = ProjectedModuleSource | ProjectedResourceSource;
export interface ProjectedSubagentSource {
readonly candidate: AgentResourceCandidate;
readonly extensionScope?: {
readonly namespace: string;
readonly sourceRoot: string;
};
readonly owner: AgentSourceOwner;
readonly source: LocalSubagentSourceRef;
}
export interface ProjectedAgentSources {
readonly candidates: readonly AgentSourceCandidate[];
readonly resources: readonly ProjectedResourceSource[];
readonly subagents: readonly ProjectedSubagentSource[];
}
export declare function projectAgentSources(input: {
readonly externalDependencies: readonly string[];
readonly extensionScope?: {
readonly namespace: string;
readonly sourceRoot: string;
};
readonly layer?: AgentSourceLayer;
readonly manifest: AgentSourceManifest;
readonly nodeId: string;
readonly owner?: AgentSourceOwner;
}): ProjectedAgentSources;
export declare function projectSelectedSources(input: {
readonly candidates: Iterable<AgentSourceCandidate>;
readonly resources: readonly ProjectedResourceSource[];
}): readonly ProjectedSource[];
export declare function createFilesystemModuleCandidate(input: {
readonly externalDependencies: readonly string[];
readonly extensionScope?: {
readonly namespace: string;
readonly sourceRoot: string;
};
readonly layer: AgentSourceLayer;
readonly logicalPath: string;
readonly nodeId: string;
readonly owner: AgentSourceOwner;
readonly source: ModuleSourceRef;
readonly sourceId?: string;
readonly sourceRoot: string;
}): AgentModuleCandidate;
export declare function qualifyExtensionContributionLogicalPath(logicalPath: string, namespace: string): string;