Skip to content

Mirror hermes-webtop structure and enhance Docker configuration#2

Merged
gitricko merged 80 commits into
gitricko:mainfrom
intricko:main
Jun 2, 2026
Merged

Mirror hermes-webtop structure and enhance Docker configuration#2
gitricko merged 80 commits into
gitricko:mainfrom
intricko:main

Conversation

@intricko

@intricko intricko commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

Objective

  • Resync Hermes-WebTop to this repo

This pull request introduces significant improvements to the developer experience, documentation, and Docker-based deployment for the TradingView Agent project. The updates modernize dependencies, enhance the onboarding and usage documentation, add new configuration and helper files, and streamline Docker image building and cleaning processes.

Key changes include:

Documentation and Onboarding Improvements

  • Major rewrite and expansion of README.md to provide clearer onboarding, updated feature lists, new screenshots/gifs, and improved quick start instructions. The documentation now emphasizes Hermes as the core agent, details integration with ModelRelay, OmniRoute, and Mnemon, and updates badge and repo references. [1] [2] [3] [4] [5] [6]
  • Added new onboarding/configuration files for Claude (docker/.claude.json) and session start instructions for Claude Code (docker/CLAUDE.md). [1] [2]

Docker and Dependency Upgrades

  • Updated core component versions in docker/Dockerfile: Hermes, Ollama, code-server, and Mnemon are all upgraded to newer releases. ModelRelay is now installed from a GitHub fork for latest features/fixes. [1] [2]
  • Added the GitHub CLI (gh) and improved utility installation in the Docker image, including architecture-specific handling and cleanup.
  • Improved TradingView Desktop installation using curl instead of wget for better reliability.
  • Added support for copying .md helper files into the Docker image for in-container documentation.

Docker Compose and Workflow Enhancements

  • Added a missing name field and updated port comments in docker-compose.yml for clarity; clarified that port 3000 is accessible via code-server. [1] [2]
  • Added a disk space freeing step to the GitHub Actions workflow to prevent build failures due to large Docker images.

Makefile and Cleaning Improvements

  • Added new .PHONY targets and improved Docker cleanup commands (docker-image-clean, docker-vol-clean, etc.) in the Makefile for easier local development and maintenance. [1] [2]

These changes collectively make the project easier to use, better documented, more robust in Codespaces and local Docker environments, and up to date with the latest dependencies and features.

References:
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18]

gitricko and others added 30 commits May 8, 2026 02:07
…install (gitricko#1)

* Initial plan

* feat: mirror picoclaw-webtop structure for Hermes without PicoClaw install

Agent-Logs-Url: https://github.com/gitricko/hermes-webtop/sessions/c6817793-33ef-4bd8-8f2b-07e2e12db4f6

Co-authored-by: gitricko <18060558+gitricko@users.noreply.github.com>

* fix: configure dependabot ecosystems and clean startup script typo

Agent-Logs-Url: https://github.com/gitricko/hermes-webtop/sessions/c6817793-33ef-4bd8-8f2b-07e2e12db4f6

Co-authored-by: gitricko <18060558+gitricko@users.noreply.github.com>

* feat: add development and cleanup commands to Makefile; update Dockerfile for Hermes installation; modify start script for session handling; remove obsolete automation utilities (gitricko#2)

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: gitricko <18060558+gitricko@users.noreply.github.com>
Co-authored-by: fredrickchew <fredrick.chew@gmail.com>
Bumps [docker/login-action](https://github.com/docker/login-action) from 3 to 4.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@v3...v4)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Add initial .devcontainer setup with Makefile, scripts, and configurations

* dev

* Update Hermes installation script URL in Dockerfile

* Add Hermes installation and extensions to Docker setup

* Enhance Docker setup: add ripgrep utility and improve VSCode extension installation script

* Increase wait time for code-server configuration detection in startup script
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3 to 4.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@v3...v4)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3 to 4.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](docker/setup-qemu-action@v3...v4)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 5 to 6.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](docker/metadata-action@v5...v6)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
- Introduced OmniRoute desktop entry for application launch.
- Updated Dockerfile to install OmniRoute and adjusted Hermes and ModelRelay versions.
- Added OmniRoute specific port mapping in docker-compose.yml.
- Removed outdated config.json file.
* Add OmniRoute support and update Docker configuration

- Introduced OmniRoute desktop entry for application launch.
- Updated Dockerfile to install OmniRoute and adjusted Hermes and ModelRelay versions.
- Added OmniRoute specific port mapping in docker-compose.yml.
- Removed outdated config.json file.

* Refactor Dockerfile and scripts for Hermes and OmniRoute setup; improve permissions handling and update desktop entries
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6 to 7.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@v6...v7)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Add OmniRoute support and update Docker configuration

