Skip to main content

50 docs tagged with "developer-guide"

View all tags

ACP Internals

How the ACP adapter works: lifecycle, sessions, event bridge, approvals, and tool rendering

Adding Providers

How to add a new inference provider to Hermes Agent — auth, runtime resolution, CLI flows, adapters, tests, and docs

Adding Tools

How to add a new tool to Hermes Agent — schemas, handlers, registration, and toolsets

adding-platform-adapters

This guide covers adding a new messaging platform to the Hermes gateway. A platform adapter connects Hermes to an external messaging service (Telegram…

Agent Loop Internals

Detailed walkthrough of AIAgent execution, API modes, tools, callbacks, and fallback behavior

Architecture

Hermes Agent internals — major subsystems, execution paths, data flow, and where to read next

Billing Lifecycle (TUI)

Map from every billing/subscription state and typed refusal to the exact TUI copy and recovery action

Browser CDP Supervisor

How Hermes detects and responds to native JS dialogs and interacts with cross-origin iframes via a persistent CDP connection.

Build a Hermes Plugin

Step-by-step guide to building a complete Hermes plugin with tools, hooks, data files, and skills

CLI Internals

How hermes_cli is shaped: slash dispatch, config loaders, the skin engine, the transactional update pipeline, and process-identity rules

Codebase Ownership Map

Which directories belong to which subsystem, and where the right docs entry point lives for each

Contributing

How to contribute to Hermes Agent — dev setup, code style, PR process

Creating Skills

How to create skills for Hermes Agent — SKILL.md format, guidelines, and publishing

Cron Internals

How Hermes stores, schedules, edits, pauses, skill-loads, and delivers cron jobs

Desktop Plugin SDK (@hermes/plugin-sdk)

Extend the native Hermes Desktop app — panes, pages, sidebar nav, status bar, palette commands, keybinds, themes, and a scoped backend namespace, with one import and no build step.

Egress proxy internals

How the iron-proxy egress firewall integrates with Hermes — module layout, lifecycle, security invariants, and extension points

Extending the CLI

Build wrapper CLIs that extend the Hermes TUI with custom widgets, keybindings, and layout changes

Gateway Internals

How the messaging gateway boots, authorizes users, routes sessions, and delivers messages

Gateway Monitoring

Health export, structured diagnostics, fleet queries and how to extend the monitoring plane

Gateway Session Lifecycle

SessionSource, SessionEntry, SessionStore, session-key rules and multi-user isolation in the gateway

Micro-compaction

How micro-compaction amortizes context compression cost: triggers, tail sizing, the cached-prefix trade-off

Middleware

Behavior-changing plugin middleware for LLM and tool calls: contract, execution order, examples

Observer Hooks

Read-only telemetry contract for plugins: event families, correlation IDs, payload safety

Onboarding recommendations

Guided onboarding suggests outcomes from the user's app preferences and observed capabilities. It does not grant access or implement a second connection…

Plugin LLM Access

Run any LLM call from inside a plugin via ctx.llm — chat or structured, sync or async. Host-owned auth, fail-closed trust gate, optional JSON Schema validation.

Programmatic Integration

Three protocols for driving hermes-agent from external programs: ACP, the TUI gateway JSON-RPC, and the OpenAI-compatible HTTP API

Prompt Assembly

How Hermes builds the system prompt, preserves cache stability, and injects ephemeral layers

Relay Shared Metrics

NeMo Relay shared metrics: what is exported, consent and retention, staging validation

Session Storage

Hermes Agent uses a SQLite database (~/.hermes/state.db) to persist session

State DB Recovery

How Hermes recovers state.db when the FTS index or the file itself is corrupt

Streaming TTS Internals

Sentence chunker, streaming provider ABC, capability matrix and how to add a streaming TTS provider

Tools Runtime

Runtime behavior of the tool registry, toolsets, dispatch, and terminal environments

Trajectory Format

Hermes Agent saves conversation trajectories in ShareGPT-compatible JSONL format