Skip to content

feat: add Tabnine CLI agent support#4

Open
Pavel-tabnine wants to merge 2 commits intomainfrom
pavel/add-tabnine-cli-support
Open

feat: add Tabnine CLI agent support#4
Pavel-tabnine wants to merge 2 commits intomainfrom
pavel/add-tabnine-cli-support

Conversation

@Pavel-tabnine
Copy link
Copy Markdown
Collaborator

@Pavel-tabnine Pavel-tabnine commented Jan 21, 2026

Summary

Add Tabnine CLI as a supported AI agent. Tabnine CLI uses TOML commands, the .tabnine/agent/ directory structure, and TABNINE.md context files.

Changes

Core

  • Add "tabnine" entry to AGENT_CONFIG in __init__.py (folder: .tabnine/agent/, TOML format, requires_cli: True)
  • Bump version 0.1.130.1.14

Release & Packaging

  • Add tabnine to ALL_AGENTS in bash and PowerShell release scripts
  • Add TOML command generation cases (.tabnine/agent/commands with {{args}})
  • Add tabnine template packages to GitHub release script

Agent Context Scripts

  • Add TABNINE_FILE variable, switch/case entry, and auto-detect support in both bash and PowerShell scripts

Documentation

  • Add Tabnine CLI to supported agents table in README.md
  • Add to agents table, CLI-Based Agents list, and TOML Format section in AGENTS.md
  • Add changelog entry

Tests

  • 7 new consistency tests verifying tabnine across AGENT_CONFIG, release scripts, agent context scripts, and CLI help
  • 1 new skills directory resolution test

All 128 tests pass. Ruff lint clean.

Copy link
Copy Markdown

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Approval - No Critical Issues Identified

This PR successfully adds Tabnine CLI support following all established project patterns:

What it accomplishes:

  • Adds Tabnine CLI as a new supported agent with proper TOML-based configuration
  • Updates all relevant documentation (README.md, AGENTS.md)
  • Integrates Tabnine into release packaging for both bash and PowerShell scripts
  • Updates agent context scripts to support Tabnine CLI
  • Follows the same patterns as other TOML-based agents (Gemini, Qwen)

Technical correctness:

  • Configuration: Properly configured in AGENT_CONFIG with correct folder structure (.tabnine/)
  • Release Integration: Correctly uses toml extension and {{args}} format matching Gemini/Qwen patterns
  • Cross-platform: Both bash and PowerShell scripts updated consistently
  • Documentation: All agent lists and help text updated comprehensively
  • Backward Compatibility: Additive changes that don't break existing functionality

The implementation demonstrates excellent adherence to existing codebase conventions and patterns. Ready for merge.

@Pavel-tabnine Pavel-tabnine force-pushed the pavel/add-tabnine-cli-support branch from dea8d54 to 997bfec Compare March 9, 2026 08:40
@Pavel-tabnine Pavel-tabnine changed the title Add Tabnine CLI agent support feat: add Tabnine CLI agent support Mar 9, 2026
@Pavel-tabnine Pavel-tabnine force-pushed the pavel/add-tabnine-cli-support branch 6 times, most recently from 78ec736 to 50404ee Compare March 9, 2026 18:36
Tabnine CLI is a Gemini fork that uses TOML commands with the
.tabnine/agent/ directory structure and TABNINE.md context files.

Changes:
- Add 'tabnine' to AGENT_CONFIG in __init__.py
- Update release scripts (bash + PowerShell) for TOML command generation
- Update agent context scripts (bash + PowerShell)
- Add to GitHub release packages
- Update README.md and AGENTS.md documentation
- Bump version to 0.1.14
- Add 8 new tests for cross-file consistency
@Pavel-tabnine Pavel-tabnine force-pushed the pavel/add-tabnine-cli-support branch from 50404ee to 403f29c Compare March 9, 2026 18:47
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 9, 2026

Tabnine PR Bot

[Standard Risk]

What This PR Does
Adds Tabnine CLI as a first-class supported agent in spec-kit, wiring it through every required layer: AGENT_CONFIG, CommandRegistrar, bash/PowerShell release scripts, agent context scripts, GitHub release packaging, and documentation. TOML command format with {{args}} placeholder is used, consistent with how Gemini and Qwen are handled.

Assessment
This is a clean, well-executed integration. The implementation is consistent with every established pattern in the codebase, and the 8 new tests provide solid coverage of the cross-cutting concerns (config, release scripts, context scripts, CLI help). Good to merge.

Cross-Repository Impact
The tabnine-cli repo confirms the TOML command format with {{args}} and .tabnine/agent/commands/ directory structure matches the actual Tabnine CLI specification. No other repositories consume spec-kit internal Python APIs. No cross-repository impact detected.

Coaching Guidelines
All changed code complies with coaching guidelines.

What Looks Good

  • The skills directory resolution for tabnine correctly follows the established <folder>/skills/ convention from AGENT_CONFIG, requiring no special-case override in AGENT_SKILLS_DIR_OVERRIDES.
  • Test coverage is comprehensive and systematic: every touchpoint (AGENT_CONFIG, CommandRegistrar, bash/PowerShell scripts, GitHub release script, context scripts, CLI help) gets its own targeted assertion.
  • Bash and PowerShell scripts are kept in lockstep with every change mirrored across both.
Review metadata
  • Risk tier: Tier 2 (Standard)
  • Files reviewed: 11
  • Inline comments posted: 0
  • Highest severity: None
  • Cross-repo analysis: performed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant