HarvestCommands

Enum HarvestCommands 

Source
pub enum HarvestCommands {
Show 14 variants Init { path: Option<String>, git: bool, }, Scan { sessions: bool, web: bool, timeout: u64, verbose: bool, }, Run { path: Option<String>, providers: Option<Vec<String>>, exclude: Option<Vec<String>>, incremental: bool, commit: bool, message: Option<String>, }, Status { path: Option<String>, }, List { path: Option<String>, provider: Option<String>, limit: usize, search: Option<String>, }, Export { output: String, path: Option<String>, format: String, provider: Option<String>, sessions: Option<Vec<String>>, }, Share { url: String, path: Option<String>, name: Option<String>, workspace: Option<String>, }, Shares { path: Option<String>, status: Option<String>, limit: usize, }, Checkpoint { session: String, path: Option<String>, message: Option<String>, }, Checkpoints { session: String, path: Option<String>, }, Restore { session: String, checkpoint: i64, path: Option<String>, }, Rebuild { path: Option<String>, }, Search { query: String, path: Option<String>, provider: Option<String>, limit: usize, }, Git { command: HarvestGitCommands, },
}

Variants§

§

Init

Initialize a harvest database

Fields

§path: Option<String>

Path to the database file (default: ./chat_sessions.db)

§git: bool

Initialize git tracking for the database

§

Scan

Scan for available providers and sessions

Fields

§sessions: bool

Show individual sessions

§web: bool

Scan for web-based LLM providers (ChatGPT, Claude, etc.)

§timeout: u64

Timeout in seconds for web provider checks (default: 5)

§verbose: bool

Show verbose debug output for browser scanning

§

Run

Run the harvest to collect sessions from all providers

Fields

§path: Option<String>

Path to the harvest database

§providers: Option<Vec<String>>

Only include specific providers (comma-separated: copilot,cursor,ollama)

§exclude: Option<Vec<String>>

Exclude specific providers (comma-separated)

§incremental: bool

Only harvest sessions changed since last run

§commit: bool

Auto-commit changes to git after harvest

§message: Option<String>

Commit message (requires –commit)

§

Status

Show harvest database status

Fields

§path: Option<String>

Path to the harvest database

§

List

List sessions in the harvest database

Fields

§path: Option<String>

Path to the harvest database

§provider: Option<String>

Filter by provider name

§limit: usize

Maximum number of sessions to show

§search: Option<String>

Search sessions by title or ID

§

Export

Export sessions from the harvest database

Fields

§output: String

Output file path

§path: Option<String>

Path to the harvest database

§format: String

Export format: json, jsonl, md (markdown)

§provider: Option<String>

Filter by provider name

§sessions: Option<Vec<String>>

Export specific sessions by ID (comma-separated)

§

Share

Import a shared chat session from a URL

Fields

§url: String

Share link URL (ChatGPT, Claude, etc.)

§path: Option<String>

Path to the harvest database

§name: Option<String>

Custom name for the imported session

§workspace: Option<String>

Associate with a workspace path

§

Shares

List pending or imported share links

Fields

§path: Option<String>

Path to the harvest database

§status: Option<String>

Filter by status: pending, imported, failed, expired

§limit: usize

Maximum number of links to show

§

Checkpoint

Create a checkpoint (version snapshot) of a session

Fields

§session: String

Session ID to checkpoint

§path: Option<String>

Path to the harvest database

§message: Option<String>

Checkpoint description message

§

Checkpoints

List checkpoints for a session

Fields

§session: String

Session ID to list checkpoints for

§path: Option<String>

Path to the harvest database

§

Restore

Restore a session to a previous checkpoint

Fields

§session: String

Session ID to restore

§checkpoint: i64

Checkpoint number to restore to

§path: Option<String>

Path to the harvest database

§

Rebuild

Rebuild the full-text search index

Fields

§path: Option<String>

Path to the harvest database

§

Search

Search messages across all sessions (full-text search)

Fields

§query: String

Search query

§path: Option<String>

Path to the harvest database

§provider: Option<String>

Filter by provider

§limit: usize

Maximum results to show

§

Git

Git operations for the harvest database

Fields

Trait Implementations§

Source§

impl FromArgMatches for HarvestCommands

Source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
Source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>

Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
Source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
Source§

fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
Source§

impl Subcommand for HarvestCommands

Source§

fn augment_subcommands<'b>(__clap_app: Command) -> Command

Append to Command so it can instantiate Self via FromArgMatches::from_arg_matches_mut Read more
Source§

fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command

Append to Command so it can instantiate self via FromArgMatches::update_from_arg_matches_mut Read more
Source§

fn has_subcommand(__clap_name: &str) -> bool

Test whether Self can parse a specific subcommand

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more