aicm - AI Complete Me
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_sort(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 — aicm does 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
🛤️ 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 (M2/M3...) - Fully supported ✅
- macOS: Intel - Work in progress 🚧
- Linux: x86_64 or ARM64 - Work in progress 🚧
- 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.
Metadata
Release files for aicm 0.1.42
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| aicm-0.1.42.tar.gz | 5.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aicm-0.1.42-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.5 kB
Release files / aicm-0.1.42.tar.gz
| Download URL | aicm-0.1.42.tar.gz |
|---|---|
| Size | 5.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8d7fbcb48c8443669447ed3b7ced39153f5a9d27d13306f70e73cd1349f86aed
|
|
BLAKE2b-256 checksum How to use checksums |
af0779127a57e725728abcba2c7d4fc3db5ffa626b67a96816f751d74ca49d64
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.9
|
Release files / aicm-0.1.42-py3-none-any.whl
| Download URL | aicm-0.1.42-py3-none-any.whl |
|---|---|
| Size | 5.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
554ebdcfc96a153e434dd00d2c20114ded561934f54922e8fb7428827947f2c6
|
|
BLAKE2b-256 checksum How to use checksums |
8d6c0c508552b04c22b460e045b03c9d9b14e0fce7df8ef1e21f8f9b7e5e5913
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.9
|
Security for aicm 0.1.42
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.