Kotoba

Where to start

What Kotoba isWho she is and where she runs, in one page
InstallingOne package, two commands
First runA key, a model, her first words
The approval gateHow she asks before she acts
The two voice modesLocal voice, or the agent tunnel
The soul fileChange who she is
RoadmapWhat grows next, and what was cut on purpose

Or a section

↑↓ move openesc close124 pages

About Kotoba

An AI companion with a face and a voice, and an agent underneath that works on your own machine and asks before it acts.

Kotoba is an AI companion that runs on your own machine. She has an anime face that lip-syncs and changes expression, real-time two-way voice, and a full agent underneath: she searches the web, reads pages, remembers across sessions, keeps a folder of files, and runs shell commands and Python on your computer, asking you first.

There is no account, no hosted service, and nothing to sign into. You install one Python package, give it an API key for a model provider, and it talks to that provider from your machine.

Three front doors, one engine

The browser has the Live2D face and the voice call. The terminal is the same companion writing instead of speaking, with a pixel-art portrait. Discord gets a bot that reads and answers in the servers you invite her to. They share one database, one memory folder, and one file library, so something you tell her in the terminal is there in the browser afterwards.

What runs where

The model is somebody else's: OpenAI or xAI today, or any endpoint that speaks the same API. Speech is ElevenLabs, and an account there is required for the voice — one key both hears and speaks. A free local speech engine is on the roadmap and no part of it is written yet; without that key she reads and writes perfectly well, she just does not speak. Everything else is local: the agentic loop, the tools, the database, her memory, her files, and your encrypted keys. The backend binds to your own machine, and nothing has to reach in from outside.

There is no telemetry, no crash reporting, no usage ping, and no version check. What leaves your machine, and to whom, is written down in What leaves your machine.

She asks before she acts

On the default backend her commands run on your machine, with your permissions, in her working folder. Everything that executes something stops and shows you a card first: the shell, the Python runner, handing a job to a helper, and connecting or installing an MCP server. You read the exact command, you approve it or you do not.

The tools that only write inside her own folder do not ask, because that folder is the boundary for them and writing in it is her ordinary work — her memory, her notes, her reports, the files she keeps for you. What she cannot do without a card is run something. Other backends exist and are documented; none of them is a promise of isolation, and the documentation does not make one.

The name

Kotoba (言葉) is Japanese for "word", the spoken kind. She is built to be talked to out loud, and to talk back with a face that moves.

Open source

Kotoba is MIT. Use it, change it, ship it, sell what you build on it. The one condition is that the licence travels with the software. The code, the issues, and the releases are on GitHub. No Live2D model ships with the repository, because the good ones cannot be redistributed; the browser's first-run screen fetches Live2D's free sample after you accept its licence, or you supply your own.

Who makes it

Kotoba is made by one person, Rodney Dhavid Jiménez Chacín, whose other work is at rodhnin.com. The illustrations of her on this site are AI-generated images made for the project.

Getting in touch

Questions and bugs go to the GitHub repository, or to the reports page if you would rather not open an issue yourself. A security problem should not go in a public issue; the private advisory form reaches the maintainer without publishing anything. There is more on that in Reporting a vulnerability.

For anything else, the address is contact@rodhnin.com.