src/
├── main.rs # Entry point
├── config.rs # Project credential management (~/.config/msc/config.toml)
├── client.rs # HTTP client wrapper for Meilisearch REST API
├── commands/
│ ├── mod.rs # CLI definition (clap), command routing
│ ├── index.rs # Index CRUD commands
│ ├── document.rs # Document CRUD commands
│ ├── search.rs # Search command (standard + interactive)
│ ├── settings.rs # Settings get/update/reset/edit/diff
│ ├── task.rs # Task list/get/cancel/wait/watch
│ ├── key.rs # API key management
│ ├── project.rs # Project add/remove/list/use/current
│ ├── local.rs # Local instance management (Docker/binary)
│ ├── import.rs # Bulk document import
│ ├── clone.rs # Index cloning across projects
│ ├── promote.rs # Promote local to remote
│ ├── dump.rs # Dump and snapshot creation
│ ├── chat.rs # Chat completions (standard + interactive)
│ └── health.rs # Health check
└── tui/
├── mod.rs
├── search.rs # Interactive search TUI (ratatui)
└── chat.rs # Interactive chat TUI (ratatui)
tests/
└── integration.rs # Integration tests against running Meilisearch