Documentation
PoietesCMD
PoietesCMD is an autonomous agent you run on your own server. You give it a task in plain language, choose a model and the tools it may use, and a background worker carries the task out step by step. Every step is saved, so a task can be paused, survive a restart and continue from where it stopped.
It is a single-owner installation: one person signs in, and everything in the console belongs to that person.
What it does
- Runs bounded tasks. A task is a loop of model turns and tool calls with hard limits on turns, runtime, tokens, network requests and output size. It ends with a final answer, a limit, an error, or a question for you.
- Uses real tools on your files. It can list, read and search text files in one workspace folder, compute statistics on CSV files, fetch public web pages, and save the result as a file you can download.
- Asks before it exceeds your scope. A tool set to ask, or a web request to a domain you have not allowed, stops the task until you approve that exact operation.
- Keeps memory you can read. Memory is text you wrote or approved. Each task records which entries it was given.
- Runs on a schedule. The scheduler lives in the worker, not in your browser.
- Recovers. If a worker dies, another one takes the task over after a lease expires and continues from the last saved step.
What it is not
- It does not train or fine-tune a model. "Memory" means stored text that is added to a task's prompt.
- It does not run shell commands on your server. There is no command-execution tool in this version.
- It does not make every model interchangeable. A model must pass a connection test, and a task that uses tools needs a model that passed the tool-calling check.
- It does not promise exactly-once execution of external actions. See Tasks and recovery.
The parts
| Part | What it is | Where it runs |
|---|---|---|
| Console | Next.js site: landing page, docs, and the console at /console | web container |
| API | HTTP API for the console: sessions, tasks, memory, files, settings | api container |
| Worker | Claims tasks from the queue, runs them, drives the scheduler | worker container |
| PostgreSQL | All durable state, and the queue itself | postgres container |
| Data volume | Workspace files and generated artifacts | /data in api and worker |
The browser only talks to the console. The console forwards /api requests to the API; the API never executes task steps; the worker has no HTTP surface.
Where to go next
- Self-host guide: start it with Docker Compose, or run it for development.
- Provider setup: connect OpenAI, Anthropic or a local endpoint.
- Tasks and recovery: states, pause, cancel, checkpoints.
- Security model: what is protected and how.
- Known limitations: what has not been verified and what is missing.