Contributing
CLIO is open source under the BSD 3-Clause license and is developed by the Gnosis Research Center at Illinois Institute of Technology, as part of IOWarp. It is in beta, so expect rough edges. Fixes, tests, documentation, and bug reports are all welcome.
The repositories
Section titled “The repositories”| Repository | What it holds |
|---|---|
| iowarp/clio-agent | The Python backend, the install scripts, Docker files, and this website (in site/) |
| iowarp/gact-tui | The workspace interfaces: terminal UI, web app, and desktop app |
| iowarp/clio-agent-marketplace | The default catalog of agent blueprints |
The backend repository includes the other two as git submodules, pinned to released tags. Do not change a submodule pin in a feature pull request. Pins are updated as part of a release.
Workflow
Section titled “Workflow”CLIO uses gitflow:
- Branch off
develop. - Open a pull request into
develop. - Releases merge
developintomainand tagvX.Y.Z.
Write commit messages in conventional style, such as feat:, fix:, docs:, test:, or refactor:. In the pull request, explain the problem and the fix, link any issue, and include the output of the checks below. Add or update tests for changes in behavior.
Set up
Section titled “Set up”You need uv and Python 3.13.
git clone --recurse-submodules https://github.com/iowarp/clio-agentcd clio-agentuv sync --extra dev --extra optimizersRun the checks
Section titled “Run the checks”Run these before opening a pull request:
uv run ruff check src/ tests/uv run ruff format src/ tests/uv run mypy src/uv run pytest tests/ -m "not integration"The file tool tests write into the system temp folder, so that folder must be an allowed root:
CLIO_ALLOWED_ROOTS="$TMPDIR:$PWD" uv run pytest tests/Run the backend from source
Section titled “Run the backend from source”uv run clio-agent serveThen connect an interface to it. Run the backend on its default port, 8100, or pass --port.
The interfaces
Section titled “The interfaces”The terminal UI, web app, and desktop app live in gact-tui. Its repository has the build and test steps for each, so follow them there.
Improve this website
Section titled “Improve this website”The website lives in the site/ folder of the backend repository. It is built with Astro and Starlight, and each page is a Markdown or MDX file under site/src/content/docs/. Read site/WRITING.md first. It sets the voice and the accuracy rules: every command, path, and variable on a page must match the source. See site/README.md for how to run the site locally. The “Edit page” link at the bottom of each page opens the file on GitHub.
Report a problem
Section titled “Report a problem”Run clio report and attach its output to a new issue at github.com/iowarp/clio-agent/issues. Remove anything private first. Say what you did, what you expected, and what happened.