Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: ggozad/oterm
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 0.1.17
Choose a base ref
...
head repository: ggozad/oterm
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Loading
Showing with 7,030 additions and 2,487 deletions.
  1. +3 −0 .github/FUNDING.yml
  2. +28 −0 .github/workflows/build-docs.yml
  3. +8 −12 .github/workflows/build-publish.yml
  4. +3 −1 .gitignore
  5. +396 −1 CHANGES.txt
  6. +27 −38 README.md
  7. +38 −0 docs/app_config.md
  8. +40 −0 docs/cli_commands.md
  9. +52 −0 docs/commands.md
  10. BIN docs/img/chat.png
  11. +232 −0 docs/img/customizations.svg
  12. BIN docs/img/image_selection.png
  13. +223 −0 docs/img/mcp.svg
  14. +152 −0 docs/img/ogit.svg
  15. BIN docs/img/splash.gif
  16. +232 −0 docs/img/theme.svg
  17. +43 −0 docs/index.md
  18. +55 −0 docs/installation.md
  19. +1 −0 docs/oracle/.python-version
  20. 0 oterm/__init__.py → docs/oracle/README.md
  21. +16 −0 docs/oracle/pyproject.toml
  22. 0 {oterm/app → docs/oracle/src/oracle}/__init__.py
  23. +22 −0 docs/oracle/src/oracle/tool.py
  24. +11 −0 docs/parameters.md
  25. +80 −0 docs/tools/custom_tools.md
  26. +11 −0 docs/tools/index.md
  27. +27 −0 docs/tools/mcp.md
  28. +79 −0 mkdocs.yml
  29. +0 −240 oterm/app/chat.py
  30. +0 −171 oterm/app/model_selection.py
  31. +0 −93 oterm/app/oterm.py
  32. +0 −53 oterm/app/splash.py
  33. +0 −65 oterm/config.py
  34. +0 −131 oterm/ollama.py
  35. +0 −24 oterm/store/chat.py
  36. +0 −28 oterm/store/setup.py
  37. +0 −198 oterm/store/store.py
  38. +0 −4 oterm/store/upgrades/__init__.py
  39. +0 −1,248 poetry.lock
  40. +54 −43 pyproject.toml
  41. BIN screenshots/chat.png
  42. BIN screenshots/image_selection.png
  43. BIN screenshots/model_selection.png
  44. 0 {oterm/cli → src/oterm}/__init__.py
  45. 0 {oterm/store → src/oterm/app}/__init__.py
  46. +273 −0 src/oterm/app/chat_edit.py
  47. +59 −0 src/oterm/app/chat_export.py
  48. +6 −1 { → src}/oterm/app/chat_rename.py
  49. +5 −0 src/oterm/app/css.py
  50. +66 −0 src/oterm/app/image_browser.py
  51. +266 −0 src/oterm/app/oterm.py
  52. +89 −44 { → src}/oterm/app/oterm.tcss
  53. +34 −0 src/oterm/app/prompt_history.py
  54. +54 −0 src/oterm/app/pull_model.py
  55. +98 −0 src/oterm/app/splash.py
  56. +1 −0 src/oterm/app/widgets/__init__.py
  57. +423 −0 src/oterm/app/widgets/chat.py
  58. +1 −48 oterm/app/image_browser.py → src/oterm/app/widgets/image.py
  59. +15 −0 src/oterm/app/widgets/monkey.py
  60. +70 −4 {oterm/app → src/oterm/app/widgets}/prompt.py
  61. 0 src/oterm/cli/__init__.py
  62. +60 −0 src/oterm/cli/command.py
  63. +15 −4 { → src}/oterm/cli/oterm.py
  64. 0 src/oterm/command/__init__.py
  65. +69 −0 src/oterm/command/command_template.py.jinja
  66. +123 −0 src/oterm/command/create.py
  67. +58 −0 src/oterm/config.py
  68. +219 −0 src/oterm/ollamaclient.py
  69. 0 src/oterm/store/__init__.py
  70. +270 −0 src/oterm/store/store.py
  71. +25 −0 src/oterm/store/upgrades/__init__.py
  72. 0 { → src}/oterm/store/upgrades/v0_1_11.py
  73. 0 { → src}/oterm/store/upgrades/v0_1_6.py
  74. +21 −0 src/oterm/store/upgrades/v0_2_0.py
  75. +21 −0 src/oterm/store/upgrades/v0_2_4.py
  76. +21 −0 src/oterm/store/upgrades/v0_2_8.py
  77. +35 −0 src/oterm/store/upgrades/v0_3_0.py
  78. +21 −0 src/oterm/store/upgrades/v0_4_0.py
  79. +29 −0 src/oterm/store/upgrades/v0_5_1.py
  80. +23 −0 src/oterm/store/upgrades/v0_6_0.py
  81. +37 −0 src/oterm/store/upgrades/v0_7_0.py
  82. +23 −0 src/oterm/store/upgrades/v0_9_0.py
  83. +42 −0 src/oterm/tools/__init__.py
  84. +20 −0 src/oterm/tools/date_time.py
  85. +53 −0 src/oterm/tools/location.py
  86. +185 −0 src/oterm/tools/mcp.py
  87. +26 −0 src/oterm/tools/shell.py
  88. +48 −0 src/oterm/tools/weather.py
  89. +51 −0 src/oterm/tools/web.py
  90. +25 −0 src/oterm/types.py
  91. +119 −0 src/oterm/utils.py
  92. +6 −9 tests/conftest.py
  93. +0 −19 tests/test_api_client.py
  94. +29 −7 tests/test_llm_client.py
  95. +50 −0 tests/test_ollama_api.py
  96. +1 −1 tests/test_store.py
  97. 0 tests/tools/__init__.py
  98. +13 −0 tests/tools/mcp_servers.py
  99. +22 −0 tests/tools/test_custom_tool.py
  100. +18 −0 tests/tools/test_date_time_tool.py
  101. +21 −0 tests/tools/test_location_tool.py
  102. +45 −0 tests/tools/test_mcp_tools.py
  103. +16 −0 tests/tools/test_shell_tool.py
  104. +47 −0 tests/tools/test_weather_tool.py
  105. +15 −0 tests/tools/test_web_tool.py
  106. +1,815 −0 uv.lock
