Merge branch development to main #30

Merged
mahmoud merged 9 commits from development into main 2026-04-09 12:46:32 +00:00
Owner
No description provided.
Fix agent Python executor for hyphenated service names (#26)
Some checks failed
Build & Test / check (push) Failing after 36s
33e984809f
- to_class_name() now splits on both '_' and '-' so recipe-server → RecipeServer
- Add to_python_module_name() to normalize hyphens → underscores for Python identifiers
- Cache files, staged clients, and interface stubs all use normalized names
- LLM system prompt explicitly forbids pip install — all clients are pre-staged
- Add tests for hyphenated service name handling

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace persistent venv with uv run --isolated for sandboxed execution (#26)
Some checks failed
Build & Test / check (push) Failing after 37s
0907936af8
Remove all venv creation/management code (ensure_python_env, python_executable).
Scripts now execute via `uv run --script --no-project --isolated` which gives
each invocation a clean, ephemeral environment with no state leakage between
runs. Falls back to python3 if uv is not available.

This eliminates:
- Persistent venv at ~/.hero/var/router/python/venv
- Complex uv/python3 venv creation fallback chain
- Risk of stale packages or side effects between agent runs

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add dynamic models, agent_run MCP tool, and improved error display (#27)
Some checks failed
Build & Test / check (push) Failing after 55s
6f0bf37619
- Add GET /api/models endpoint proxying ai.models to hero_aibroker
- Replace hard-coded 3-model dropdown with dynamic fetch from all providers
- Add agent_run tool to every service's MCP tools/list and tools/call
- Improve agent error display with alert styling and formatted answers

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Merge development_26 and development_27 into development
Some checks failed
Build & Test / check (push) Failing after 38s
960e05dafe
Brings in:
- #26: Fix hyphenated service names, sandboxed uv run execution
- #27: Dynamic models, agent_run MCP tool, improved error display

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fix models endpoint to handle ai.models OpenAI-compatible response format
Some checks failed
Build & Test / check (push) Failing after 35s
0374d48ae3
ai.models returns {object:"list", data:[{id:...}]}, not {models:[...]}.
Extract the data array in Rust and handle all response shapes in JS.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
fix: support arbitrary socket names in URL routing
All checks were successful
Build & Test / check (push) Successful in 2m38s
Build & Test / check (pull_request) Successful in 2m32s
c6ed792555
Before: /{service}/{name}/* where name is not rpc/ui/admin/rest/api
mapped to web_{name}.sock. Custom sockets like explorer_rpc.sock
were unreachable.

Now: check if {name}.sock exists directly on disk first. Only fall
back to web_{name}.sock if the direct name doesn't exist.

Closes #28
Reviewed-on: #29
chore: bump version to 0.2.1
Some checks failed
Create Release / build (linux-amd64-musl, true, x86_64-unknown-linux-musl) (push) Failing after 3s
Build & Test / check (push) Has been cancelled
Build & Test / check (pull_request) Has been cancelled
12f42cd2ad
Merge branch 'main' into development
All checks were successful
Build & Test / check (push) Successful in 2m51s
Build & Test / check (pull_request) Successful in 3m23s
9328552a5c
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_router!30
No description provided.