文件最后提交记录最后更新时间
feat(dashboard): configure main + auxiliary models from Models page (#17802) Dashboard Models page was analytics-only — no way to pick a model as main for new sessions or override an auxiliary task slot without hand-editing config.yaml or running a /model slash command inside a chat. Changes: - hermes_cli/web_server.py: three REST endpoints (GET /api/model/options, GET /api/model/auxiliary, POST /api/model/set). Reuses list_authenticated_providers() from model_switch.py so the REST path surfaces the same curated model lists as the TUI-gateway model.options JSON-RPC. POST /api/model/set writes model.provider + model.default for scope=main, and auxiliary.<task>.{provider,model} for scope=auxiliary (with task="" meaning 'all 8 slots' and task="__reset__" resetting them to auto). - web/src/components/ModelPickerDialog.tsx: accepts an optional loader + onApply pair so it works without an open chat PTY. ChatSidebar's gw-WebSocket path still works unchanged (back-compat). - web/src/pages/ModelsPage.tsx: Model Settings panel at the top showing main model + collapsible list of 8 auxiliary tasks with per-row Change buttons and Reset all to auto. Every existing model card gets a 'Use as' dropdown for one-click assignment to main or any aux slot. Cards badged 'main' or 'aux · <task>' when currently assigned. - website/docs/user-guide/configuring-models.md: new docs page walking through both UI paths, aux task override patterns, troubleshooting, plus REST/CLI alternatives. - Screenshots under website/static/img/docs/dashboard-models/. Applies to new sessions only — running sessions keep their model (use /model slash command to hot-swap a live session). No prompt-cache invalidation on existing sessions.1 个月前
feat(kanban): durable multi-profile collaboration board (#17805) Salvage of PR #16100 onto current main (after emozilla's #17514 fix that unblocks plugin Pydantic body validation). History preserved on the standing feat/kanban-standing branch; this squashes the 22 iterative commits into one clean landing. What this lands: - SQLite kernel (hermes_cli/kanban_db.py) — durable task board with tasks, task_links, task_runs, task_comments, task_events, kanban_notify_subs tables. WAL mode, atomic claim via CAS, tenant-namespaced, skills JSON array per task, max-runtime timeouts, worker heartbeats, idempotency keys, circuit breaker on repeated spawn failures, crash detection via /proc/<pid>/status, run history preserved across attempts. - Dispatcher — runs inside the gateway by default (kanban.dispatch_in_gateway: true). Ticks every 60s, reclaims stale claims, promotes ready tasks, spawns `hermes -p <assignee> chat -q "work kanban task <id>"` with HERMES_KANBAN_TASK + HERMES_KANBAN_WORKSPACE env. Auto-loads --skills kanban-worker plus any per-task skills. Health telemetry warns on stuck ready queue. - Structured tool surface (tools/kanban_tools.py) — 7 tools (kanban_show, kanban_complete, kanban_block, kanban_heartbeat, kanban_comment, kanban_create, kanban_link). Gated on HERMES_KANBAN_TASK via check_fn so zero schema footprint in normal sessions. - System-prompt guidance (agent/prompt_builder.py KANBAN_GUIDANCE) injected only when kanban tools are active. - Dashboard plugin (plugins/kanban/dashboard/) — Linear-style board UI: triage/todo/ready/running/blocked/done columns, drag-drop, inline create, task drawer with markdown, comments, run history, dependency editor, bulk ops, lanes-by-profile grouping, WS-driven live refresh. Matches active dashboard theme via CSS variables. - CLI — `hermes kanban init|create|list|show|assign|link|unlink| claim|comment|complete|block|unblock|archive|tail|dispatch|context| init|gc|watch|stats|notify|log|heartbeat|runs|assignees` + /kanban slash in-session. - Worker + orchestrator skills (skills/devops/kanban-worker + kanban-orchestrator) — pattern library for good summary/metadata shapes, retry diagnostics, block-reason examples, fan-out patterns. - Per-task force-loaded skills — --skill <name> (repeatable), stored as JSON, threaded through to dispatcher argv as one --skills X pair per skill alongside the built-in kanban-worker. Dashboard + CLI + tool parity. - Deprecation of standalone hermes kanban daemon — stub exits 2 with migration guidance; --force escape hatch for headless hosts. - Docs (website/docs/user-guide/features/kanban.md + kanban-tutorial.md) with 11 dashboard screenshots walking through four user stories (Solo Dev, Fleet Farming, Role Pipeline, Circuit Breaker). - Tests (251 passing): kernel schema + migration + CAS atomicity, dispatcher logic, circuit breaker, crash detection, max-runtime timeouts, claim lifecycle, tenant isolation, idempotency keys, per- task skills round-trip + validation + dispatcher argv, tool surface (7 tools × round-trip + error paths), dashboard REST (CRUD + bulk + links + warnings), gateway-embedded dispatcher (config gate, env override, graceful shutdown), CLI deprecation stub, migration from legacy schemas. Gateway integration: - GatewayRunner._kanban_dispatcher_watcher — new asyncio background task, symmetric with _kanban_notifier_watcher. Runs dispatch_once via asyncio.to_thread so SQLite WAL never blocks the loop. Sleeps in 1s slices for snappy shutdown. Respects HERMES_KANBAN_DISPATCH_IN_GATEWAY=0 env override for debugging. - Config: new kanban section in DEFAULT_CONFIG with dispatch_in_gateway: true (default) + dispatch_interval_seconds: 60. Additive — no \_config_version bump needed. Forward-compat: - workflow_template_id / current_step_key columns on tasks (v1 writes NULL; v2 will use them for routing). - task_runs holds claim machinery (claim_lock, claim_expires, worker_pid, last_heartbeat_at) so multi-attempt history is first- class from day one. Closes #16102. Co-authored-by: emozilla <emozilla@nousresearch.com>1 个月前
feat: add proper favicon and logo for landing page and docs site Generated favicon files (ico, 16x16, 32x32, 180x180, 192x192, 512x512) from the Hermes Agent logo. Replaces the inline SVG caduceus emoji with real favicon files so Google's favicon service can pick up the logo. Landing page: updated <link> tags to reference favicon.ico, favicon PNGs, and apple-touch-icon. Docusaurus: updated config to use favicon.ico and logo.png instead of favicon.svg. 2 个月前
feat: add proper favicon and logo for landing page and docs site Generated favicon files (ico, 16x16, 32x32, 180x180, 192x192, 512x512) from the Hermes Agent logo. Replaces the inline SVG caduceus emoji with real favicon files so Google's favicon service can pick up the logo. Landing page: updated <link> tags to reference favicon.ico, favicon PNGs, and apple-touch-icon. Docusaurus: updated config to use favicon.ico and logo.png instead of favicon.svg. 2 个月前
feat: add proper favicon and logo for landing page and docs site Generated favicon files (ico, 16x16, 32x32, 180x180, 192x192, 512x512) from the Hermes Agent logo. Replaces the inline SVG caduceus emoji with real favicon files so Google's favicon service can pick up the logo. Landing page: updated <link> tags to reference favicon.ico, favicon PNGs, and apple-touch-icon. Docusaurus: updated config to use favicon.ico and logo.png instead of favicon.svg. 2 个月前
feat: add proper favicon and logo for landing page and docs site Generated favicon files (ico, 16x16, 32x32, 180x180, 192x192, 512x512) from the Hermes Agent logo. Replaces the inline SVG caduceus emoji with real favicon files so Google's favicon service can pick up the logo. Landing page: updated <link> tags to reference favicon.ico, favicon PNGs, and apple-touch-icon. Docusaurus: updated config to use favicon.ico and logo.png instead of favicon.svg. 2 个月前
feat: add documentation website (Docusaurus) - 25 documentation pages covering Getting Started, User Guide, Developer Guide, and Reference - Docusaurus with custom amber/gold theme matching the landing page branding - GitHub Actions workflow to deploy landing page + docs to GitHub Pages - Landing page at root, docs at /docs/ on hermes-agent.nousresearch.com - Content extracted and restructured from existing repo docs (README, AGENTS.md, CONTRIBUTING.md, docs/) - Auto-deploy on push to main when website/ or landingpage/ changes 2 个月前
feat: add documentation website (Docusaurus) - 25 documentation pages covering Getting Started, User Guide, Developer Guide, and Reference - Docusaurus with custom amber/gold theme matching the landing page branding - GitHub Actions workflow to deploy landing page + docs to GitHub Pages - Landing page at root, docs at /docs/ on hermes-agent.nousresearch.com - Content extracted and restructured from existing repo docs (README, AGENTS.md, CONTRIBUTING.md, docs/) - Auto-deploy on push to main when website/ or landingpage/ changes 2 个月前
feat: add proper favicon and logo for landing page and docs site Generated favicon files (ico, 16x16, 32x32, 180x180, 192x192, 512x512) from the Hermes Agent logo. Replaces the inline SVG caduceus emoji with real favicon files so Google's favicon service can pick up the logo. Landing page: updated <link> tags to reference favicon.ico, favicon PNGs, and apple-touch-icon. Docusaurus: updated config to use favicon.ico and logo.png instead of favicon.svg. 2 个月前
feat: add documentation website (Docusaurus) - 25 documentation pages covering Getting Started, User Guide, Developer Guide, and Reference - Docusaurus with custom amber/gold theme matching the landing page branding - GitHub Actions workflow to deploy landing page + docs to GitHub Pages - Landing page at root, docs at /docs/ on hermes-agent.nousresearch.com - Content extracted and restructured from existing repo docs (README, AGENTS.md, CONTRIBUTING.md, docs/) - Auto-deploy on push to main when website/ or landingpage/ changes 2 个月前