Skip to main content

AI complete me.

Project description

aicm - AI Complete Me

WIP Python License

A local-first, privacy-focused code completion CLI tool for developers who want AI assistance without sending their code to the cloud.

Installation & Quick Start

Get up and running in under 60 seconds. No API keys, no cloud, no nonsense.

1. Install

# Via pip
pip install aicm

# Or blazing fast with uv
uv pip install aicm

2. Download Model (One-time)

aicm --install

Downloads the default Qwen2.5-Coder-0.5B model (~400M) locally. Your code never leaves your machine.

3. Start Completing

# Pipe a function stub
echo "def fibonacci(n):" | aicm

That's it. No config files, no sign-ups, no telemetry. Just pure local AI completion.

๐Ÿšง Work In Progress

This project is in active development. Core features are being implemented and APIs may change. Follow the progress and contribute!

๐ŸŽฏ Concept & Vision

acim is designed to be the Unix-philosophy code completion tool:

  • Local-only: Your code never leaves your machine
  • Lightweight: Optimized for Apple Silicon and modern hardware
  • Fast: Instant suggestions with efficient models
  • Out-of-the-box: default is best, no configuration needed in most cases
  • Composable: Works with pipes, files, and editor integrations
  • Hackable: Simple Python codebase, easy to customize

Philosophy

$ echo "def quick_osrt(arr):" |acim
def quick_sort(arr):
    if len(arr) <= 1:
        return arr
    else:
        pivot = arr[len(arr) // 2]
        left = [x for x in arr if x < pivot]
        middle = [x for x in arr if x == pivot]
        right = [x for x in arr if x > pivot]
        return quick_sort(left) + middle + quick_sort(right)

Just like cat, grep, or sed โ€” acimdoes one thing well: complete your code.

โœจ Planned Features

Core

  • Pipe-based input (echo "..." |acim)
  • Fill-in-the-middle (FIM) completion
  • Single-line suggestions
  • simple indent handle
  • Daemon mode (persistent model in memory)
  • Configuration file support

Models

  • Qwen2.5-Coder-0.5B (default)
  • Qwen2.5-Coder-1.5B (more powerful option)
  • Custom GGUF model support
  • Automatic model downloading

Integrations

  • (Neo)vim plugin
  • VSCode extension
  • LSP protocol support

๐Ÿ—๏ธ Architecture (Conceptual)

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   Input Source  โ”‚  stdin / file / editor
โ”‚  (stdin/file)   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ”‚
         โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  acimCLI        โ”‚  Argument parsing, context detection
โ”‚  (entry point)  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ”‚
         โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  CodeComplete   โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚  llama-cpp-python โ”‚
โ”‚  Engine         โ”‚     โ”‚  (local inference) โ”‚
โ”‚                 โ”‚โ—€โ”€โ”€โ”€โ”€โ”‚                   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ”‚
         โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   Post-process  โ”‚  Indentation fix, deduplication
โ”‚                 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
         โ”‚
         โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   Output        โ”‚  stdout / editor
โ”‚                 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿ›ค๏ธ Roadmap

Phase 1: Foundation (Current)

  • Basic completion via stdin
  • Model loading and inference
  • Indentation handling
  • Configuration system
  • Error handling & logging
  • Installation via pip, uv...

Phase 2: Usability

  • Daemon mode for instant response
  • Model management (download, switch)
  • Shell completions

Phase 3: Ecosystem

  • Editor plugins
  • LSP server mode
  • Multi-language support beyond Python
  • Fine-tuning capabilities

๐Ÿ’ก Use Cases

Quick prototyping

# Start a new function
echo "def calculate_fibonacci(n):" |acim

๐Ÿ–ฅ๏ธ System Requirements

  • macOS: Apple Silicon (M1/M2/M3) or Intel
  • Linux: x86_64 or ARM64
  • RAM: 4GB+ (for 1.5B model), 2GB+ (for 0.5B model)
  • Python: 3.10+
  • Storage: ~1.5GB for models

๐Ÿค Contributing

This is a passion project. Contributions, ideas, and feedback are welcome!

๐Ÿ“„ License

MIT License - see LICENSE for details.


Made with for the local-first AI movement.

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

aicm-0.1.3.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

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

aicm-0.1.3-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file aicm-0.1.3.tar.gz.

File metadata

  • Download URL: aicm-0.1.3.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.9

File hashes

Hashes for aicm-0.1.3.tar.gz
Algorithm Hash digest
SHA256 d759ece1c32f527dad4d4d977c8183010bd63bc0e7a1854083622ceb56b0f691
MD5 6510dca80694fcc26e5f5e46c6b89300
BLAKE2b-256 6bac42d1161f2502e0da4e091d7735ab708a6aa193c9eb1d1bf9813198bb5857

See more details on using hashes here.

File details

Details for the file aicm-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: aicm-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 5.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.9

File hashes

Hashes for aicm-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d65d09350d0b1fe4251ac66e63af4ebd7ec5fdd1d1af7d60f216ba02a30cd347
MD5 1de518a562577528f36f2119dfde9b05
BLAKE2b-256 338ee91e620164b672ac4f76be878175e37407f5346d5f7a2d55d25bf213b7c9

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