pub struct OhMyPiHook { /* private fields */ }Expand description
Oh-My-Pi hook for extracting memory from OMP session execution.
Oh-My-Pi is a fork of pi-mono with additional features and modifications. It maintains similar session management but has:
- Different CLI name (omp instead of pi)
- Different session storage location
- Rust N-API native addon support
§Detection Paths
- ~/.local/bin/omp
- /usr/local/bin/omp
- $PATH
§Session Files
- ~/.omp/sessions/ - Session history
- ~/.omp/logs/ - Centralized logs
§Native Features (Rust N-API)
- grep, shell, text, keys, highlight, glob, task, ps, prof, clipboard
- LSP integration
- Browser automation
Implementations§
Source§impl OhMyPiHook
impl OhMyPiHook
Sourcepub const AGENT_TYPE: &'static str = "oh-my-pi"
pub const AGENT_TYPE: &'static str = "oh-my-pi"
Agent type string
Sourcepub const CONFIG_DIR_NAME: &'static str = ".omp"
pub const CONFIG_DIR_NAME: &'static str = ".omp"
Config directory name
Sourcepub const SKILLS_SUBDIR: &'static str = "agent/skills"
pub const SKILLS_SUBDIR: &'static str = "agent/skills"
Skills subdirectory
Sourcepub const SESSIONS_SUBDIR: &'static str = "sessions"
pub const SESSIONS_SUBDIR: &'static str = "sessions"
Sessions subdirectory
Sourcepub const LOGS_SUBDIR: &'static str = "logs"
pub const LOGS_SUBDIR: &'static str = "logs"
Logs subdirectory
Sourcepub fn new_readonly() -> Self
pub fn new_readonly() -> Self
Create a new Oh-My-Pi hook without mutating user state.
Sourcepub fn has_native_feature(&self, feature: &str) -> bool
pub fn has_native_feature(&self, feature: &str) -> bool
Check if native feature is available
Sourcepub fn native_features(&self) -> &'static [&'static str]
pub fn native_features(&self) -> &'static [&'static str]
Get list of available native features
Trait Implementations§
Source§impl AgentHook for OhMyPiHook
impl AgentHook for OhMyPiHook
fn agent_type(&self) -> &str
fn install_session_end_hook<'life0, 'async_trait>(
&'life0 mut self,
callback: SessionEndCallback,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn install_compact_hook<'life0, 'async_trait>(
&'life0 mut self,
callback: SessionEndCallback,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn detect_session_activity<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<SessionActivity>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn extract_session_context<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<SessionContext>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn is_hook_installed(&self) -> bool
fn reliability_score(&self) -> f32
fn lifecycle_capabilities(&self) -> LifecycleCapabilities
fn support_tier(&self) -> SupportTier
fn install_session_start_hook<'life0, 'async_trait>(
&'life0 mut self,
_callback: SessionEndCallback,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn install_checkpoint_hook<'life0, 'async_trait>(
&'life0 mut self,
_callback: SessionEndCallback,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn install_error_hook<'life0, 'async_trait>(
&'life0 mut self,
_callback: SessionEndCallback,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn uninstall_hooks<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn record_activity(&self)
Auto Trait Implementations§
impl !Freeze for OhMyPiHook
impl !RefUnwindSafe for OhMyPiHook
impl Send for OhMyPiHook
impl Sync for OhMyPiHook
impl Unpin for OhMyPiHook
impl UnsafeUnpin for OhMyPiHook
impl !UnwindSafe for OhMyPiHook
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more