Totem

Spanish Total.js / Totem

An AI coding agent
that knows Total.js.

Open a project, talk to an agent that reads your code, edits files and runs commands, and review every change. Use the model you want: one on your computer, a free cloud one or a paid one.

npm install -g totaljs-totem && totem

Node.js 22 or newer, or a Docker image. MIT license. Version 0.1.7.

Toto, the European red fox mascot of Spanish Total.js, works on a laptop.

02 / See it working

The whole thing
in one window.

Light and dark, English, Spanish and Slovak. These are screenshots of a real Totem.

Totem answering a question about Total.js with an action, a route and the recipes it used.
It answers with real Total.js. A model of 986 MB (qwen2.5:1.5b) running on a laptop, with the recipes of Totem and the pages of Forge. The answer is checked against the conventions before you see it.
The diff of an edit made by the agent, with Undo.
Every step has its diff. The tool calls, the lines that changed, and Undo.
A permission request to edit a file, with Allow once, Always allow and Reject.
It asks before it changes anything. Allow once, always allow, or reject.
A session in its own git worktree, with Merge into the project and Discard.
Parallel sessions in their own branch. Merge the work into the project, or discard it.
The terminal with an interactive shell and the commands of the agent.
A terminal that stays. The commands the agent ran, and a shell in the project folder that survives a reload.
The dialog of scheduled prompts.
Prompts that run by themselves. Every N minutes or every day, unattended, read-only unless you say otherwise.
Settings with the theme, the language and the providers.
Your models, your language. The providers and models, light or dark, English, Spanish or Slovak.

The answer in the first screenshot comes from a real model. The edits, the permission, the worktree and the terminal come from a scripted demo model (demo-agent) on a made-up project, because a model of that size does not edit files reliably and a screenshot must show the interface, not a lucky run. How the knowledge of Total.js is measured.

03 / It knows Total.js

The model does not have to
remember the framework.

A small model has seen Express a thousand times and NEWACTION never. So Totem puts the knowledge in front of it, and checks what comes out.

Recipes

Short, exact answers

20 recipes for the common tasks: routes, actions, NoSQL, config, RESTBuilder, auth, CRON, WebSockets, views, system information, jComponent, plugins. They are chosen by the words of your request and work offline.

Forge

The documentation, at hand

The page of Forge that matches the request goes to the model. Totem searches its llms.txt on your computer, so your prompt is not sent anywhere and there is nothing to allow.

Check

Every line is checked

Syntax, ES5, tabs, names with |, texts as @(English) and no invented functions. What fails goes back to the model.

04 / Any model

Bring your own
model.

Totem finds the servers on your computer and lists the models with what each one can do. A provider is any server with an OpenAI-compatible API.

  • Ollama
  • LM Studio
  • llama.cpp
  • vLLM
  • LiteLLM
  • OpenRouter
  • OpenAI
  • Anthropic
  • Google Gemini
  • Groq
  • Mistral
  • DeepSeek
  • xAI
  • Together AI
  • Fireworks AI
  • Cerebras
  • NVIDIA NIM
  • Hugging Face
  • Moonshot AI
  • Cohere

Highlighted: they run on your computer. The formats of Anthropic and Gemini are written and tested against simulators, not yet with real keys.

05 / Install

Three ways,
one minute.

The same application everywhere. Nothing to build.

npm

On your computer

Needs Node.js 22 or newer. Your data goes to a folder of your user.

npm install -g totaljs-totem totem
Docker

In a container

For linux/amd64 and linux/arm64. It refuses to start without an access token.

docker pull ghcr.io/totaljs-es/totem:latest
Source

From the repository

For developing Totem itself.

git clone https://github.com/totaljs-es/totem.git cd totem && npm install node index.js 8000

The guide to get started goes from the install to your first session, step by step, and Help has the answers to the usual problems.

06 / Safe by design

Made to be trusted
with your code.

The agent acts through tools only, and each one is checked before it runs.

  • The project is a boundary. Every path is resolved inside it, symbolic links included.
  • Plan mode is code, not a prompt. It refuses writes and commands, whatever the model says.
  • Secrets stay out. Keys and the token are scrubbed from everything the model sees; .env files ask first.
  • A shared server needs a token. It will not even start without one, and it refuses requests from other origins.
  • Honest limits. The shell and the commands run with your permissions: they protect against mistakes, not against a hostile model.
  • Isolation when you want it. The Docker image runs without root, with your project mounted.

Start in one minute.

Install it, add a model, open a folder and ask. It is open source, MIT licensed, and made by the Spanish Total.js Platform.