├── .github ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── 10_bug_report.md │ └── 20_feature_request.md └── workflows │ ├── build-docs.yml │ └── build-publish.yml ├── .gitignore ├── .pre-commit-config.yaml ├── CHANGES.txt ├── LICENSE ├── README.md ├── docs ├── app_config.md ├── commands.md ├── development │ └── index.md ├── img │ ├── chat.png │ ├── customizations.png │ ├── haiku-rag-demo.mp4 │ ├── image_selection.png │ ├── log_viewer.svg │ ├── mcp_prompts.svg │ ├── mcp_tools.svg │ ├── splash.gif │ └── theme.png ├── index.md ├── installation.md ├── mcp │ └── index.md ├── oracle │ ├── .python-version │ ├── README.md │ ├── pyproject.toml │ └── src │ │ └── oracle │ │ ├── __init__.py │ │ └── tool.py ├── parameters.md ├── rag_example.md └── tools │ └── index.md ├── mkdocs.yml ├── pyproject.toml ├── src └── oterm │ ├── __init__.py │ ├── app │ ├── __init__.py │ ├── chat_edit.py │ ├── chat_export.py │ ├── chat_rename.py │ ├── css.py │ ├── image_browser.py │ ├── log_viewer.py │ ├── mcp_prompt.py │ ├── oterm.py │ ├── oterm.tcss │ ├── prompt_history.py │ ├── pull_model.py │ ├── splash.py │ ├── themes │ │ ├── __init__.py │ │ └── solarized_dark.py │ └── widgets │ │ ├── __init__.py │ │ ├── caps.py │ │ ├── chat.py │ │ ├── image.py │ │ ├── prompt.py │ │ └── tool_select.py │ ├── cli │ ├── __init__.py │ └── oterm.py │ ├── config.py │ ├── log.py │ ├── ollamaclient.py │ ├── store │ ├── __init__.py │ ├── store.py │ └── upgrades │ │ ├── __init__.py │ │ ├── v0_12_0.py │ │ ├── v0_13_1.py │ │ ├── v0_1_11.py │ │ ├── v0_1_6.py │ │ ├── v0_2_0.py │ │ ├── v0_2_4.py │ │ ├── v0_2_8.py │ │ ├── v0_3_0.py │ │ ├── v0_4_0.py │ │ ├── v0_5_1.py │ │ ├── v0_6_0.py │ │ ├── v0_7_0.py │ │ └── v0_9_0.py │ ├── tools │ ├── __init__.py │ ├── date_time.py │ ├── external.py │ ├── mcp │ │ ├── __init__.py │ │ ├── client.py │ │ ├── logging.py │ │ ├── prompts.py │ │ ├── sampling.py │ │ ├── setup.py │ │ └── tools.py │ ├── shell.py │ └── think.py │ ├── types.py │ └── utils.py ├── tests ├── conftest.py ├── data │ └── lama.jpg ├── test_llm_client.py ├── test_ollama_api.py ├── test_store.py ├── test_utils.py └── tools │ ├── __init__.py │ ├── mcp_servers.py │ ├── test_custom_tool.py │ ├── test_date_time_tool.py │ ├── test_mcp_auth.py │ ├── test_mcp_prompts.py │ ├── test_mcp_sampling.py │ ├── test_mcp_tools.py │ ├── test_mcp_transports.py │ ├── test_shell_tool.py │ └── test_think_tool.py └── uv.lock /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: ggozad 4 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/10_bug_report.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/.github/ISSUE_TEMPLATE/10_bug_report.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/20_feature_request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/.github/ISSUE_TEMPLATE/20_feature_request.md -------------------------------------------------------------------------------- /.github/workflows/build-docs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/.github/workflows/build-docs.yml -------------------------------------------------------------------------------- /.github/workflows/build-publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/.github/workflows/build-publish.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/.gitignore -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /CHANGES.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/CHANGES.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/README.md -------------------------------------------------------------------------------- /docs/app_config.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/app_config.md -------------------------------------------------------------------------------- /docs/commands.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/commands.md -------------------------------------------------------------------------------- /docs/development/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/development/index.md -------------------------------------------------------------------------------- /docs/img/chat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/img/chat.png -------------------------------------------------------------------------------- /docs/img/customizations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/img/customizations.png -------------------------------------------------------------------------------- /docs/img/haiku-rag-demo.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/img/haiku-rag-demo.mp4 -------------------------------------------------------------------------------- /docs/img/image_selection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/img/image_selection.png -------------------------------------------------------------------------------- /docs/img/log_viewer.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/img/log_viewer.svg -------------------------------------------------------------------------------- /docs/img/mcp_prompts.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/img/mcp_prompts.svg -------------------------------------------------------------------------------- /docs/img/mcp_tools.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/img/mcp_tools.svg -------------------------------------------------------------------------------- /docs/img/splash.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/img/splash.gif -------------------------------------------------------------------------------- /docs/img/theme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/img/theme.png -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/index.md -------------------------------------------------------------------------------- /docs/installation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/installation.md -------------------------------------------------------------------------------- /docs/mcp/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/mcp/index.md -------------------------------------------------------------------------------- /docs/oracle/.python-version: -------------------------------------------------------------------------------- 1 | 3.10 2 | -------------------------------------------------------------------------------- /docs/oracle/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/oracle/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/oracle/pyproject.toml -------------------------------------------------------------------------------- /docs/oracle/src/oracle/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/oracle/src/oracle/tool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/oracle/src/oracle/tool.py -------------------------------------------------------------------------------- /docs/parameters.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/parameters.md -------------------------------------------------------------------------------- /docs/rag_example.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/rag_example.md -------------------------------------------------------------------------------- /docs/tools/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/docs/tools/index.md -------------------------------------------------------------------------------- /mkdocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/mkdocs.yml -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/pyproject.toml -------------------------------------------------------------------------------- /src/oterm/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/oterm/app/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/oterm/app/chat_edit.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/chat_edit.py -------------------------------------------------------------------------------- /src/oterm/app/chat_export.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/chat_export.py -------------------------------------------------------------------------------- /src/oterm/app/chat_rename.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/chat_rename.py -------------------------------------------------------------------------------- /src/oterm/app/css.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/css.py -------------------------------------------------------------------------------- /src/oterm/app/image_browser.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/image_browser.py -------------------------------------------------------------------------------- /src/oterm/app/log_viewer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/log_viewer.py -------------------------------------------------------------------------------- /src/oterm/app/mcp_prompt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/mcp_prompt.py -------------------------------------------------------------------------------- /src/oterm/app/oterm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/oterm.py -------------------------------------------------------------------------------- /src/oterm/app/oterm.tcss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/oterm.tcss -------------------------------------------------------------------------------- /src/oterm/app/prompt_history.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/prompt_history.py -------------------------------------------------------------------------------- /src/oterm/app/pull_model.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/pull_model.py -------------------------------------------------------------------------------- /src/oterm/app/splash.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/splash.py -------------------------------------------------------------------------------- /src/oterm/app/themes/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/oterm/app/themes/solarized_dark.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/themes/solarized_dark.py -------------------------------------------------------------------------------- /src/oterm/app/widgets/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/oterm/app/widgets/caps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/widgets/caps.py -------------------------------------------------------------------------------- /src/oterm/app/widgets/chat.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/widgets/chat.py -------------------------------------------------------------------------------- /src/oterm/app/widgets/image.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/widgets/image.py -------------------------------------------------------------------------------- /src/oterm/app/widgets/prompt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/widgets/prompt.py -------------------------------------------------------------------------------- /src/oterm/app/widgets/tool_select.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/app/widgets/tool_select.py -------------------------------------------------------------------------------- /src/oterm/cli/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/oterm/cli/oterm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/cli/oterm.py -------------------------------------------------------------------------------- /src/oterm/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/config.py -------------------------------------------------------------------------------- /src/oterm/log.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/log.py -------------------------------------------------------------------------------- /src/oterm/ollamaclient.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/ollamaclient.py -------------------------------------------------------------------------------- /src/oterm/store/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/oterm/store/store.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/store.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/__init__.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_12_0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_12_0.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_13_1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_13_1.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_1_11.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_1_11.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_1_6.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_1_6.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_2_0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_2_0.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_2_4.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_2_4.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_2_8.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_2_8.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_3_0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_3_0.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_4_0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_4_0.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_5_1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_5_1.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_6_0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_6_0.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_7_0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_7_0.py -------------------------------------------------------------------------------- /src/oterm/store/upgrades/v0_9_0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/store/upgrades/v0_9_0.py -------------------------------------------------------------------------------- /src/oterm/tools/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/__init__.py -------------------------------------------------------------------------------- /src/oterm/tools/date_time.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/date_time.py -------------------------------------------------------------------------------- /src/oterm/tools/external.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/external.py -------------------------------------------------------------------------------- /src/oterm/tools/mcp/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/oterm/tools/mcp/client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/mcp/client.py -------------------------------------------------------------------------------- /src/oterm/tools/mcp/logging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/mcp/logging.py -------------------------------------------------------------------------------- /src/oterm/tools/mcp/prompts.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/mcp/prompts.py -------------------------------------------------------------------------------- /src/oterm/tools/mcp/sampling.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/mcp/sampling.py -------------------------------------------------------------------------------- /src/oterm/tools/mcp/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/mcp/setup.py -------------------------------------------------------------------------------- /src/oterm/tools/mcp/tools.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/mcp/tools.py -------------------------------------------------------------------------------- /src/oterm/tools/shell.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/shell.py -------------------------------------------------------------------------------- /src/oterm/tools/think.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/tools/think.py -------------------------------------------------------------------------------- /src/oterm/types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/types.py -------------------------------------------------------------------------------- /src/oterm/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/src/oterm/utils.py -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/conftest.py -------------------------------------------------------------------------------- /tests/data/lama.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/data/lama.jpg -------------------------------------------------------------------------------- /tests/test_llm_client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/test_llm_client.py -------------------------------------------------------------------------------- /tests/test_ollama_api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/test_ollama_api.py -------------------------------------------------------------------------------- /tests/test_store.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/test_store.py -------------------------------------------------------------------------------- /tests/test_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/test_utils.py -------------------------------------------------------------------------------- /tests/tools/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/tools/mcp_servers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/tools/mcp_servers.py -------------------------------------------------------------------------------- /tests/tools/test_custom_tool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/tools/test_custom_tool.py -------------------------------------------------------------------------------- /tests/tools/test_date_time_tool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/tools/test_date_time_tool.py -------------------------------------------------------------------------------- /tests/tools/test_mcp_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/tools/test_mcp_auth.py -------------------------------------------------------------------------------- /tests/tools/test_mcp_prompts.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/tools/test_mcp_prompts.py -------------------------------------------------------------------------------- /tests/tools/test_mcp_sampling.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/tools/test_mcp_sampling.py -------------------------------------------------------------------------------- /tests/tools/test_mcp_tools.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/tools/test_mcp_tools.py -------------------------------------------------------------------------------- /tests/tools/test_mcp_transports.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/tools/test_mcp_transports.py -------------------------------------------------------------------------------- /tests/tools/test_shell_tool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/tools/test_shell_tool.py -------------------------------------------------------------------------------- /tests/tools/test_think_tool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/tests/tools/test_think_tool.py -------------------------------------------------------------------------------- /uv.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ggozad/oterm/HEAD/uv.lock --------------------------------------------------------------------------------