You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
tasks: Add Docker removal task and refine FreeBSD work items
- Task NousResearch#2: Remove Docker dependency (Critical priority)
- Hermes runs natively via LocalEnvironment, no containers needed
- Make Docker backend optional with graceful fallback to local
- Update setup wizard to skip Docker on FreeBSD
- Renumbered tasks: Setup Documentation → NousResearch#3, Voice Error Handling → NousResearch#4
- Added detailed acceptance criteria for each task
- Programming assistant can now proceed with Docker removal
Copy file name to clipboardExpand all lines: PLANS/task-coordination.md
+48-6Lines changed: 48 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -104,7 +104,42 @@ Perform comprehensive audit of codebase to identify Linux-specific dependencies
104
104
105
105
---
106
106
107
-
### Task #2: Setup Documentation Review
107
+
### Task #2: Remove Docker Dependency for FreeBSD Compatibility
108
+
**Status**: [] Not started
109
+
**Priority**: Critical
110
+
**Assigned to**: Programming Assistant
111
+
112
+
**Description**:
113
+
Hermes Agent runs natively on the host system using `LocalEnvironment`. Docker is NOT required for normal operation - it's only used as an optional isolated execution backend. Since Docker has no official FreeBSD support and won't be added, we need to safely remove/disable all Docker-related code paths while ensuring native execution works perfectly.
114
+
115
+
**Background**:
116
+
-`tools/environments/local.py` (`LocalEnvironment`) already provides full terminal execution on the host
117
+
- You (waym0re) confirmed running Hermes on Linux without Docker enabled
118
+
- FreeBSD users should use native execution exclusively - no containerization needed
119
+
120
+
**Deliverables**:
121
+
1.**Audit all Docker usages** - Find every reference to `DockerEnvironment` and docker-related config
122
+
2.**Make Docker backend optional/failable** - When user selects "docker" but it's unavailable, gracefully fall back to "local" with warning
123
+
3.**Update setup wizard** - Remove Docker as an option on FreeBSD, default to local
124
+
4.**Update documentation** - Clarify that Hermes runs natively; Docker is Linux-only optional feature
125
+
5.**Test native execution** - Ensure `LocalEnvironment` works without any container dependencies
126
+
127
+
**Files to Modify**:
128
+
-`tools/terminal_tool.py:618-628` - Add fallback from docker→local when unavailable
129
+
-`hermes_cli/setup.py:1320-1400` - Skip Docker option on FreeBSD, default to local
130
+
-`hermes_cli/status.py:261-263` - Don't show Docker status on FreeBSD
131
+
-`README.md:26` - Update "Terminal backends" line to clarify native execution
132
+
-`pyproject.toml` - Remove `[modal]` and `[daytona]` extras if they depend on Docker
133
+
134
+
**Acceptance Criteria**:
135
+
- On FreeBSD, setup wizard never offers Docker as an option
136
+
- If config has `"terminal_backend": "docker"` on FreeBSD, it auto-falls back to local with warning
137
+
- All core functionality works with `LocalEnvironment` alone (no containers)
### Task #4: Create FreeBSD-Specific Error Handling for Voice Tools
124
160
**Status**: [] Not started
125
161
**Priority**: High
126
162
**Assigned to**: Programming Assistant
127
163
128
164
**Description**:
129
-
Add graceful degradation for features that don't work on FreeBSD (voice, PTY) with clear user messaging.
165
+
Add graceful degradation for features that don't work on FreeBSD (voice/STT/TTS) with clear user messaging. The audit identified `faster-whisper` as unavailable due to missing `ctranslate2` wheels.
0 commit comments