INTENTIO is a command line framework for designing cognitive environments. You write the knowledge of your domain and the commands that use it, in plain Markdown, and a small language model works inside that space. Run a command in a guided session or call it from your own scripts. It all runs on your own Mac, and nothing leaves the machine.
Your private AI.Your structured knowledge.Your rules.Plain PHP, one laptop, no cloud.
What it is
A small model with a well-made context
01
Private
Your notes, the models and the answers stay on your machine. There is no account, no subscription and no telemetry.
02
Aligned with your domain
A space holds the rules, the vocabulary and the examples of your domain or your business. The model is given them with each request and told to stay within them, so a result follows your standards.
03
Sources you can check
Under each result, INTENTIO lists the files and passages it was built from, so you can read them yourself.
04
Structure you design
A space is a folder. Its subfolders and file names are yours to choose, and a command can use them to tell the model what kind of knowledge it is reading.
05
A small model, one laptop
The default language model is Mistral 7B, about 4 GB on disk. INTENTIO relies on the context you design, not on the size of the model. Once the models are downloaded, it needs no internet connection.
06
Images in one style
A space can write a prompt for a local image model and render it. An image you keep is used again in later renders, so your logo stays the same logo.
How it works
Four steps, three commands
01
Start a space
Copy a ready-made package, or make a folder of your own Markdown and text files under spaces/.
$ ./intentio init hook_analyzer
02
Ingest it
INTENTIO splits each file into sections, embeds them with a local model, and stores the index in a SQLite file on your disk.
$ ./intentio ingest --space=hook_analyzer
03
Ask
A guided session: choose a space, choose one of its commands, and type. The answer appears while the model writes it.
$ ./intentio interact
04
Change what it knows
Edit the files in the space and ingest again. Only the files you changed are indexed again.
Packages
Three packages ship with it
A package is a ready-made space: a folder of knowledge files, a set of commands, and a short manifest. ./intentio init <package> copies one into your spaces.
Available Prompt Templates for 'hook_analyzer':
1. analyze_hook
2. compare_hooks
3. default
4. improve_hook
5. multi_platform_report
6. report
[analyze_hook] > Most tools fail due to busyness.
Hook Analyzer
Analyzes a marketing hook, improves it, compares two, and writes a report for a given platform. It answers from a knowledge base of hook models, evaluation rules and cognitive biases.
You describe a subject in one line, and the package writes the image prompt in one fixed cartoon style and renders it. An astronaut, a cat and a knight come out looking like they belong to the same film.
Takes a product idea from a critical validation to a pitch, a competitor analysis and a Lean Canvas, then to a product image, a logo, the logo on the product, and a landing page.
Every image above was rendered on a laptop by the package it sits in.
Build your own
They are blueprints
The three packages are examples of how to build one, and they are not the limit of what you can build. A package contains no code. Its knowledge is Markdown files, and each command is one Markdown file that says what to ask you, which knowledge to load, and whether the answer is an image prompt to render.
To build your own, copy the package closest to your goal, replace the knowledge with yours, and rewrite the commands.
A command also runs without the guided session, as a single line:
$ ./intentio chat "Most tools fail due to busyness." \
--space=hook_analyzer --prompt-key=analyze_hook
So a shell script or a scheduled job can call a space you built. INTENTIO does not automate anything itself, but your automation can use it.
Requirements
What it takes
A Mac with Apple Silicon. The model server and the image renderer run on no other hardware.
PHP 8.2 or later with the sqlite3 extension, and Composer. INTENTIO itself depends on no other package.
oMLX, which serves the language model and the embedding model.
mflux, which renders images. It is optional: without it, the text commands still work.
Under 9 GB of disk for the three default models: about 4 GB for the language model (Mistral 7B), 300 MB for the embedding model, and 4.5 GB for the image model (FLUX.2 klein).
Install
$ git clone https://github.com/melasistema/intentio.git
$ cd intentio
$ composer install --no-dev
$ ./intentio status
status lists the models on the server and names a configured model that is missing. The full steps are in the README.
You own the whole tool
INTENTIO is open source. Read the code, install it, and build a space of your own.