3 changes: 3 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# These are supported funding model platforms

github: ggozad
28 changes: 28 additions & 0 deletions .github/workflows/build-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: build-docs
on:
push:
branches:
- main
permissions:
contents: write
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Configure Git Credentials
run: |
git config user.name github-actions[bot]
git config user.email 41898282+github-actions[bot]@users.noreply.github.com
- uses: actions/setup-python@v5
with:
python-version: 3.x
- run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
- uses: actions/cache@v4
with:
key: mkdocs-material-${{ env.cache_id }}
path: .cache
restore-keys: |
mkdocs-material-
- run: pip install mkdocs-material
- run: mkdocs gh-deploy --force
20 changes: 8 additions & 12 deletions .github/workflows/build-publish.yml
Original file line number Diff line number Diff line change
@@ -7,16 +7,12 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.10"
- uses: abatilo/actions-poetry@v2
- run: poetry config pypi-token.pypi ${{ secrets.PYPI_API_TOKEN }}
- uses: actions/checkout@v4
- name: Set up uv
run: curl -LsSf https://astral.sh/uv/0.3.0/install.sh | sh
- name: Set up Python 3.10
run: uv python install 3.10
- name: Build package
run: uvx --from build pyproject-build --installer uv
- name: Publish package
run: poetry publish --build
# For testing locally, replace pypi with testpypi
# - run: poetry config repositories.testpypi https://test.pypi.org/legacy/
# - run: poetry config pypi-token.testpypi ${{ secrets.PYPI_API_TOKEN }}
# - name: Publish package
# run: poetry publish --build -r testpypi
run: uvx twine upload -u __token__ -p ${{ secrets.PYPI_API_TOKEN }} dist/* --non-interactive
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -7,4 +7,6 @@ __pycache__/
.DS_Store
dist/
oterm.rb
photos/
photos/
.vscode
/site/
Loading