HH OpenClaw Agent
Search intent: hh openclaw agent, hh.ru apply, job application browser automation, career submission bundle
Goal
Turn one hh.ru application run into a reusable submission bundle:
- one machine-readable application packet
- one ordered execution log with evidence
- one structural bundle check
- one shareable markdown report
This skill is for reviewed hh.ru browser execution through OpenClaw.
It assumes the browser profile is already authenticated.
Use This Skill When
- the user wants to prepare and submit an
hh.ruapplication through OpenClaw - a vacancy-specific packet should be reviewed before the live browser write
- the same
hh.ruresponse flow needs an auditable run log instead of chat memory - a blocked or failed submission needs screenshots, exact steps, and a handoff report
- the operator wants one record of approved content and live browser outcome
Quick Start
-
Initialize the application packet.
- Use
python3 {baseDir}/scripts/init_hh_application_packet.py --out <json> --packet-id <id> --vacancy-id <id> --vacancy-title <title> --company-name <company> --resume-title <resume> --vacancy-url <url> --apply-url <url> --cover-letter <text>. - Add
--browser-profile,--review-status,--reviewer, and repeatable--blocked-actionfields when needed.
- Use
-
Execute the browser flow through OpenClaw.
- Open the apply URL in a logged-in profile.
- Record each meaningful browser action with
append_hh_execution_step.py. - Capture screenshots and outcome notes as the run progresses.
-
Keep operator-owned auth and approval gates explicit.
- If
hh.rushows login, CAPTCHA, 2FA, or another auth challenge, stop and let the operator complete it in the same browser profile. - Do not live-send a packet that is still
pendingorrejected.
- If
-
Check the bundle before sharing or counting it as complete.
- Use
python3 {baseDir}/scripts/check_hh_submission_bundle.py --manifest <json> --repo-root <repo> --out <json>. - Fix approval-gate issues, missing screenshots, or incomplete failed-step notes before final handoff.
- Use
-
Render the report.
- Use
python3 {baseDir}/scripts/render_hh_submission_report.py --manifest <json> --out <md>. - The default report redacts the cover letter body, keeps only public
https://*.hh.ru/...URLs, and redacts private artifact paths. - Add
--include-sensitiveonly when you intentionally need a full-content export. - Share the report instead of loose screenshots and manual notes.
- Use
Operating Rules
Packet rules
- Keep one packet per vacancy response flow.
- The cover letter should stay vacancy-specific.
- Record vacancy URL, apply URL, resume title, and approval state before opening the live form.
Execution rules
- Use a logged-in OpenClaw browser profile for the live
hh.rusession. - Record expected result and actual result for every meaningful step.
- Capture a screenshot for failed or blocked steps and for the final submitted state when possible.
- Keep artifact paths relative so the bundle can move between machines.
Safety rules
- Do not claim undocumented
hh.ruwrite APIs. - Do not store cookies, secrets, or tokens in notes or artifacts.
- Do not send a live application unless the packet review state is
approved. - Treat login, CAPTCHA, passkey, and 2FA as operator-owned interruptions, not background automation.
Bundled Scripts
scripts/init_hh_application_packet.py- Create a machine-readable application packet for one
hh.ruresponse flow.
- Create a machine-readable application packet for one
scripts/append_hh_execution_step.py- Append one evidence-backed browser execution step to the packet.
scripts/check_hh_submission_bundle.py- Validate approval state, execution evidence, and bundle safety before handoff.
scripts/render_hh_submission_report.py- Render a concise markdown report from the packet and execution log.