- Introduced OmniRoute desktop entry for application launch.
- Updated Dockerfile to install OmniRoute and adjusted Hermes and ModelRelay versions.
- Added OmniRoute specific port mapping in docker-compose.yml.
- Removed outdated config.json file.

* Refactor Dockerfile and scripts for Hermes and OmniRoute setup; improve permissions handling and update desktop entries

* Update README, Dockerfile, and configuration scripts for improved Hermes-WebTop setup

- Revise README to enhance clarity and detail about features and quick start process.
- Update OmniRoute version in Dockerfile to 3.7.9.
- Modify Hermes.desktop to ensure proper execution of the Hermes dashboard.
- Adjust docker-compose.yml to reflect correct port mapping for Hermes dashboard.
- Enhance start-4-codeserver.sh to force initialization of code-server if not found.
* Add OmniRoute support and update Docker configuration

- Introduced OmniRoute desktop entry for application launch.
- Updated Dockerfile to install OmniRoute and adjusted Hermes and ModelRelay versions.
- Added OmniRoute specific port mapping in docker-compose.yml.
- Removed outdated config.json file.

* Refactor Dockerfile and scripts for Hermes and OmniRoute setup; improve permissions handling and update desktop entries

* Update README, Dockerfile, and configuration scripts for improved Hermes-WebTop setup

- Revise README to enhance clarity and detail about features and quick start process.
- Update OmniRoute version in Dockerfile to 3.7.9.
- Modify Hermes.desktop to ensure proper execution of the Hermes dashboard.
- Adjust docker-compose.yml to reflect correct port mapping for Hermes dashboard.
- Enhance start-4-codeserver.sh to force initialization of code-server if not found.

* Refactor ownership commands in startup scripts for Hermes components
* Add installation scripts and configuration for Cline, including external dependencies

* Add global state and secrets JSON files; update start-4-codeserver.sh to copy them
Disable approval alerts in hermes configuration.
gitricko and others added 29 commits May 28, 2026 11:15
Updated instructions for launching Codespace and accessing Hermes WebUI.
Increase image width for better visibility in README.
Updated README to clarify setup instructions and features.
Updated extension name from 'Cline' to 'Claude' in README.
- Rename hermes-webtop references to tradingview-agent across configs
- Add TradingView Linux Desktop installation to Dockerfile
- Add modelrelay installation/startup in post-create.sh
- Add TradingViewAgent.desktop and start-1-tradingview-agent.sh
- Update README branding for tradingview-agent
- Clean up OmniRoute password from desktop file
Synchronize the tradingview-agent fork with the latest upstream changes
from gitricko/hermes-webtop (upstream/main).

Key changes from upstream:
- Refactored init scripts: start-3-ollama.sh → start-ollama.sh,
  start-4-codeserver.sh → start-codeserver.sh,
  start-5-ohmyzsh.sh → start-ohmyzsh.sh (improved logging, PATH config, etc.)
- Added claude-code extension + mnemon integration to codeserver script
- New config files: .claude.json, CLAUDE.md, claude-term-settings.json,
  claude-vscode-settings.json
- New docs assets (screenshots, gifs)
- Various Makefile, Dockerfile, docker-compose improvements

Retained fork customizations:
- Rename to tradingview-agent across all config files
- TradingView Linux Desktop installation in Dockerfile
- TradingViewAgent.desktop and start-1-tradingview-agent.sh
- Modelrelay installation/startup in post-create.sh
- .devcontainer/post-start.sh for modelrelay on container restart
- README branding for tradingview-agent

Removed superseded files:
- docker/Dockerfile.old (legacy)
- docker/start-3-ollama.sh, start-4-codeserver.sh, start-5-ohmyzsh.sh
  (replaced by upstream versions)
…ream refactoring

The old start-2-modelrelay.sh and start-2-omniroute.sh were leftover from the
initial fork and had been superseded by start-modelrelay.sh and start-omniroute.sh
(post-refactor commits). Having both in /custom-cont-init.d/ caused double
execution at container startup (double chown, double config writes, race on
jq temp files). Removes the obsolete numbered scripts.
The base image (lscr.io/linuxserver/webtop:ubuntu-mate) does not include
wget, causing the GPG key download to silently fail. tee then creates an
empty keyring file, which makes apt-get update fail with NO_PUBKEY.

curl is already used throughout the Dockerfile (for gh, Hermes,
code-server, and mnemon installs), so this is the correct tool for the
job. Using curl -fsSL is also more robust (handles redirects, fails on
non-200).
@gitricko gitricko merged commit b8fe3c0 into gitricko:main Jun 2, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants