import json, os, pathlib, subprocess, sys
checkout, state, port = sys.argv[1:]
workspace = pathlib.Path(state) / 'workspaces' / 'Fold demonstration'
workspace.mkdir(parents=True, exist_ok=True)
(workspace / 'README.md').write_text('Synthetic fold demonstration.\n')
for args in [['init', '--quiet', '--initial-branch=main'], ['add', '--all'], ['-c', 'user.name=Scenario', '-c', 'user.email=scenario@example.invalid', 'commit', '--quiet', '-m', 'Initial commit']]:
    subprocess.run(['git', *args], cwd=workspace, check=True)
env = {**os.environ, 'T3CODE_PORT': port}
def cli(args):
    return subprocess.run(['node', 'apps/server/src/bin.ts', *args, '--base-dir', state], cwd=checkout, env=env, check=True, capture_output=True, text=True).stdout
cli(['project', 'add', str(workspace), '--title', 'Fold demonstration'])
print(cli(['thread', 'start', str(workspace), 'Inspect both files', '--title', 'Earlier work', '--provider', 'devReplay', '--model', 'todo-list', '--wait', '--json']))
