Cut product flows over to Coding/Pi and retain only the migration-owned v1 boundary. Promote supported native optional packages because electron-builder omitted pnpm transitive optional closure from the packaged ASAR.
105 lines
2.0 KiB
TypeScript
105 lines
2.0 KiB
TypeScript
import type { BundledCodingSkillId } from './coding-skills';
|
|
|
|
export type CodingProjectFileStatus =
|
|
| 'added'
|
|
| 'modified'
|
|
| 'deleted'
|
|
| 'renamed'
|
|
| 'conflicted'
|
|
| 'untracked';
|
|
|
|
export interface CodingProjectFileEntry {
|
|
path: string;
|
|
name: string;
|
|
type: 'file';
|
|
status?: CodingProjectFileStatus;
|
|
size?: number;
|
|
}
|
|
|
|
export interface CodingProjectFileContent {
|
|
path: string;
|
|
content: string;
|
|
truncated: boolean;
|
|
}
|
|
|
|
export interface CodingTextSearchSubmatch {
|
|
text: string;
|
|
start: number;
|
|
end: number;
|
|
}
|
|
|
|
export interface CodingTextSearchResult {
|
|
path: string;
|
|
name: string;
|
|
lineNumber: number;
|
|
lineText: string;
|
|
submatches: CodingTextSearchSubmatch[];
|
|
}
|
|
|
|
export interface ConversationChangedFile {
|
|
path: string;
|
|
status: CodingProjectFileStatus;
|
|
diff?: string;
|
|
preview?: string;
|
|
truncated?: boolean;
|
|
}
|
|
|
|
export interface ConversationChangesSnapshot {
|
|
conversationId: string;
|
|
runId: string;
|
|
git: boolean;
|
|
baselineHead: string | null;
|
|
files: ConversationChangedFile[];
|
|
}
|
|
|
|
export interface ProductCodingSkill {
|
|
id: BundledCodingSkillId;
|
|
name: string;
|
|
description: string;
|
|
selected: boolean;
|
|
location: string;
|
|
content: string;
|
|
entries: Array<{ path: string; type: 'file' | 'directory' }>;
|
|
}
|
|
|
|
export interface ProductCodingCommand {
|
|
name: string;
|
|
title: string;
|
|
description: string;
|
|
source: 'makelore' | 'pi' | 'skill';
|
|
skillId?: BundledCodingSkillId;
|
|
}
|
|
|
|
export interface ProductPiCommandInput {
|
|
name: string;
|
|
description?: string;
|
|
}
|
|
|
|
export interface CodingFileStatusResponse {
|
|
files: CodingProjectFileEntry[];
|
|
}
|
|
|
|
export interface CodingFileFindResponse {
|
|
files: CodingProjectFileEntry[];
|
|
}
|
|
|
|
export interface CodingFileContentResponse {
|
|
file: CodingProjectFileContent;
|
|
}
|
|
|
|
export interface CodingTextSearchResponse {
|
|
matches: CodingTextSearchResult[];
|
|
}
|
|
|
|
export interface CodingSkillsResponse {
|
|
skills: ProductCodingSkill[];
|
|
}
|
|
|
|
export interface CodingCommandsResponse {
|
|
commands: ProductCodingCommand[];
|
|
}
|
|
|
|
export interface CodingChangesResponse {
|
|
changes: ConversationChangesSnapshot | null;
|
|
}
|