Skip to content

docs: Architecture Overview for Agent SDK (Mermaid diagrams + subsystem guide) - #76

Closed
enyst wants to merge 2 commits into
OpenHands:mainfrom
enyst:openhands/architecture-overview-docs
Closed

enyst wants to merge 2 commits into
OpenHands:mainfrom
enyst:openhands/architecture-overview-docs

Conversation

@enyst

@enyst enyst commented Sep 3, 2025

Copy link
Copy Markdown
Member

Closes #1

Summary

  • Adds docs/architecture-overview.md with:
    • GitHub-compatible Mermaid flow and class diagrams
    • Subsystem descriptions (Agents/Conversation, LLM, Tool system, Tools package)
    • Key data structures and invariants
    • Linus-style review section (core judgment, insights, risks, improvements)
    • How to run locally and file pointers

Why

  • We initially drafted this internally; this PR updates it against current upstream main and moves it into repo docs so contributors can quickly orient themselves.

Scope

  • Documentation only. No code changes.

Validation

  • Rendered locally; Mermaid blocks use simple, GitHub-compatible syntax.

Notes

  • FinishTool is documented as a built-in core tool; environment-interacting tools live under openhands/tools.

Follow-ups (future PRs)

  • Add tests for CodeActAgent.init_state in-place mutation and for Conversation.run iteration limit with concurrent send_message (both have TODOs in code).

Co-authored-by: openhands openhands@all-hands.dev

@enyst can click here to continue refining the PR

… review guidance\n\nCo-authored-by: openhands <openhands@all-hands.dev>
@enyst enyst added the documentation Improvements or additions to documentation label Sep 3, 2025 — with OpenHands AI
…onState fields\n\nCo-authored-by: openhands <openhands@all-hands.dev>
@xingyaoww

Copy link
Copy Markdown
Contributor

@enyst i was actually wondering if we can save this prompt somewhere and create a github action that use OpenHands AI to runs this periodically and put together PRs :)

@enyst

enyst commented Sep 3, 2025

Copy link
Copy Markdown
Member Author

Yes! I was doing that here, for example:

We could keep it for later. Although I think we also need to set up an initial version, on which the cron-agent will run. Maybe when we hash it out better.

@enyst enyst closed this Sep 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants