-
Notifications
You must be signed in to change notification settings - Fork 94
docs: rewrite README for open-source launch #14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+133
−64
Merged
Changes from all commits
Commits
Show all changes
3 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,93 +1,162 @@ | ||
| <div align="center"> | ||
|
|
||
| # altimate-code | ||
|
|
||
| AI-powered CLI for SQL analysis, dbt integration, and data engineering. | ||
| **The AI coding agent for data teams.** | ||
|
|
||
| Batteries included for SQL, dbt, and data warehouses. | ||
|
|
||
| [](https://www.npmjs.com/package/altimate-code-ai) | ||
| [](https://pypi.org/project/altimate-engine/) | ||
| [](https://www.npmjs.com/package/@altimateai/altimate-code) | ||
| [](https://pypi.org/project/altimate-engine/) | ||
| [](./LICENSE) | ||
| [](https://github.com/AltimateAI/altimate-code/actions/workflows/ci.yml) | ||
|
|
||
| ## Features | ||
| </div> | ||
|
|
||
| - **SQL Analysis & Formatting** -- Parse, validate, and auto-format SQL across dialects | ||
| - **Column-Level Lineage** -- Trace data flow at the column level through complex SQL transformations | ||
| - **dbt Integration** -- Profile management, project-aware lineage, and `+` operator for upstream/downstream selection | ||
| - **Warehouse Connectivity** -- Connect to Snowflake, BigQuery, Databricks, Postgres, DuckDB, and MySQL | ||
| - **AI-Powered Code Review** -- Get intelligent suggestions on SQL quality, performance, and best practices | ||
| - **TUI Interface** -- Interactive terminal UI built with Solid.js | ||
| - **MCP Server** -- Model Context Protocol support for integration with AI assistants | ||
| --- | ||
|
|
||
| ## Quick Install | ||
| An AI coding agent with 40+ specialized data tools, column-level lineage, dbt integration, and warehouse connectivity built in -- all available to any AI provider. | ||
|
|
||
| ## Install | ||
|
|
||
| ```bash | ||
| # npm | ||
| npm install -g @altimateai/altimate-code | ||
| npm i -g @altimateai/altimate-code | ||
|
|
||
| # Homebrew | ||
| brew install altimate/tap/altimate-code | ||
| brew install AltimateAI/tap/altimate-code | ||
This comment was marked as outdated.
Sorry, something went wrong. |
||
| ``` | ||
|
|
||
| ## Getting Started | ||
| Then run `altimate-code` to launch the interactive TUI, or `altimate-code run "your prompt"` for one-shot mode. | ||
|
|
||
| ```bash | ||
| # Launch the interactive TUI | ||
| altimate-code | ||
| ## Highlights | ||
|
|
||
| # Analyze a SQL file | ||
| altimate-code analyze query.sql | ||
| | Capability | Details | | ||
| |---|---| | ||
| | **SQL analysis** | 40+ tools -- lint, format, transpile, optimize, safety checks | | ||
| | **Column-level lineage** | Trace data flow through complex SQL and dbt models | | ||
| | **dbt integration** | Manifest parsing, profile management, `+` operator | | ||
| | **Warehouse connectivity** | Snowflake, BigQuery, Redshift, Databricks, Postgres, DuckDB, MySQL, SQL Server | | ||
| | **PII detection** | Classify sensitive columns, flag risky queries | | ||
| | **Query cost prediction** | Estimate execution costs before running | | ||
| | **FinOps** | Credit analysis, query history insights | | ||
| | **AI providers** | 15+ providers -- Anthropic, OpenAI, Gemini, Bedrock, and more | | ||
| | **TUI + headless** | Interactive terminal UI or `altimate-code serve` for CI/CD | | ||
| | **MCP + LSP** | Model Context Protocol and Language Server Protocol support | | ||
|
|
||
| # Trace column lineage | ||
| altimate-code lineage --sql "SELECT a.id, b.name FROM a JOIN b ON a.id = b.id" | ||
| ``` | ||
| ## Features | ||
|
|
||
| ### SQL Analysis (40+ tools) | ||
|
|
||
| The AI has access to specialized SQL tools that go far beyond what a general coding agent can do: | ||
|
|
||
| - **Lint & validate** -- Catch anti-patterns like implicit casts, NULL comparisons, unused CTEs | ||
| - **Format** -- Consistent SQL formatting across your team | ||
| - **Transpile** -- Convert between Snowflake, BigQuery, Postgres, T-SQL, MySQL, DuckDB | ||
| - **Optimize** -- Get index suggestions, query rewrites, complexity reduction | ||
| - **Safety checks** -- Detect breaking changes, SQL injection risks, schema violations | ||
| - **Test generation** -- Auto-generate SQL tests for your models | ||
| - **Equivalence checking** -- Verify two queries produce the same results | ||
|
|
||
| ### Column-Level Lineage | ||
|
|
||
| Trace data flow at the column level through complex SQL transformations. Works standalone or with dbt manifests for project-wide lineage across models. | ||
|
|
||
| ### dbt Integration | ||
|
|
||
| - Parse `manifest.json` and `profiles.yml` natively | ||
| - Column-level lineage across dbt models with `+` operator for upstream/downstream selection | ||
| - Execute dbt commands (compile, run, test) directly from the agent | ||
| - Profile management across environments | ||
|
|
||
| ### Warehouse Connectivity | ||
|
|
||
| Connect directly to your data warehouse -- the AI can query schemas, run SQL, predict costs, and analyze query history: | ||
|
|
||
| - Snowflake (with IAM auth) | ||
| - BigQuery (service account + ADC) | ||
| - Redshift (with IAM auth) | ||
| - Databricks | ||
| - PostgreSQL | ||
| - DuckDB | ||
| - MySQL | ||
| - SQL Server | ||
| - SSH tunneling for secure connections | ||
|
|
||
| ### AI Providers | ||
|
|
||
| Use any model you want. altimate-code supports 15+ providers via the Vercel AI SDK: | ||
|
|
||
| Anthropic, OpenAI, Google Gemini, Google Vertex AI, Amazon Bedrock, Azure OpenAI, Mistral, Groq, DeepInfra, Cerebras, Cohere, Together AI, Perplexity, xAI, OpenRouter, GitHub Copilot, GitLab | ||
|
|
||
| ### And more | ||
|
|
||
| - Interactive TUI with Solid.js + OpenTUI | ||
| - Headless server mode (`altimate-code serve`) | ||
| - MCP server support (stdio, HTTP, SSE transports) | ||
| - LSP integration (workspace symbols, diagnostics) | ||
| - Session management (continue, fork, export/import) | ||
| - Custom agents and plugins | ||
| - GitHub integration (PR analysis, automated workflows) | ||
| - Token usage stats and cost tracking | ||
|
|
||
| ## Architecture | ||
|
|
||
| ``` | ||
| CLI (TypeScript / Bun) | ||
| altimate-code (TypeScript CLI) | ||
| | | ||
| JSON-RPC Bridge (stdio) | ||
| JSON-RPC 2.0 (stdio) | ||
| | | ||
| Python Engine (altimate-engine) | ||
| altimate-engine (Python) | ||
| SQL analysis, lineage, dbt, warehouse connections | ||
| ``` | ||
|
|
||
| The CLI is written in TypeScript and runs on Bun. It communicates with the Python engine (`altimate-engine`) over a JSON-RPC 2.0 bridge using stdio. The Python engine handles SQL parsing, analysis, lineage computation, and warehouse interactions. | ||
| The CLI handles AI interactions, TUI, and tool orchestration. The Python engine handles SQL parsing, analysis, lineage computation, and warehouse interactions via a JSON-RPC bridge. | ||
|
|
||
| The Python engine **auto-bootstraps using `uv`** -- no system Python dependencies are required. On first run, the CLI downloads `uv`, creates an isolated virtual environment, and installs the engine automatically. | ||
|
|
||
| ## Monorepo Structure | ||
|
|
||
| ``` | ||
| packages/ | ||
| altimate-code/ TypeScript CLI (@altimate/cli) | ||
| altimate-engine/ Python engine (SQL analysis, lineage, warehouse) | ||
| plugin/ CLI plugin system (@altimate/cli-plugin) | ||
| sdk/js/ JavaScript SDK (@altimate/cli-sdk) | ||
| util/ Shared TypeScript utilities | ||
| ``` | ||
| **Zero-dependency bootstrap**: On first run the CLI downloads [`uv`](https://github.com/astral-sh/uv), creates an isolated Python environment, and installs the engine automatically. No system Python required. | ||
|
|
||
| ## Development | ||
|
|
||
| See [CONTRIBUTING.md](./CONTRIBUTING.md) for full development setup instructions. | ||
| See [CONTRIBUTING.md](./CONTRIBUTING.md) for the full setup guide. | ||
|
|
||
| ```bash | ||
| # Install dependencies | ||
| git clone https://github.com/AltimateAI/altimate-code.git | ||
| cd altimate-code | ||
|
|
||
| # TypeScript | ||
| bun install | ||
| cd packages/altimate-code && bun test | ||
|
|
||
| # Python engine | ||
| cd packages/altimate-engine | ||
| python -m venv .venv && source .venv/bin/activate | ||
| pip install -e ".[dev]" | ||
| pytest | ||
| ``` | ||
|
|
||
| # Build the CLI | ||
| cd packages/altimate-code && bun run script/build.ts --single | ||
| ### Monorepo structure | ||
|
|
||
| # Run tests | ||
| bun test | ||
| ``` | ||
| packages/ | ||
| altimate-code/ TypeScript CLI | ||
| altimate-engine/ Python engine (SQL, lineage, warehouses) | ||
| plugin/ Plugin system | ||
| sdk/js/ JavaScript SDK | ||
| util/ Shared utilities | ||
| ``` | ||
|
|
||
| ## Documentation | ||
|
|
||
| Full documentation is available at [altimate-code.sh](https://altimate-code.sh). | ||
| Full docs at [altimate-code.sh](https://altimate-code.sh). | ||
|
|
||
| ## Contributing | ||
|
|
||
| We welcome contributions! Please read our [Contributing Guide](./CONTRIBUTING.md) before submitting a pull request. | ||
| Contributions welcome! Please read the [Contributing Guide](./CONTRIBUTING.md) before opening a PR. | ||
|
|
||
| ## Acknowledgements | ||
|
|
||
| altimate-code is a fork of [opencode](https://github.com/anomalyco/opencode), the open-source AI coding agent. We build on top of their excellent foundation to add data-team-specific capabilities. | ||
|
|
||
| ## License | ||
|
|
||
| This project is licensed under the MIT License -- see the [LICENSE](./LICENSE) file for details. | ||
| MIT -- see [LICENSE](./LICENSE). | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: The internal upgrade and version check logic references the old package name
altimate-code-ai, but the package is now published as@altimateai/altimate-code, which will cause upgrades to fail.Severity: CRITICAL
Suggested Fix
Update all internal references from
altimate-code-aito@altimateai/altimate-codein the upgrade, installation detection, and version checking functions to match the new scoped package name.Prompt for AI Agent
Did we get this right? 👍 / 👎 to inform future reviews.