Hermes Director Plugin — integrates Hermes with Director task orchestrator
Find a file
2026-06-16 19:49:25 +00:00
tests Add .gitignore, remove pycache artifacts 2026-06-16 19:49:25 +00:00
.gitignore Add .gitignore, remove pycache artifacts 2026-06-16 19:49:25 +00:00
__init__.py Initial: Hermes Director Plugin v1.0 2026-06-16 19:49:12 +00:00
plugin.yaml Initial: Hermes Director Plugin v1.0 2026-06-16 19:49:12 +00:00
README.md Initial: Hermes Director Plugin v1.0 2026-06-16 19:49:12 +00:00

Hermes Director Plugin

SOTA task orchestrator for autonomous software engineering via the Director (port 8657).

Install

# Plugin is already at ~/.hermes/plugins/director/
# Enable in config:
cat >> ~/.hermes/config.yaml << 'EOF'
plugins:
  enabled:
    - director
EOF

Tools

Tool Description
director_session Create a Director session from a build prompt. Decomposes into phases (Plan, Auth, API, Frontend, etc.)
director_next Get next action: execute a phase/step, run gates, or session complete
director_submit Submit step result (passed/failed). Auto-retry on failure
director_pass Mark phase as passed → triggers Decider gates + next phase
director_status Full session status with all phases and their states
director_report Detailed progress report for a session

Usage Flow

1. director_session(prompt="Build a SaaS with auth and API")
   → session_id: "abc-123", phases: 3

2. director_next(session_id="abc-123")
   → action: "execute", phase: {id:1, name:"Plan"}, step: {id:1, ...}

3. [Hermes executes the step — writes ARCHITECTURE.md]

4. director_submit(session_id="abc-123", phase_id=1, step_id=1, status="passed")
   → status: "submitted"

5. director_next(session_id="abc-123")  → next step or next phase
   ... repeat until ...

6. director_pass(session_id="abc-123", phase_id=1)
   → triggers gates + Decider → activates next phase

7. [repeat steps 2-6 for each phase]

8. director_next(session_id="abc-123") → action: "completed"

9. director_report(session_id="abc-123") → final report

Architecture

User Prompt
    │
    ▼
director_session(prompt)
    │ POST /session
    ▼
Director (8657) → decompose → phases → steps → SWE Plugin (Forgejo Issues)
    │
    ▼
director_next(session_id)
    │ GET /session/{id}/phase/next + step/next
    ▼
Hermes executes step
    │
    ▼
director_submit(...)
    │ POST step result
    ▼
director_pass(...) → Decider Gates → next phase
    │
    ▼ ... repeat until completed

Hooks

  • pre_llm_call: Injects Director availability info into system prompt on each user turn.

Tests

cd ~/.hermes/plugins/director
python3 -m pytest tests/ -v