Skip to main content

Tiesta — Local AI Coding Assistant powered by Ollama

Project description

Tiesta: Your AI Engineering Companion

A fully autonomous, 100% local, VRAM-efficient AI agent powered by Ollama.

PyPI Version Python Support License: MIT


Tiesta is not just an agent; it's your second engineer. It goes beyond simple autocomplete or conversational chatbots. Tiesta is a true companion who actively explores your codebase, autonomously executes terminal commands, resolves compilation errors, and, when finished, politely asks: "I've finished my part, what's next?"

Designed from the ground up to run entirely locally, Tiesta empowers developers to build, refactor, and debug complex applications with zero data privacy concerns and absolute flexibility.


🎉 What's New in v0.1.2

  • 🚀 SPA-Engine (Turbo Mode): Tiesta now features a massive hardware-accelerated Turbo Mode! By utilizing a custom Speculative Paging Architecture (SPA), Tiesta achieves lightning-fast generation speeds on massive 7B models using only 4GB VRAM. This AST-validated neural router intelligently bypasses I/O bottlenecks with Cross-Platform (POSIX/Win32) zero-copy memory mapping.
  • Autonomous Environment Management: Tiesta now autonomously manages its own dependencies! If your local Ollama daemon is not running, Tiesta will seamlessly spin it up in the background (with full Windows compatibility) without crashing.
  • Network Patch: Patched IPv6/DNS resolution errors on Windows by enforcing strict 127.0.0.1 IPv4 mapping.

📊 Performance & Benchmarks

Tiesta's SPA-Engine fundamentally alters the performance characteristics of local AI.

SPA-Engine Performance Benchmark SPA-Engine Time To First Token Benchmark
  • Speed: 3.60x Throughput Increase.
  • Responsiveness: 4.83x Lower Latency (TTFT).
  • Efficiency: Saves ~146 GB of SSD Hardware I/O during complex codebase generations.

🌟 Features

  • 100% Local & Private: No external API calls. Your code never leaves your machine. Powered natively by Ollama.
  • Bring Your Own Model (BYOM): During onboarding, dynamically discover and select any Ollama model installed on your system. Highly optimized for qwen2.5-coder:7b for ultra-fast, low-VRAM execution.
  • Hardware-in-the-Loop: A killer feature for embedded systems. Tiesta can autonomously scan active serial ports and read hardware logs (ESP32, ROS 2, Arduino) to instantly debug your hardware and patch the corresponding Python/C++ code.
  • Unified Permission Control Plane: An elegant Rich-powered UI intercepts and gates destructive terminal commands (rm, massive code deletions), ensuring absolute human oversight before modifying your system.
  • Polyglot Linter: Validates syntax proactively. If Tiesta makes a syntax error in Python, JavaScript, C++, Rust, or Dart, it will instantly catch the traceback and self-correct without bothering you.
  • Dynamic Architecture Maps: Automatically generates and updates Mermaid.js visual maps (TIESTA_ARCHITECTURE.md), allowing the agent to see your project structurally while providing human-readable documentation.
  • Zero-Dependency Semantic RAG: Instead of relying on heavy tree-sitter C-bindings, Tiesta uses a highly efficient, regex-powered semantic chunking system to precisely locate symbols, classes, and variables.
  • LSP Integration: Built on jedi, it understands your code context natively (go to definition, find usages) without spinning up a heavy background language server.

🚀 Getting Started

Prerequisites

  1. Install Ollama and ensure the daemon is running.
  2. Pull the recommended default model (or any model of your choice):
    ollama pull qwen2.5-coder:7b
    

Installation

Install Tiesta globally via PyPI:

pip install tiesta

Quickstart

Run Tiesta interactively in your current project directory:

tiesta

Or unleash the SPA-Engine by passing the --turbo flag:

python3 -m tiesta.main --turbo

On the very first run, Tiesta's Onboarding Wizard will automatically launch to detect your installed Ollama models and set up your preferred environment.

You can also run one-shot tasks directly from the terminal:

tiesta "Refactor the user authentication logic in core/auth.py"

🧠 How it Works

Tiesta employs a sophisticated "Precision Coding Protocol" via a customized Agentic Execution Loop (The Orchestrator):

  1. Context Loading: Tiesta silently loads a lightweight Zero-Shot workspace awareness map (directory trees, git statuses, architecture graphs).
  2. Decomposition: It forces the underlying LLM to think step-by-step and enumerate a checklist of sub-tasks.
  3. Execution & Self-Correction: Tiesta executes tools natively in a sandboxed environment. If a compilation error or git conflict occurs, the Orchestrator autonomously feeds the traceback back to the LLM to self-correct up to 3 times before asking for human help.
  4. Result Verification: Before rendering the final response to the user, the agent cross-verifies its output against its internal checklist to guarantee completeness.

🔗 Links


"Speed is secondary to correctness. Measure Twice, Cut Once."

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tiesta-0.2.0.tar.gz (410.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tiesta-0.2.0-py3-none-any.whl (417.6 kB view details)

Uploaded Python 3

File details

Details for the file tiesta-0.2.0.tar.gz.

File metadata

  • Download URL: tiesta-0.2.0.tar.gz
  • Upload date:
  • Size: 410.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for tiesta-0.2.0.tar.gz
Algorithm Hash digest
SHA256 9a35f45cc5a33040a0e7900169e70ea302ca520b6a87d2177e75de3507b5e488
MD5 d21b251f54ef06975d5020f8bd65e9d5
BLAKE2b-256 f88a3e7ab70d803410328c06e6c4cc78529017fa8db4a2ed77ac57e520120a40

See more details on using hashes here.

File details

Details for the file tiesta-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: tiesta-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 417.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for tiesta-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6260cd94917d143c3d9ba3ab0d4cc0b8cf99383fe9123b7d9ae0c52d5c4a2fbd
MD5 4c2ade009cb512ff6c1f0a61dea4ca7e
BLAKE2b-256 90cfa40b185eab0c23c6b7a941453a22567e59a100a1c75063d8ac8a30fcdb83

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page