Skip to content

Conversation

@enyst
Copy link
Collaborator

@enyst enyst commented Dec 9, 2025

This PR adds a weekly workflow that refreshes the SDK architecture documentation using the OpenHands Cloud API, adapted from the ideas in OpenHands/OpenHands#10566.

What’s included

  • .github/workflows/weekly-architecture-refresh.yml
    • Runs weekly (Mon 07:00 UTC) and via manual dispatch
    • Calls a minimal helper to start an OpenHands conversation with a focused prompt
    • The remote agent opens a PR itself if updates are needed
  • scripts/openhands_api.py
    • Minimal Python client for the OpenHands API (POST /api/conversations)
    • Reads OPENHANDS_API_KEY from repo/org secrets
  • scripts/prompts/architecture_refresh.j2
    • Clear instructions for auditing and updating sdk/arch pages in the docs repo
    • Includes style and factuality requirements:
      • Do not invent behavior; verify every statement against repository code or existing docs.
      • Cite sources inline with file paths and short context (e.g., (source: openhands/agent_server/conversation.py)).
      • Prefer Mermaid diagrams; keep tone clear and neutral.
      • Include Last updated timestamp and Source commit at the bottom of each page.
    • Pull Request requirements:
      • If proposing changes vs previous week, open a PR titled: "docs: weekly architecture docs refresh"
      • Follow .github/pull_request_template.md; run pre-commit; ensure CI passes
    • Event Stream special note: requires a section "Event Stream Subscription Mechanism" with a real-world example

Credentials

  • The workflow expects OPENHANDS_API_KEY to be set as an Actions secret. If a different secret name is preferred (e.g., ALL_HANDS_BOT), we can adjust the workflow environment variable.

Notes

  • This PR intentionally does not re-add an OpenAPI sync job (already present in this repo).
  • The helper defaults to https://app.all-hands.dev and simply prints the conversation URL for traceability.

Co-authored-by: openhands [email protected]

@enyst can click here to continue refining the PR

… helper

- Add scripts/openhands_api.py minimal client for OpenHands Cloud API
- Add scripts/prompts/architecture_refresh.j2 prompt with style/citation/PR requirements
- Add .github/workflows/weekly-architecture-refresh.yml to trigger weekly refresh

Co-authored-by: openhands <[email protected]>
…lpers

- Replace urllib with requests
- Keep simple _http_json wrapper for consistency, but leverage response.json()

Co-authored-by: openhands <[email protected]>
- Use astral-sh/setup-uv and uv run with Python 3.12
- Inline requests Session calls; remove urllib/json glue

Co-authored-by: openhands <[email protected]>
…re-agent-sdk under openhands-agent-server/)

Co-authored-by: openhands <[email protected]>
…oftware-agent-sdk HEAD for audit\n\nCo-authored-by: openhands <[email protected]>
…with correct agent-server path)\n\nCo-authored-by: openhands <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants