

Overview
Smart Shell provides an intelligent command-line interface that combines traditional terminal functionality with smart autocompletion. Execute dbt commands, Git operations, and standard Linux commands with intelligent assistance. The terminal knows about which files exist in your repository for enhanced suggestions.Try asking questions in natural language and pressing Tab to get the right command suggestions for your needs.
Smart Autocompletion
The special feature of Smart Shell is its intelligent autocompletion. When you:- Type a partial command and press
Tab
- Ask a question and press
Tab
- Need help with syntax and press
Tab
Example Interactions
Profile Verification
Profile Verification
Question: “how do i verify if my dbt profiles set up right”Press Tab → Auto-completes to:
dbt debug
This command checks your dbt configuration and profile setup.Show Model Data
Show Model Data
Question: “dbt show dim suppliers”Press Tab → Auto-completes to:
dbt show --select marts.core.dim_suppliers
Displays a sample of data from your dim_suppliers model with proper path resolution.Testing
Testing
Question: “how do i test my data”Press Tab → Auto-completes to:
dbt test
Runs all tests defined in your dbt project.Git Operations
Git Operations
Question: “show me commits from last week with file changes”Press Tab → Auto-completes to:
git log --since="1 week ago" --stat --oneline
Displays commits from the last week with file change statistics in a compact format.Supported Commands
dbt Commands
dbt Commands
dbt run
- Execute modelsdbt test
- Run testsdbt debug
- Check configurationdbt compile
- Compile modelsdbt docs generate
- Generate documentation- And all other standard dbt commands
Git Commands
Git Commands
git status
- Repository statusgit add
- Stage changesgit commit
- Commit changesgit push
- Push to remotegit pull
- Pull from remote- And all other Git operations
Linux Commands
Linux Commands
ls
- List directory contentscd
- Change directory (within project)cat
- Display file contentsgrep
- Search textfind
- Find files- And other standard Linux utilities
Security Restrictions
For security and project integrity, certain commands are restricted:Directory Restrictions
Directory Restrictions
Restricted:
cd
commands that navigate outside the dbt project directoryReason: Keeps you within your project workspace for securityPrivilege Restrictions
Privilege Restrictions
Restricted:
sudo
commands and other privileged operationsReason: Prevents unauthorized system-level changesDestructive Operations
Destructive Operations
Restricted: Commands that could damage the system or other projectsReason: Maintains environment stability and security