Infinidev is an autonomous AI coding agent for the terminal. It can inspect a repository, plan changes, edit code, run commands and tests, review its work, and keep project knowledge across sessions.
It works with hosted models through LiteLLM and with local models through Ollama.
An optional React web workspace provides conversations, named teams and tickets, shared notes, live process output, file diffs, findings, model settings and usage. It drives the same harness as the terminal. See Web workspace for setup, development and the current scope.

Python 3.11 or newer is required. The recommended installation uses uv, which keeps Infinidev in an isolated tool environment:
uv tool install infinidev
Upgrade later with:
uv tool upgrade infinidev
You can also install it with pipx:
pipx install infinidev
Run Infinidev from the project you want it to work on:
cd path/to/your/project
infinidev
Use /models manage to choose a provider and model, or /settings to edit the
project configuration. By default, Infinidev expects Ollama at
http://localhost:11434.
Useful command-line modes:
infinidev --no-tui # text-only interface
infinidev -p "explain this repo" # one prompt, then exit
infinidev --continue # resume the latest local session
infinidev --resume # choose, rename, or delete a previous session
Inside either interface, use /session <name> to give the current session a durable
name. The --resume picker shows all sessions registered in the active workspace database
(local-workspace entries first), including their names and estimated storage; enter
rename NUMBER NAME or delete NUMBER to manage an entry before resuming it.
Use /prompts to list the optional prompt capabilities in your shared catalog, narrow
that list with /prompts search <term>, and inspect a guide before activation with
/prompts show <name>. Then use /prompts enable <name> or /prompts disable <name>
to change one for future tasks. Use /prompts reset <name> to remove your override and
inherit the catalog or project state again.
Shared profiles live in ~/.infinidev/prompts/; a project's
.infinidev/prompts.json can override them. See Prompt profiles
for the catalog format and precedence rules.
/ps or /bg./prompts.| Command | Purpose |
|---|---|
/help | Show commands and keybindings |
/models manage | Choose the active provider and model |
/settings | View or change project settings |
/engine | Select the task execution engine |
/plan <task> | Review a plan before execution |
/mcp | Show MCP server health |
/findings | Browse saved project knowledge |
/ps or /bg | Select a background task and open its live output |
/usage | Show usage and available quota information for the selected provider |
/reindex | Rebuild the local code index |
/clear | Clear the transcript |
/exit | Quit |
request
-> principal agent
-> direct work or tickets and delegated specialists
-> evidence, tests, and objective checks
-> principal review
-> result
Infinidev stores settings, history, logs, and its SQLite knowledge database in
.infinidev/ inside the current project. Environment variables use the
INFINIDEV_ prefix. Secrets and generated runtime state should not be committed.
Council transcripts shown by /agents are process-local and retain the 100 most
recent completed councils by default, while always preserving active councils. Set
COUNCIL_HISTORY_LIMIT in .infinidev/settings.json (or
INFINIDEV_COUNCIL_HISTORY_LIMIT) to a non-negative number; use 0 to discard a
transcript after its completion event or null for unlimited retention.
See Background tasks for output tabs and shortcuts, Research teams for delegation and shared notes, and Provider usage for quota sources and optional billing credentials.
git clone https://github.com/Infinibay/infinidev.git
cd infinidev
uv sync
uv run pytest
uv run infinidev
Architecture and subsystem documentation live in docs/. Contributor
guidance is in AGENTS.md.
The Infinidev software and documentation are available under the MIT License.
The manually authored task-policy annotations in
data/task-policy-reviews/ are a separately licensed data
component; see their data license and attribution notice.
458 commits
Python
98.1%
TypeScript
1.2%
Infinidev is an autonomous AI coding agent for the terminal. It can inspect a repository, plan changes, edit code, run commands and tests, review its work, and keep project knowledge across sessions.
It works with hosted models through LiteLLM and with local models through Ollama.
An optional React web workspace provides conversations, named teams and tickets, shared notes, live process output, file diffs, findings, model settings and usage. It drives the same harness as the terminal. See Web workspace for setup, development and the current scope.

Python 3.11 or newer is required. The recommended installation uses uv, which keeps Infinidev in an isolated tool environment:
uv tool install infinidev
Upgrade later with:
uv tool upgrade infinidev
You can also install it with pipx:
pipx install infinidev
Run Infinidev from the project you want it to work on:
cd path/to/your/project
infinidev
Use /models manage to choose a provider and model, or /settings to edit the
project configuration. By default, Infinidev expects Ollama at
http://localhost:11434.
Useful command-line modes:
infinidev --no-tui # text-only interface
infinidev -p "explain this repo" # one prompt, then exit
infinidev --continue # resume the latest local session
infinidev --resume # choose, rename, or delete a previous session
Inside either interface, use /session <name> to give the current session a durable
name. The --resume picker shows all sessions registered in the active workspace database
(local-workspace entries first), including their names and estimated storage; enter
rename NUMBER NAME or delete NUMBER to manage an entry before resuming it.
Use /prompts to list the optional prompt capabilities in your shared catalog, narrow
that list with /prompts search <term>, and inspect a guide before activation with
/prompts show <name>. Then use /prompts enable <name> or /prompts disable <name>
to change one for future tasks. Use /prompts reset <name> to remove your override and
inherit the catalog or project state again.
Shared profiles live in ~/.infinidev/prompts/; a project's
.infinidev/prompts.json can override them. See Prompt profiles
for the catalog format and precedence rules.
/ps or /bg./prompts.| Command | Purpose |
|---|---|
/help | Show commands and keybindings |
/models manage | Choose the active provider and model |
/settings | View or change project settings |
/engine | Select the task execution engine |
/plan <task> | Review a plan before execution |
/mcp | Show MCP server health |
/findings | Browse saved project knowledge |
/ps or /bg | Select a background task and open its live output |
/usage | Show usage and available quota information for the selected provider |
/reindex | Rebuild the local code index |
/clear | Clear the transcript |
/exit | Quit |
request
-> principal agent
-> direct work or tickets and delegated specialists
-> evidence, tests, and objective checks
-> principal review
-> result
Infinidev stores settings, history, logs, and its SQLite knowledge database in
.infinidev/ inside the current project. Environment variables use the
INFINIDEV_ prefix. Secrets and generated runtime state should not be committed.
Council transcripts shown by /agents are process-local and retain the 100 most
recent completed councils by default, while always preserving active councils. Set
COUNCIL_HISTORY_LIMIT in .infinidev/settings.json (or
INFINIDEV_COUNCIL_HISTORY_LIMIT) to a non-negative number; use 0 to discard a
transcript after its completion event or null for unlimited retention.
See Background tasks for output tabs and shortcuts, Research teams for delegation and shared notes, and Provider usage for quota sources and optional billing credentials.
git clone https://github.com/Infinibay/infinidev.git
cd infinidev
uv sync
uv run pytest
uv run infinidev
Architecture and subsystem documentation live in docs/. Contributor
guidance is in AGENTS.md.
The Infinidev software and documentation are available under the MIT License.
The manually authored task-policy annotations in
data/task-policy-reviews/ are a separately licensed data
component; see their data license and attribution notice.
458 commits
Python
98.1%
TypeScript
1.2%