⬢ SMARAN.AI CODEX
|
| Mode | What happens |
|---|---|
| Plan | Explores the real code and tells you what it would do. Changes nothing at all. |
| Manual | Asks before every change and every command. |
| Edit automatically | Changes files on its own. Still asks before running a command. |
| Auto | Works on its own, and pauses for anything that looks risky. |
Reading is never gated — listing, reading and searching change nothing, and a confirmation on each one only teaches people to click through confirmations.
"Risky" is a short list of things that are hard to undo: deleting recursively, force-pushing over published history, piping a download into a shell, overwriting a disk, publishing a package. It is not a sandbox, and this does not pretend it is one. A shell is a shell.
What it can do
list_files · read_file · write_file · edit_file · search ·
run_command · git
Everything is confined to the folder you have open. Paths are resolved and
then checked to still be inside it, so ../ and a symlink pointing out of the
tree both fail as a message rather than as a file somewhere else on your disk.
In the panel
- Setup — pick a provider, paste a key, and choose from the models that provider actually has. The list is fetched from the provider, never hardcoded: two models this was tested against were retired within a day of each other, and a typed-in list would still be offering them.
- Ollama models, installed and removed from here. Type a name, watch it download, delete one you are done with. Ollama only — LM Studio's local server has no endpoint for either, so the buttons are not offered there. Both runners are listed with what each one currently has, so if you have both you can see which is running without picking one to find out.
- History — every conversation, saved per project, on your machine. Reopen one and carry on where it stopped.
- One history with the SMARAN.AI app. With the app running on the same computer, a task begun in its Code section is in this History, and one begun here is in the app. Close one, open the other, and carry on from where you stopped. The app holds the shared copy; nothing goes anywhere else.
- Attach — pull in a file. One inside the project is named for the agent to read; one from outside is included, because no tool can reach it.
- A live preview beside the code. Build a page and it opens in the column next to the editor, reloading itself as the agent edits. The agent tests the same page in a real browser - errors, clicks, typing - and fixes what it finds.
- Every step, with its result. Each action is one line — "Read
server.js", "Created public/app.js +118", "Ran
node --test" — that turns into a tick or a cross and opens to show the diff or what the command printed. If it goes wrong, you can see the step it went wrong on. - The tools that actually ran, listed at the end beside the agent's own account of what it did. A small model will write one file and report three.
Where the model comes from
The SMARAN.AI app, free (recommended). If the SMARAN.AI app is open on this computer, choose SMARAN.AI app in Setup. It uses the free keys you saved in the app - Groq, Gemini, NVIDIA, Mistral, OpenRouter - picks the best one that is answering for code, and switches when one fails. Nothing to paste here; the keys stay in the app.
Ollama, on your machine. ollama pull qwen2.5-coder:7b, leave the
provider empty. Nothing leaves the computer.
Or LM Studio, on your machine. Start its local server (Developer tab →
Start server, or lms server start), load a model, and choose LM Studio
in Setup. The extension talks to http://127.0.0.1:1234/v1 unless
smaran.lmStudioUrl says otherwise. If LM Studio lists a model it cannot
run - it has no engine installed - the panel says so and tells you the fix
(Settings → Runtime → llama.cpp, or lms runtime get llama.cpp).
The context window matters for an agent: each step carries the task, the
tools and what came back. The extension reads the window LM Studio loaded the
model with and fits the conversation into it, shortening older output first;
Ollama is asked for 16K. For long tasks, load the model in LM Studio with a
larger context (for example lms load <model> --context-length 16384).
Or a provider key. Groq, Google Gemini, OpenRouter and NVIDIA all have free tiers; Anthropic, OpenAI and DeepSeek are paid. Paste it into Setup — it goes into your operating system's keychain, not settings.json, and is sent to that provider and nowhere else. There is no server of ours in between.
Keys entered in the SMARAN.AI desktop app are not read from here: the extension uses only the keys you give it, so what Setup shows is exactly what it has and Remove really removes it.
About the model
This matters more than any setting here. A small local model will follow the loop and still lose track of what it has done — a three-billion-parameter model, given a two-file task, wrote one file and reported that it had written two. The loop cannot make up that difference, and this extension will not pretend otherwise. A 7B coding model is a reasonable floor; the free tiers above are better.
Commands
SMARAN.AI: Open Console · Give the agent a task · Switch mode
And in the editor's right-click menu: explain, refactor, write tests, fix the problems in this file. Each writes a sentence and hands it to the same agent — "write tests for this file" writes them, runs them, and fixes what fails.
Settings
| Setting | What it does |
|---|---|
smaran.mode |
How much it may do without asking. Also in the panel. |
smaran.provider |
Which provider runs the agent. Empty means local Ollama. |
smaran.model |
Model name. Chosen from the Setup tab. |
smaran.ollamaUrl |
Where Ollama is. Only used when no provider is set. |
smaran.backendUrl |
Where the SMARAN.AI app is, for the shared coding history. |