pub struct ProjectStore { /* private fields */ }Expand description
Project store for managing project-local knowledge base
Implementations§
Source§impl ProjectStore
impl ProjectStore
Sourcepub fn with_default_path() -> Self
pub fn with_default_path() -> Self
Create a new project store with default path (./.agent/)
Sourcepub fn initialize(&self) -> StorageResult<()>
pub fn initialize(&self) -> StorageResult<()>
Initialize the project store directory structure
Creates the base directory and all resource subdirectories:
- templates/
- standards/
- specs/
- steering/
- boilerplates/
- rules/
- history/
- cache/
Sourcepub fn resource_path(&self, resource_type: ResourceType) -> PathBuf
pub fn resource_path(&self, resource_type: ResourceType) -> PathBuf
Get the path for a resource type
Sourcepub fn store_resource(
&self,
resource_type: ResourceType,
name: &str,
content: &[u8],
) -> StorageResult<PathBuf>
pub fn store_resource( &self, resource_type: ResourceType, name: &str, content: &[u8], ) -> StorageResult<PathBuf>
Store a resource file
Sourcepub fn retrieve_resource(
&self,
resource_type: ResourceType,
name: &str,
) -> StorageResult<Vec<u8>>
pub fn retrieve_resource( &self, resource_type: ResourceType, name: &str, ) -> StorageResult<Vec<u8>>
Retrieve a resource file
Sourcepub fn list_resources(
&self,
resource_type: ResourceType,
) -> StorageResult<Vec<String>>
pub fn list_resources( &self, resource_type: ResourceType, ) -> StorageResult<Vec<String>>
List all resources of a type
Sourcepub fn delete_resource(
&self,
resource_type: ResourceType,
name: &str,
) -> StorageResult<()>
pub fn delete_resource( &self, resource_type: ResourceType, name: &str, ) -> StorageResult<()>
Delete a resource file
Sourcepub fn resource_exists(&self, resource_type: ResourceType, name: &str) -> bool
pub fn resource_exists(&self, resource_type: ResourceType, name: &str) -> bool
Check if a resource exists
Sourcepub fn create_folder(&self, folder_name: &str) -> StorageResult<PathBuf>
pub fn create_folder(&self, folder_name: &str) -> StorageResult<PathBuf>
Create a folder on-demand
Creates a folder in the project store if it doesn’t exist. This allows projects to create custom folders as needed.
Sourcepub fn folder_exists(&self, folder_name: &str) -> bool
pub fn folder_exists(&self, folder_name: &str) -> bool
Check if a folder exists
Auto Trait Implementations§
impl Freeze for ProjectStore
impl RefUnwindSafe for ProjectStore
impl Send for ProjectStore
impl Sync for ProjectStore
impl Unpin for ProjectStore
impl UnwindSafe for ProjectStore
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