chore: v0.2.2 release — arbitrary socket names + fmt #33

Merged
mahmoud merged 13 commits from release_v0.2.2_merge into main 2026-04-10 15:33:59 +00:00
Owner

Merges development into main with conflict resolution.

Merges development into main with conflict resolution.
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
Add global multi-service agent with intelligent service selection (#31)
Some checks failed
Build & Test / check (push) Failing after 38s
760e682309
Two-step pipeline: LLM first selects which services the prompt needs
from a catalog of all healthy services, then generates a multi-service
Python script using all selected clients.

- Add run_global_agent() with build_service_catalog() and LLM selector
- Add POST /api/agent global endpoint (no service name in URL)
- Add Agent button to navbar with full agent panel UI
- Supports model selection, retries, answer/output/script tabs
- Shows which services were selected in the result badge

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
chore: bump version to 0.2.2
Some checks failed
Build & Test / check (push) Failing after 37s
Build & Test / check (pull_request) Failing after 41s
dd7814c818
style: apply cargo fmt to agent.rs and routes.rs
All checks were successful
Build & Test / check (pull_request) Successful in 2m35s
Build & Test / check (push) Successful in 2m54s
e2b3d9c703
merge: development into main for v0.2.2 release
All checks were successful
Build & Test / check (push) Successful in 4m6s
Build & Test / check (pull_request) Successful in 3m54s
bf186f6bb0
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!33
No description provided.