⚡ InfiniThink
📖 Overview
InfiniThink lets you control your computer using plain English. Type a message or speak a command, and the AI interprets it, plans the steps, and executes them — all on your machine.
You: "prepare my research workspace"
InfiniThink: ✅ Launched Chrome
✅ Launched Notion
✅ Opened research folder
Everything runs locally through Ollama (e.g. Llama 3). No API keys, no internet required for AI inference.
🏗️ Architecture
User (GUI / Voice / CLI)
│
▼
┌──────────────────────┐
│ Input Processor │ — Chat widget, STT, CLI readline
└────────┬─────────────┘
│
▼
┌──────────────────────┐
│ Command Interpreter │ — LLM via Ollama REST API → JSON command
└────────┬─────────────┘
│
▼
┌──────────────────────┐
│ Task Planner │ — Multi-step plans for complex requests
└────────┬─────────────┘
│
▼
┌──────────────────────┐
│ Execution Engine │ — Tool registry dispatch + error handling
└────────┬─────────────┘
│
▼
┌──────────────────────┐
│ Tool System │ — app_tools · file_tools · system_tools
└──────────────────────┘
│
▼
System Actions
See ARCHITECTURE.md for a full layer-by-layer breakdown.
📂 Project Structure
.
├── infini_think/ ← Core package (gui, core, tools, voice)
├── assets/ ← Application icons and media
├── tests/ ← Unit testing suite
├── .gitignore ← GitHub exclusion rules
├── requirements.txt ← Standard runtime dependencies
├── README.md ← Main documentation
├── LICENSE ← MIT License (Private/Internal)
├── ARCHITECTURE.md ← Technical architecture breakdown
└── pyproject.toml ← Python packaging and entry points
🚀 Installation
Prerequisites
| Requirement | Install / Notes |
|---|---|
| Python 3.10+ | python.org |
| Ollama | ollama.com |
| Llama 3 model | ollama pull llama3 |
1 — Clone and install
git clone https://github.com/your-org/infini-think.git
cd infini-think
pip install -r requirements.txt
Windows PyAudio note: If
pip install pyaudiofails, install the pre-built wheel:pip install pipwin && pipwin install pyaudio
2 — Start Ollama
ollama serve # start the server (new terminal)
ollama pull llama3 # download the model (first time only)
3 — Launch InfiniThink
# GUI (default)
python -m infini_think.app.launcher
# Or install as a package and use the CLI command
pip install -e .
infini-think
💬 Usage
GUI Mode (default)
Launch the chat window and type or speak your commands:
| Command | What happens |
|---|---|
open chrome |
Launches Google Chrome |
organize my downloads |
Sorts Downloads folder by type |
open my project folder |
Opens user's project directory |
prepare my research workspace |
Opens Chrome + Notion + research folder |
create a folder called Work |
Creates ~/Work |
what's my system info |
Returns CPU, RAM, OS details |
run ipconfig |
Executes shell command and shows output |
CLI Mode
infini-think --cli
# or
infini-think --cli --verbose # show plan details
Voice Mode
infini-think --voice
Override Model
infini-think --model mistral
infini-think --model llama3.1
🛠️ Development Setup
# Install dev dependencies
pip install -r requirements-dev.txt
# Run tests
python -m pytest tests/ -v
# Type checking
mypy Project/
# Linting
ruff check Project/
# Format
black Project/
🔧 Configuration
All settings in config/settings.py can be overridden via environment variables:
| Variable | Default | Description |
|---|---|---|
INFINI_OLLAMA_URL |
http://localhost:11434 |
Ollama server URL |
INFINI_OLLAMA_MODEL |
llama3 |
Model to use |
INFINI_OLLAMA_TIMEOUT |
60 |
Request timeout (seconds) |
INFINI_VOICE |
true |
Enable voice I/O |
INFINI_THEME |
dark |
UI theme (dark/light) |
INFINI_LOG_LEVEL |
INFO |
Log level |
🔭 Roadmap
- Plugin system — drop-in tools via Python entry points
- Contextual memory — conversation history across sessions
- Background agents — scheduled and event-triggered automation
- Premium UI & Themes — dynamic Dark/Light mode toggle
- Custom hotkey — global shortcut to open InfiniThink
- Windows tray icon — always-on background mode
📄 License
MIT — see LICENSE.
Metadata
Release files for infini-think 1.0.0
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 | |
|---|---|---|---|---|
| infini_think-1.0.0.tar.gz | 71.3 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| infini_think-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 153.4 kB
Release files / infini_think-1.0.0.tar.gz
| Download URL | infini_think-1.0.0.tar.gz |
|---|---|
| Size | 71.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bb16f355cdb05074736f314b57201b07f19d3a7e9af0eacc705b0104e3959b18
|
|
BLAKE2b-256 checksum How to use checksums |
1fed40b6904678f0d00296b63644518e6392fef939e72e2d45a9c823b375dcc0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Release files / infini_think-1.0.0-py3-none-any.whl
| Download URL | infini_think-1.0.0-py3-none-any.whl |
|---|---|
| Size | 82.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
889a2ff6c0a83b45fbe99e55206b8fff91b5878a3a67eaef33ca5a456c3567aa
|
|
BLAKE2b-256 checksum How to use checksums |
7bf7ba7ea6f2911e1aca2d4cd2b3bc24916ce920720c9f43e99506b6a1f53e9a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Security for infini-think 1.0.0
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.