LogoLogo
Tabnine websiteContact Sales
  • 👋Welcome
    • Overview
      • Architecture
        • Deployment options
      • Security
      • Privacy
      • Protection
        • Provenance and Attribution
      • Personalization
        • Tabnine’s Personalization in Depth
        • Connection: Global Codebase Awareness
      • AI Models
        • Tabnine's private and protected Universal models
        • Tabnine's fine-tuned AI models
      • Integrations
        • Atlassian Jira
      • System Requirements
      • Supported Languages
      • Supported IDEs
      • Tabnine Subscription Plans
        • Dev Preview
        • Dev
        • Enterprise (SaaS)
        • Enterprise (private installation)
    • Support & Feedback
  • 🚀Getting started
    • Install
      • Client setup (SaaS)
        • VS Code
          • Install Tabnine in VS Code
          • Activate Tabnine in VS Code
        • JetBrains IDEs
          • Install Tabnine in a JetBrains IDE
          • Activate Tabnine in a JetBrains IDE
        • Visual Studio
          • Install Tabnine in Visual Studio 2022
          • Activate Tabnine in Visual Studio 2022
        • Eclipse
          • Install Tabnine in Eclipse
          • Activate Tabnine in Eclipse
        • Sign in
          • Using an email
          • Using an authentication token
      • Client setup (private installation)
        • Join your team (private installation)
        • VS Code (private installation)
        • JetBrains IDEs (private installation)
        • Visual Studio (private installation)
        • Eclipse (private installation)
    • Quickstart Guide
      • Menus and Icons
    • Getting the Most from Tabnine Code Completions
      • Pause (snooze)
    • Getting the Most from Inline Actions
    • Getting the Most from Tabnine Chat
      • Launching Tabnine Chat
      • Interacting with Tabnine Chat
      • Reviewing suggestions
      • Writing prompts
      • Chat Context
        • Understanding Context
        • Jira Connection
        • Context Scoping
      • Conversing with Tabnine Chat
      • Switching between chat AI models
      • Image Prompts
      • Tabnine's Prompting Guide
        • Getting Started
        • Basic Prompting
          • Be specific and clear
          • Define the context
          • Start a fresh conversation as appropriate
          • Include necessary details
          • Ask for examples
          • Be concise but complete
  • 💪Software Development with Tabnine
    • Overview
    • Plan
    • Create
    • Test
      • Intro to the Test Agent
      • Test Agent Workflow
      • Custom Commands
      • Generate Test Files with @Mentions
    • Review
    • Fix
    • Document
    • Explain
    • Maintain
  • 🏭Administering Tabnine
    • Start a team
    • Manage a team
    • SaaS
      • Enterprise (SaaS) team admin
        • Set up a Tabnine Enterprise (SaaS) account
        • Invite team members
        • Manage your team
        • AI models for Chat (Enterprise SaaS)
      • Enterprise (SaaS) team member
        • Join your Tabnine team by invitation email (team member)
        • Join Tabnine team by link (member)
    • Private installation
      • Server setup guide
        • Kubernetes (MicroK8s) Installation guide
        • Deployment guide
          • Tabnine update guide
        • Air-gapped deployment guide
      • Admin guide
        • Monitoring Tabnine
        • Prometheus Operator install
        • Audit logs
      • Managing your team
        • Tabnine teams
        • Roles in an enterprise
        • Inviting users to your team
        • Deactivating and reactivating users
        • Deleting PII data of a deactivated user
        • Reset user's password
        • Usage reports
          • Reports Glossary
          • CSV-based reports (V2)
            • Configuring scheduled CSV reports
            • CSV-based reports V1 (Depracted since version 5.7.0
          • Usage API
        • Settings
          • General
          • Single Sign-On (SSO)
          • Personalization (f.k.a. Workspace)
            • Connecting to External Code Repositories
          • Email
          • License
          • Models
          • Access Tokens
        • IdP Sync
      • Release Notes
  • 📣Product Updates
    • What's new?
      • What's new? (August 2024)
      • What's new? (July 2024)
      • What's new? (June 2024)
      • What's new? (May 2024)
      • What's new? (April 2024)
      • What's new? (March 2024)
      • What's new? (February 2024)
      • What's new? (January 2024)
Powered by GitBook
On this page
  • Getting started with inline actions
  • What you can do with inline actions

Was this helpful?

  1. Getting started

Getting the Most from Inline Actions

Tabnine AI code assistant: Inline actions

Last updated 7 months ago

Was this helpful?

This feature is currently available for VS Code and JetBrains IDEs. Support for Visual Studio 2022 and Eclipse is coming soon.

Note, inline actions is currently available for Tabnine users (Pro, Enterprise SaaS, and self-hosted) and Basic users who have AI chat access.

Inline actions allow you to work directly on selected snippets of code — getting AI-enabled edits, fixes, refactoring, documentation, and more — with all responses generated inline. Additionally, you can use inline actions to generate code directly at your cursor’s location inside the code editor.

Inline actions brings together the best of our AI chat and code completions into a single interface. By delivering AI-generated code or edits within the same environment where you’re working, inline actions are a faster and easier method to create, refine, document, and fix code. Inline actions enable you to stay in the flow by offering an intuitive way of using Tabnine.

Getting started with inline actions

Inline actions are embedded in VS Code and the JetBrains family of IDEs (support for other IDEs to come soon). Trigger inline actions by clicking Edit in the code lens functionality (in VS Code), or by using the ⌘ + I (Ctrl + I for Windows and Linux) keyboard shortcut. These actions open up a Tabnine-specific command palette containing an array of commands.

You can enter instructions for your task in natural language or choose from the available quick commands. We support /fix-code, /document-code, /explain-code, and /code-explore quick commands. The responses for /fix-code and /document-code are generated inline, whereas the responses for /explain-code and /code-explore quick commands are generated in the AI chat panel. This is because the answers to these tasks are typically not needed in the code files. Therefore, when using inline actions for /explain-code and /code-explore commands, we provide the responses in the AI chat panel, making it easier to consume them.

You can specify the scope for your question — select a few lines of code or a code block that you want to edit, or inform Tabnine to generate the response at the cursor location.

After you specify what you want to accomplish using inline actions and hit Enter (Command + Enter, or Ctrl + Enter for JetBrains IDEs), Tabnine provides inline responses along with a diff view that makes it easy to determine the suggested changes. You can accept (by clicking Alt + A), discard the response (by clicking Alt + R), or refine (using Alt + F) — after you accept, Tabnine inserts the response inline.

What you can do with inline actions

Generate new code inline

Simply click the ⌘ + I keyboard shortcut (Ctrl + I for Windows and Linux) to trigger inline actions. Type in natural language the instructions for creating new code and hit Enter. Tabnine generates the code and offers responses right where your cursor is. Review the suggestions quickly with the diff view, and accept (using Alt + A), reject (using Alt + R), or refine (using Alt + F).

Fix code with inline actions

Click Edit in the code lens to open the inline actions command palette. Select the /fix-code command (or type in natural language) and hit Enter. Tabnine fixes the code and generates the response inline. Review quickly with the diff view and accept (using Alt + A), reject (using Alt + R), or refine (using Alt + F)..

Create inline documentation

Use the ⌘ + I keyboard shortcut (Ctrl + I for Windows and Linux) to trigger inline actions. Type in natural language to create inline documentation (or use the /document-code quick command) and hit Enter. Tabnine generates inline responses — review them quickly and accept (using Alt + A), reject (using Alt + R), or refine (using Alt + F).

Edit code with inline actions

Select the code, trigger inline actions using the ⌘+I keyboard shortcut (Ctrl + I for Windows and Linux), and enter instructions for making modifications in natural language. Once you hit Enter, Tabnine generates inline responses — review them quickly and accept (using Alt + A), reject (using Alt + R), or refine (using Alt + F).

Keyboard shortcuts

  • Trigger inline actions: ⌘ + I (Ctrl + I for Windows and Linux)

  • Accept response: Opt + A (Alt + A)

  • Reject response: Opt + R (Alt + R)

  • Refine response: Opt + F (Alt + F)

Inline actions support the and allow you to include a specific code element (type, method, or class) from the workspace in the prompt. Inline actions also to deliver optimized recommendations for your use case — accessing locally available code and information in your IDE and (for Enterprise users) your organization’s global codebases to generate responses tailored to you and your organization.

Inline actions also benefit from Tabnine’s . Select the best model for your use case or corporate requirements, choosing from Tabnine’s custom-developed models (, Tabnine + Mistral) or from popular models from third parties (Command R+, , , and ). Note that the model selection persists across AI chat and inline actions. For example, if you select Claude 3.5 Sonnet as your model in the AI chat, then inline actions also uses Claude 3.5 Sonnet.

🚀
mentions (using the @ symbol) capability
leverage your context
switchable models
Tabnine Protected 2
Claude 3.5 Sonnet
GPT-4o
Codestral
Code lens functionality in VS Code
Command palette for inline actions