MetaMetaMeta / Analyse-July /06-compare-frameworks.md
smlflg's picture
Initial public upload from Projekte/MetaMetaMeta
3bc7cb3 verified
|
Raw History Blame Contribute Delete
5.95 kB
# Hermes/HAI vs Mainstream Agent Frameworks (2025–2026)
> Quelle: Subagent [Framework-Vergleich](d58ef0d5-9234-4a4f-b604-00377b1af562)
Samuel's stack is best understood as a **personal AI operating system**, not a reusable framework. It combines **Hermes profiles** (50+ role-specialized agents), **SOUL.md** identity contracts, **skills** as orchestration scripts, **MCP bridges** to personal data, and **HAI** as the human-facing decision/execution layer. The "agentische Sanduhr" model splits intake (top pyramid) β†’ human decision surface (middle) β†’ execution (bottom pyramid).
---
## Comparison Table
| Dimension | **Samuel Hermes/HAI** | **LangGraph** | **CrewAI** | **AutoGen** | **OpenAI Agents SDK** |
|---|---|---|---|---|---|
| **Architecture** | Profile-per-role OS: global `SOUL.md` + per-profile `SOUL.md`, `config.yaml`, skills, hooks. HAI = planner β†’ executor β†’ validator chain. Intake-router, KG, Codex/Cursor as worker lanes. "Two pyramids" sanduhr model. | **Graph**: typed `State` + `Nodes` + `Edges`. Pregel-style supersteps. Subgraphs for multi-agent. | **Dual layer**: Crews (autonomous role teams) + Flows (event-driven orchestration with `@start`/`@listen`/`@router`). Standalone since v1.0 (no LangChain). | **Layered actor model** (Core β†’ AgentChat β†’ Extensions). Async message-passing agents. **Maintenance mode** β€” successor is **Microsoft Agent Framework** (typed graph `Workflow`). | Minimal primitives: agent loop, handoffs, `Agent.as_tool()`, sessions. Thin runtime over Responses API. |
| **State** | **File artifacts** in `Projek-Managment/`: `PROJECT_STATE.md`, `BRIEFING.md`, `NEXT_STEP.md`, execution/validation reports. Lossless archives (`archive/next_steps/`, `NEXT_STEP_HISTORY.md`). Profile memory + KG MCP. Checkpoints disabled in HAI config. | **First-class typed state** with reducers (`operator.add` for messages). **Checkpointers** (Memory/SQLite/Postgres) per `thread_id`. Time-travel, replay, resume. | Flow state: dict or Pydantic model. `@persist` decorator for snapshots. Crew memory hierarchy. | Event-sourced message history in runtime. MAF adds graph-based workflow state with superstep checkpointing. | `RunState` serializable to JSON. Sessions, `conversationId`, `previousResponseId` strategies. Durable pause/resume boundary. |
| **Tool use** | Per-profile **toolsets** (terminal, file, skills, MCP). MCP: Gemini, Knowledge Graph (`kopf`), Hermes bridge, gdrive, plaud, hai-intake. **Tirith** security gate. Skills gate which tools run when. External lanes: OpenCode, Cursor Composer, Codex. | Native tool nodes in graph. MCP via LangChain ecosystem. `interrupt()` inside tool functions for approval. | Per-agent tools + LiteLLM model routing. MCP/A2A support in recent versions. Tool abstractions owned by CrewAI. | Tool execution via agent chat + extensions. MAF adds hosted tools, middleware, conversation threads. | Built-in tool loop. `needsApproval` on tools. Hosted MCP tools. Guardrails. Sandbox agents for file workspaces. |
| **Human-in-the-loop** | **Constitutional, not mechanical**: Samuel's autonomy > agent judgment. Explicit gates for commit/push/deploy/destructive/auth. HAI compresses decisions (recommended default + max 2 alternatives). `hai-minimize` reduces cognitive load. Feierabend stop. No programmatic interrupt/resume API. | `interrupt(value)` + `Command(resume=...)`. Checkpointer mandatory. Approve/reject/edit tool calls. `interrupt_before`/`after` compile-time breakpoints. Production-grade pause for days/months. | Human feedback gates in Flows. `@persist` for pause/resume. Role-based delegation with manager agent in hierarchical process. | Observation/control affordances in event runtime. MAF inherits enterprise HITL patterns from Semantic Kernel. | **Native approval flow**: `RunResult.interruptions` β†’ `state.approve()`/`reject()` β†’ `Runner.run(agent, state)`. Works across handoffs and nested `as_tool()`. |
| **Samuel does better** | β€’ Deep **personal context** (ADHS profile, uni, startup, voice intake β†’ projects) β€’ **Role hardening** via SOUL boundaries, not just prompts β€’ **Decision compression** (HAI minimize, default recommendation) β€’ **Audit trail** (artifact chain, capability ledger, lossless archives) β€’ **Multi-channel OS** (Telegram/Discord/WhatsApp/Slack + TTS/STT) β€’ **Meta-governance** (`meta-new-agent` reviews new profiles) β€’ **Life-domain specialization** (50+ profiles: uni, calendar, intake, HAI) | β€” | β€” | β€” | β€” |
| **Samuel does worse** | β€’ No typed graph or formal state machine β€’ No checkpoint/resume API (manual file state) β€’ **Operational complexity** (profile sprawl, parallel-session overload β€” documented bottleneck) β€’ Not portable/distributable β€’ Weaker testability & reproducibility β€’ Single-maintainer burden β€’ No enterprise observability/tracing out of the box | β€’ Generic β€” no personal context layer β€’ Steeper graph design learning curve β€’ Less "human decision UX" by default | β€’ Role metaphor can hide scope creep β€’ Production patterns still require Flow wrapping β€’ Less personal-OS integration | β€’ **Effectively frozen** β€” new work β†’ MAF β€’ Distributed runtime still experimental β€’ Conversation-centric, less artifact-oriented | β€’ OpenAI-centric β€’ Less multi-profile identity model β€’ No built-in intake/life-OS layer β€’ Sessions β‰  project artifact governance |
---
## Bottom Line
Samuel's stack is **stronger as a personal cognitive prosthesis** β€” context, boundaries, decision load, and auditability are first-class. Frameworks are **stronger as engineering substrates** β€” typed state, interrupt/resume, scale, and ecosystem.
The documented HAI bottleneck (execute phase + parallel session overload) is exactly where LangGraph-style checkpointing and Flow-level orchestration would help β€” but migrating SOUL/profile/artifact semantics into a framework would lose much of what makes the personal OS work.