Tab Autocomplete
Context-aware code completion — SignalPilot’s Tab Autocomplete uses AI to suggest code based on your notebook context, not just syntax matching.Unlike standard Jupyter autocomplete, SignalPilot’s AI autocomplete understands your variables, imported libraries, dataframe schemas, and coding patterns to generate smarter, multi-line suggestions.
How to Enable
Open SignalPilot Settings
Click the Settings icon in the SignalPilot sidebar (bottom right corner of the notebook interface).

Enable Tab Autocomplete
Find the Tab Autocomplete section and toggle it on.
The setting is saved automatically.
How It Works
Pause typing for ~1 second
After you stop typing, the AI analyzes your context:
- Variables already defined in the kernel
- Imported libraries and their usage patterns
- Code from other cells
- Common patterns for the current task
The AI needs a brief pause to generate suggestions. Keep typing if you don’t want autocomplete.
Review the suggestion
A grayed-out completion appears inline with your cursor:
The suggestion might be:

- A single line completing your current statement
- Multiple lines for common patterns (e.g., for loops, try-except blocks)
- Function calls with appropriate parameters
Example Completions
- DataFrame Operations
- Multi-Line Patterns
- Library Usage
- Context from Other Cells
You type:AI suggests:Why this is smart:
- Knows
dfis a DataFrame (from kernel inspection) - Knows the column names (
category,revenue,quantity) - Suggests appropriate aggregation functions
- Uses common pandas patterns
Tab Autocomplete vs Standard Autocomplete
- Standard Jupyter Autocomplete
- SignalPilot AI Autocomplete
How it works:Limitations:
- Matches local names and imported modules
- Simple syntax completion
- No context awareness
- Single-line suggestions only
- Doesn’t know column names
- Doesn’t suggest parameters
- Can’t generate multi-line patterns
- No understanding of your data
When Tab Autocomplete Helps Most
Repetitive pandas operations
Repetitive pandas operations
Common scenarios:
- Grouping and aggregation
- Filtering with multiple conditions
- Joining dataframes
- Reshaping (pivot, melt, stack)
df[ and get suggested filter based on your actual columns.Boilerplate code
Boilerplate code
Common scenarios:
- Try-except blocks
- For loops over dataframes
- Function definitions with common signatures
- Import statements for standard libraries
try: and get a complete try-except block template.Visualization code
Visualization code
Common scenarios:
- Matplotlib plot setup
- Plotly figure configuration
- Seaborn styling
- Chart labeling and formatting
plt.plot and get suggested plot with your dataframe columns.Working with unfamiliar APIs
Working with unfamiliar APIs
Common scenarios:
- SQL query building
- API request construction
- Configuration file parsing
- Data export formats
df.to_ and get suggestions for common export formats (CSV, Excel, Parquet) with appropriate parameters.Configuration Options
- Enable/Disable
- Suggestion Delay
- Suggestion Length
Location: Settings panel → Tab Autocomplete toggleWhen to disable:
- You find suggestions distracting
- Working in a very slow environment
- Prefer manual code writing for learning
Tips for Better Completions
Use descriptive variable names
Use descriptive variable names
Good:
monthly_revenue = ...Bad: df2 = ...The AI uses variable names as hints for suggestions. Descriptive names lead to better completions.Keep cells focused
Keep cells focused
Good: One logical operation per cellBad: Mixing data loading, cleaning, and analysis in one cellCleaner cell structure helps the AI understand context and suggest relevant completions.
Import libraries consistently
Import libraries consistently
Good:Bad:Standard import conventions help the AI recognize patterns and suggest appropriate code.
Pause intentionally for complex completions
Pause intentionally for complex completions
If you want multi-line suggestions (like entire function bodies), pause for 1-2 seconds instead of continuing to type.The AI will generate more complete suggestions when given time.
Privacy and Performance
Does autocomplete send my data to servers?
Does autocomplete send my data to servers?
No. Autocomplete uses:
- Local notebook context (cell code)
- Variable names and types from kernel
- Imported library information
revenue_data with columns ['date', 'region', 'amount'], but it doesn’t see the actual revenue numbers.Does it slow down my notebook?
Does it slow down my notebook?
Minimal impact. Autocomplete runs:
- Asynchronously (doesn’t block typing)
- Only after pauses (not while you’re actively typing)
- With cached context (fast subsequent suggestions)
- Increase the pause delay in settings (coming soon)
- Disable autocomplete temporarily
- Check your internet connection (suggestions require API calls)
Does it work offline?
Does it work offline?
No. Tab autocomplete requires:
- Active internet connection
- SignalPilot API access
FAQ
Can I disable it later?
Can I disable it later?
Yes. Go back to Settings → Tab Autocomplete and toggle it off. Changes take effect immediately (no reload required for disabling).
Does it work in all cells?
Does it work in all cells?
Code cells: Yes, full supportMarkdown cells: No, autocomplete is code-specificRaw cells: NoFuture versions may support markdown completions for documentation.
Why are some suggestions not relevant?
Why are some suggestions not relevant?
The AI makes suggestions based on:
- Available context
- Common patterns
- Statistical likelihood
- Check variable names: Are they descriptive?
- Run cells above: The AI needs executed cells for kernel context
- Be more specific: Type a bit more before pausing
- Use Inline Edit instead: For very specific changes,
⌘K/Ctrl Kmight be better
Can it complete SQL queries?
Can it complete SQL queries?
Yes! If you’re writing SQL in Python strings (e.g., for SQLAlchemy or database connections), the AI can suggest query completions based on:
- Your database schema (if connected)
- Common SQL patterns
- Table and column names
Does it learn from my coding style?
Does it learn from my coding style?
Within a session: Yes, the AI adapts to patterns it sees in your current notebook.Across sessions: Not yet. Future versions will support:
- Team-specific coding patterns
- Personal style preferences
- Common libraries and functions you use