* docs: add Supporting Other CLIs section with Claude Code, Codex and OpenCode
Adds a new documentation section covering how to use the Alias API
with third-party scaffoldings (Claude Code via proxy, Codex CLI, and
OpenCode). Includes privacy/security warning banners and support
disclaimers on each page.
* docs: update Claude Code setup to use env vars instead of proxy
* docs: clarify usage data collection scope and GDPR basis
Expand the Usage Data Collection section to explicitly mention model
training and evaluation as purposes of data collection, separate the
GDPR legal basis into its own paragraph for readability, and refine
the closing note about CAI_TELEMETRY.
Remove council page and nav; drop obsolete slash commands from docs (/config,
/context, /platform, /kill, /model-show); document /env, /model show, and
CLI examples. Update README, MkDocs, and PRO pages for usage visibility.
- Document /help, /help var, and /config for in-session env discovery
(environment_variables.md, configuration.md, FAQ, CLI reference pages).
- Add Values/When columns and a field guide aligned with REPL /help tables.
Co-authored-by: Rufino Cabrera <rufino@aliasrobotics.com>
docs: add Supporting Other CLIs section with Claude Code, Codex and OpenCode
Adds a new documentation section covering how to use the Alias API
with third-party scaffoldings (Claude Code via proxy, Codex CLI, and
OpenCode). Includes privacy/security warning banners and support
disclaimers on each page.
* Block dangerous flags in find_file function
Added a set of dangerous flags to prevent RCE and file manipulation in the find_file function.
* Fix typo in error message for dangerous flags
* Fix typo in README.md for 'Agents'
Correcting typo and adjusting diagram
* Update banner title from Alias0 to Alias1
* Fix formatting issues in README diagram
This was a formating missmatch that now is fixed
---------
Co-authored-by: UnaiAlias <52742669+UnaiAlias@users.noreply.github.com>
* feat: Add Ollama Cloud integration with ollama_cloud/ prefix
- Added support for Ollama Cloud models via AsyncOpenAI
- Models use ollama_cloud/ prefix (e.g., ollama_cloud/gpt-oss:120b)
- Reads OLLAMA_API_KEY and OLLAMA_API_BASE for cloud authentication
- Added predefined Ollama Cloud models to /model-show
- Filtered obsolete ollama/*-cloud models from LiteLLM database
- Updated authentication headers in completer, banner, and toolbar
- Added concise English documentation in docs/providers/
- Adapted to new global model cache architecture from #371
Modified files:
- src/cai/sdk/agents/models/openai_chatcompletions.py
- src/cai/repl/commands/model.py (adapted to global cache)
- src/cai/util.py
- src/cai/repl/commands/completer.py
- src/cai/repl/ui/banner.py
- src/cai/repl/ui/toolbar.py
- docs/providers/ollama.md
- docs/providers/ollama_cloud.md
All existing functionality preserved (backward compatible).
* fix: Add missing Ollama Cloud models and get_ollama_auth_headers
- Added Ollama Cloud models to get_predefined_model_categories()
- Added get_ollama_auth_headers() function to util.py
- Added Ollama Cloud to category_to_provider mapping
- Imported get_ollama_auth_headers in model.py
This fixes the issue where predefined models weren't showing in /model-show.
* fix: Display predefined models first in /model-show
- Added loop to display predefined models (Alias, Claude, OpenAI, DeepSeek, Ollama Cloud) before LiteLLM models
- Models #1-14 now correctly show predefined models
- LiteLLM models start from #15+ as expected
- Added get_ollama_auth_headers() function in util.py for Ollama Cloud auth
- Fixed model numbering to be consistent with global cache
This resolves the issue where predefined models were skipped and only LiteLLM models appeared starting from #15.
* fix: Restore correct import of cai.caibench instead of pentestperf
During rebase, the import was incorrectly changed from 'import cai.caibench as ptt'
to 'import pentestperf as ptt'. This commit restores the correct import.
The original code uses cai.caibench, not an external pentestperf module.
fix: consistent model numbering between /model and /model-show for Ollama
When using OLLAMA_API_BASE, model selection by number was incorrect.
/model-show displayed Ollama models with certain numbers, but /model <number>
selected different models from LiteLLM instead.
This happened because both commands used separate caches with inconsistent
numbering. Now they share a global cache that loads models in consistent order:
predefined → LiteLLM → Ollama.
Fixes model number mismatch when selecting Ollama models by number.
Add idle detection to prevent CAI from freezing when executing
interactive tools (cat, python -i, gdb, radare2) that wait for
user input indefinitely.
- Add non-blocking I/O with asyncio.wait_for() timeouts
- Add 10s idle timeout to terminate idle processes
- Apply to streaming and non-streaming execution paths
- Add select.select() to ShellSession._read_output()
Resolves blocking I/O issue where interactive tools would hang
CAI for the full timeout period (100s).
This release introduces significant enhancements to CAI's web security testing capabilities,
improves MCP server support, and substantially expands documentation coverage.
New Features
- Add web_pentester_agent for professional web application security testing (#353)
- Add HTTP header support to /mcp load command for SSE servers (#350)
- Implement custom tool example for agent extensibility (#347)
- Support for reasoning tokens in response processing (#318)
- Docker container based on Kali Linux for enhanced tooling (#308)
Documentation
- Add comprehensive CAI PRO documentation and CLI section (#333)
- Add four new case studies: Unitree G1, Dragos CTF, HackerOne, PortSwigger (#345)
- Add environment variables reference guide (#330)
- Add installation guides for CAI Pro v0.5 and v0.6 (#312)
- Document parallel agents functionality (#337)
- Document --continue mode for session resumption
- Document open router selection capabilities
- Add CAI_TOOL_TIMEOUT to environment docs
- Add Azure OpenAI provider configuration (#273)
Bug fixes
- Fix missing import sys error (#335)
- Fix TUI documentation issues and CAI-Pro links (#328)
- Various stability improvements and error handling enhancements
Adds --header/-H flag support to `/mcp load` for authenticated MCP servers
like Hack The Box. Handles long Bearer tokens that wrap across terminal lines.
Changes:
- Added --header/-H flag parsing in mcp.py handle_load() method
- Parse "Key: Value" format headers and strip quotes
- Pass headers to MCPServerSseParams
- Fix CLI command parsing to handle newlines from terminal wrapping
- Use shlex.split() for proper quote handling in pasted commands
Example usage:
/mcp load https://mcp.ai.hackthebox.com/v1/ctf/sse htb --header "Authorization: Bearer TOKEN"
Tested with HTB MCP server - successfully connects with 13 tools.
Developed by Claude Sonnet 4 with guidance from @AgeOfAlgorithms
Co-authored-by: AgeOfAlgorithms <AgeOfAlgorithms@pm.me>
* docs: add three new case studies to README
- Add Unitree G1 Humanoid Robot security analysis case study
- Add Dragos OT CTF 2025 Top-10 achievement case study
- Add HackerOne bug bounty platform case study
- Include case study images in docs/assets/images/
- Position new studies at the top as most recent
- Maintain consistent formatting with existing case studies
* docs: update case study descriptions with official text from web pages
- Update Unitree G1 description with official text
- Update Dragos CTF description with official text
- Update HackerOne description with official text
- Ensure consistency with published case studies
* docs: add PortSwigger case study to maintain 2-column structure
- Add PortSwigger Web Security Academy case study
- Position alongside MQTT broker in last row
- Maintain consistent 2-column layout throughout
- Include case study image in docs/assets/images/
* docs: update HackerOne case study title
- Remove 'and alias1' reference from HackerOne title
- Keep consistent naming with other case studies
* all agent are working, and docuemnted + benchmkar fixes
* revert
* Document extension of Red Team Agent
Added an example of extending the Red Team Agent with custom instructions.
---------
Co-authored-by: Maria <maria@aliasrobotics.com>
Co-authored-by: Francesco Balassone <77972200+duel0@users.noreply.github.com>