1pub mod arithmetic;
15pub mod ast;
16pub mod backend;
17pub(crate) mod backend_walker_fs;
18pub mod dispatch;
19pub mod duration;
20pub mod help;
21pub mod ignore_config;
22pub mod interpreter;
23pub mod output_limit;
24pub mod kernel;
25pub mod lexer;
26pub mod nonce;
27pub mod parser;
28pub mod paths;
29#[cfg(all(unix, feature = "native"))]
30pub mod pidfd;
31pub mod scheduler;
32pub mod tools;
33pub mod trash;
34#[cfg(feature = "native")]
35pub mod trash_system;
36pub mod validator;
37pub mod vfs;
38#[cfg(all(unix, feature = "native"))]
39pub mod terminal;
40
41pub use kaish_glob as glob_crate;
43
44pub mod glob {
46 pub use kaish_glob::glob::{contains_glob, expand_braces, glob_match};
47}
48
49pub mod walker {
51 pub use kaish_glob::{
52 EntryTypes, FileWalker, FilterResult, GlobPath, IgnoreFilter, IncludeExclude,
53 PathSegment, PatternError, WalkOptions, WalkerDirEntry, WalkerError, WalkerFs,
54 };
55 pub use crate::backend_walker_fs::BackendWalkerFs;
56}
57
58pub use backend::{
59 BackendError, BackendResult, KernelBackend, LocalBackend, PatchOp, ReadRange,
60 ToolInfo, ToolResult, VirtualOverlayBackend, WriteMode,
61};
62pub use dispatch::{CommandDispatcher, PipelinePosition};
63pub use ignore_config::{IgnoreConfig, IgnoreScope};
64pub use kernel::{ExecuteOptions, Kernel, KernelConfig, VfsMountMode};
65pub use output_limit::OutputLimitConfig;
66
67#[cfg(feature = "native")]
84pub use vfs::{FileStatus, GitVfs, LogEntry, StatusSummary, WorktreeInfo};
85
86pub use scheduler::{BoundedStream, StreamStats, DEFAULT_STREAM_MAX_SIZE, drain_to_stream};
88pub use vfs::JobFs;
89
90pub use paths::{home_dir, xdg_cache_home, xdg_config_home, xdg_data_home, xdg_runtime_dir};
92
93pub use interpreter::expand_tilde;
95
96pub use tools::{Tool, ToolRegistry, ExecContext};