import os, sys

# Read token from env. The shell tool should have set GITHUB_TOKEN.
token = os.environ.get('GITHUB_TOKEN', '')
print(f"DEBUG: token length = {len(token)}")
print(f"DEBUG: token starts with = {token[:4]!r}")
print(f"DEBUG: token ends with = {token[-4:]!r}")

if len(token) < 30:
    print("ERROR: token too short")
    sys.exit(1)

os.makedirs(os.path.expanduser('~/.hermes/secrets'), exist_ok=True)
os.chmod(os.path.expanduser('~/.hermes/secrets'), 0o700)

target = os.path.expanduser('~/.hermes/secrets/github.env')
with open(target, 'w') as f:
    f.write(f'GITHUB_TOKEN={token}\n')
os.chmod(target, 0o600)

# Verify
with open(target) as f:
    saved = f.read()
print(f"DEBUG: saved file length = {len(saved)}")
print(f"DEBUG: saved file first 20 chars = {saved[:20]!r}")
print(f"DEBUG: saved file last 10 chars (no newline) = {saved.rstrip()[-10:]!r}")
print(f"OK: token saved to {target} (perms 600)")
