/** * Global User Profile * * Manages a persistent user profile stored at ~/.trellis/profile.json. * This profile is captured once on first-ever Trellis use and injected * into every repo's agent scaffold to provide personal context to AI tools. * * The profile is a *soft metadata* layer distinct from the cryptographic * identity in `src/identity/`. If an identity already exists for the repo, * the profile prompt pre-fills the name from `identity.displayName`. * * @module trellis/scaffold/profile */ export interface UserProfile { name: string; bio: string; skills: string[]; style: string; preferences: { verbosity: 'concise' | 'detailed' | 'balanced'; tone: 'peer' | 'mentor' | 'formal'; }; createdAt: string; updatedAt: string; } /** * Load the global user profile, or null if not yet created. */ export declare function loadProfile(): UserProfile | null; /** * Save (or overwrite) the global user profile. */ export declare function saveProfile(profile: UserProfile): void; /** * Returns true if a global profile exists. */ export declare function hasProfile(): boolean; /** * Interactive terminal prompt to collect user profile. * Called only from the CLI layer, never from programmatic API consumers. * * @param hints Optional pre-fill hints (e.g. from an existing identity) */ export declare function promptForProfile(hints?: { name?: string; }): Promise; /** * Update specific fields of the existing profile without full re-prompting. */ export declare function updateProfile(updates: Partial>): UserProfile; //# sourceMappingURL=profile.d.ts.map