{"version": 2, "width": 110, "height": 32, "timestamp": 1789195183, "title": "Local toy demo; recorded CLI output (unreleased source checkout)", "env": {"TERM": "xterm-256color"}, "local_hands_recording": {"approval_driver": "Recorder typed only the two generated toy request codes.", "redactions": ["Generated artifact directory replaced with a neutral label."], "validation": "Exit 0, final PASS, two approvals, original toy greeting unchanged.", "limits": "No remote Hermes, tunnel, real workspace, or sandbox validation."}} [0.051, "o", "Hermes Local Hands - LOCAL DEMO\r\nThis creates a toy repository and private state. No network or Hermes is used.\r\nEach patch/check still needs its own local approval.\r\nDemo files retained at: \"\"\r\n"] [0.124, "o", "\r\n1/3 - Read one allowed file and propose a change.\r\n"] [0.124, "o", "Original greeting: \"Hello from Hermes.\\n\"\r\n"] [0.195, "o", "The proposal is pending. It has not changed the original repository.\r\n"] [0.196, "o", "Hermes Local Hands - LOCAL REQUEST REVIEW\r\nrequest_id: r_kBzN_z8Zh_Zm7werF5TEDw\r\nkind: patch\r\n"] [0.196, "o", "workspace_id: demo\r\nstate: pending\r\nclient_id: demo-client\r\ncreated_at: 2026-09-12T06:39:43.798899+00:00\r\nexpires_at: 2026-09-12T06:54:43.798899+00:00\r\nbase_head: 5ea7f8d1c4c60265b32ee769a336a7029b59d171\r\npolicy_hash: 6e644573d741c5929b4bfbc8cfcd4e3baf9dbdda3a83e959c5d4689dac3fc736\r\n"] [0.196, "o", "payload_metadata:\r\n"] [0.196, "o", "{\r\n \"affected_paths\": [\r\n \"src/greeting.txt\"\r\n ],\r\n \"changed_lines\": 2,\r\n \"patch_bytes\": 103,\r\n \"patch_sha256\": \"43b95655dece84b8c497be4069b7fb1172bcc6dd6b503092f23bf3909a054380\"\r\n}\r\n----- BEGIN UNTRUSTED PATCH (each line prefixed with '| ') -----\r\n| --- a/src/greeting.txt\r\n| +++ b/src/greeting.txt\r\n"] [0.196, "o", "| @@ -1 +1 @@\r\n| -Hello from Hermes.\r\n| +Hello from Local Hands.\r\n| \r\n----- END UNTRUSTED PATCH -----\r\napproval_code: 2CE120BE64F3\r\nApprove only after reviewing the complete delimited request above.\r\nType this request's approval_code, or press Enter to stop: "] [2.2, "o", "2CE120BE64F3\r\n"] [2.554, "o", "Patch verified in its snapshot. The original repository is unchanged.\r\n\r\n2/3 - Review a check against that exact approved patch.\r\nThis fixed check reads only the toy greeting and compares its text.\r\nReal check profiles execute as your local user; they are not sandboxed.\r\nCheck program: \"from pathlib import Path; actual = Path('src/greeting.txt').read_text(encoding='utf-8'); print('Greeting matches the reviewed patch.' if actual == 'Hello from Local Hands.\\\\n' else 'Greeting did not match.'); raise SystemExit(0 if actual == 'Hello from Local Hands.\\\\n' else 1)\"\r\n"] [2.6, "o", "Hermes Local Hands - LOCAL REQUEST REVIEW\r\nrequest_id: r_KAtRrZC9xsv8C_1nyaoPRg\r\nkind: test\r\nworkspace_id: demo\r\nstate: pending\r\nclient_id: demo-client\r\ncreated_at: 2026-09-12T06:39:46.203344+00:00\r\nexpires_at: 2026-09-12T06:54:46.203344+00:00\r\nbase_head: 5ea7f8d1c4c60265b32ee769a336a7029b59d171\r\n"] [2.6, "o", "policy_hash: 6e644573d741c5929b4bfbc8cfcd4e3baf9dbdda3a83e959c5d4689dac3fc736\r\npayload_metadata:\r\n"] [2.6, "o", "{\r\n \"patch_request_id\": \"r_kBzN_z8Zh_Zm7werF5TEDw\",\r\n \"profile\": \"greeting\",\r\n \"timeout_seconds\": 10\r\n}\r\n"] [2.6, "o", "approval_code: 245330DD1C9E\r\nApprove only after reviewing the complete delimited request above.\r\n"] [2.6, "o", "Type this request's approval_code, or press Enter to stop: "] [4.605, "o", "245330DD1C9E\r\n"] [4.856, "o", "Check passed. Remote status exposes metadata; captured check output stays local.\r\n\r\n3/3 - Verify the retained receipt chain and original repository.\r\n"] [4.858, "o", "PASS: approved patch + linked check + receipt verification; original unchanged.\r\nThis was a local demo, not a two-machine, Hermes, or sandbox validation.\r\nNext: follow docs/TRY_IT.md to configure your real two-machine workflow.\r\n"]