Cloud Sync Workflow
This workflow standardizes how everyone uses the project:
- Pull the latest cloud version.
- Run the task.
- Commit and push the result back to the cloud.
The executable entrypoint is:
bash scripts/sync_workflow.shFirst-Time Setup
Beginners should not run Git commands manually. Send them
docs/codex-first-use.md; Codex will check Git capability,
clone or update the repository, read AGENTS.md, and report
any Codeup authorization blocker.
After Codex has pulled the project locally, it can check that the cloud remote is visible:
bash scripts/sync_workflow.sh statusIf Git asks who you are, configure your identity once:
git config user.name "Your Name"
git config user.email "you@example.com"Daily Beginner Flow
Before doing anything:
bash scripts/sync_workflow.sh pullAfter editing files or generating a report:
bash scripts/sync_workflow.sh upload "sync: update bid analysis"To upload only selected files or directories:
bash scripts/sync_workflow.sh upload "sync: update docs" -- README.md workflows/If one command performs the whole task, use run so pull
and upload happen automatically:
bash scripts/sync_workflow.sh run "sync: profile bid data" -- python3 scripts/profile_bid_data.py data/raw/your-file.csvAgent Flow
When an AI assistant works in this repository, it should follow AGENTS.md:
- Run
pullbefore answering or editing. - Make the requested changes.
- Run
uploadbefore the final answer.
This is the project-level rule that turns each collaboration round into a cloud synced Git workflow.
What Gets Uploaded
The upload command runs git add -A, so normal repository
files are committed. The existing .gitignore still
applies:
data/raw/stays local by default.data/processed/stays local by default.- cache, log, and temporary files stay local.
Use this rule to avoid accidentally publishing sensitive tender data, contacts, phone numbers, or customer clues.
Failure Handling
- Pull fails: someone else may have conflicting changes, or your network/cloud login may be unavailable. Resolve that before editing.
- Commit fails: configure
git user.nameandgit user.email. - Push fails: check cloud repository permission or login status.
- Command fails inside
run: the script still tries to upload any useful file changes, then returns the original command failure code.