pub struct GhostWriter { /* private fields */ }Expand description
The Ghost Writer daemon. Runs in background, syncs context to ALL detected AI coding assistants.
Implementations§
Source§impl GhostWriter
impl GhostWriter
Sourcepub fn spawn(engine: Arc<MemoryEngineV3>) -> Arc<Self>
pub fn spawn(engine: Arc<MemoryEngineV3>) -> Arc<Self>
Create and AUTO-START the ghost writer (syncs to ALL detected clients)
Sourcepub fn spawn_if_available(engine: Arc<MemoryEngineV3>) -> Option<Arc<Self>>
pub fn spawn_if_available(engine: Arc<MemoryEngineV3>) -> Option<Arc<Self>>
Spawn only if ANY AI client is detected; returns None if none installed
Sourcepub fn new(engine: Arc<MemoryEngineV3>) -> Self
pub fn new(engine: Arc<MemoryEngineV3>) -> Self
Create without auto-start (for testing)
Sourcepub fn detect_all_memory_dirs() -> Vec<DetectedClient>
pub fn detect_all_memory_dirs() -> Vec<DetectedClient>
Detect ALL AI coding assistant memory directories. Returns every client whose config directory exists or can be created.
Sourcepub fn sync_to_all_clients(&self)
pub fn sync_to_all_clients(&self)
Sync context to ALL detected clients at once.
Sourcepub fn format_for_client(
context: &SessionResumeResult,
client: ClientType,
) -> String
pub fn format_for_client( context: &SessionResumeResult, client: ClientType, ) -> String
Format context for a specific client. Claude gets the full format. Other clients get a streamlined markdown.
Sourcepub fn detected_clients(&self) -> Vec<DetectedClient>
pub fn detected_clients(&self) -> Vec<DetectedClient>
Get all currently detected clients.
Sourcepub fn is_running(&self) -> bool
pub fn is_running(&self) -> bool
Check if running
Sourcepub fn last_sync_time(&self) -> Option<DateTime<Utc>>
pub fn last_sync_time(&self) -> Option<DateTime<Utc>>
Get last sync time
Sourcepub fn get_claude_memory_dir(&self) -> Option<PathBuf>
pub fn get_claude_memory_dir(&self) -> Option<PathBuf>
Get detected Claude memory directory
Sourcepub fn format_as_claude_memory(context: &SessionResumeResult) -> String
pub fn format_as_claude_memory(context: &SessionResumeResult) -> String
Format context as Claude-compatible markdown
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for GhostWriter
impl RefUnwindSafe for GhostWriter
impl Send for GhostWriter
impl Sync for GhostWriter
impl Unpin for GhostWriter
impl UnsafeUnpin for GhostWriter
impl UnwindSafe for GhostWriter
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more