Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
116 changes: 48 additions & 68 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,24 +1,26 @@
# Environment
# Environment and local data
.env
data
examples
.env.*
.python-version
skypilot.yaml
data/
examples/
test_gum.py

# Python
__pycache__
# Python bytecode and caches
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
pip-wheel-metadata/
__pypackages__/

# Build and distribution artifacts
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
Expand All @@ -27,90 +29,68 @@ wheels/
.installed.cfg
*.egg

# Virtual Environment
# Virtual environments
.venv/
venv/
venv.bak/
env/
ENV/
.env/
.venv/
env.bak/
venv.bak/
ENV/

# IDE
# IDE and OS noise
.idea/
.vscode/
*.swp
*.swo
.DS_Store
Thumbs.db

# Testing
# Testing and coverage
.coverage
htmlcov/
.pytest_cache/
.tox/
.nox/
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/

# Jupyter Notebook
.ipynb_checkpoints

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
.pytest_cache/
.tox/
nosetests.xml
coverage.xml
pytest-debug.log
*.cover
*.py,cover
.hypothesis/
.pytest_cache/

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# mypy
# Type checker caches
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# pytype static type analyzer
.pytype/

# Jupyter notebooks
.ipynb_checkpoints/

# Cython debug symbols
cython_debug/
cython_debug/

# Recorder artifacts
records/
**/records/
screenshots/
**/screenshots/
workflow.json
workflow.txt
*.db
*.db-*
*.sqlite
*.sqlite3
*.log
logs/
.tmp/
tmp/

# Bundled apps and installers
*.app
*.dmg
*.whl

45 changes: 44 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,50 @@ General User Models learn about you by observing any interaction you have with y

## Documentation

**Please go here for documentation on setting up and using GUMs: [https://generalusermodels.github.io/gum/](https://generalusermodels.github.io/gum/)**
**Full setup and usage docs live here: [https://generalusermodels.github.io/gum/](https://generalusermodels.github.io/gum/)**

## Record and Induce Human Workflows

This repository also contains a macOS recorder (`record/`) and induction utilities (`induce/`) for capturing and processing human-computer interaction traces.

### Record Human Computer-Use Activities

Install the recording tool:

```bash
cd record
pip install -e .
```

Follow the [instructions](record/instructions.pdf) to configure the required system settings.

Run the recorder CLI directly from the repo (no install required):

```bash
python -m record.gum
```

If you've installed the package with `pip install -e .`, you can instead invoke the console script:

```bash
gum
```

Both commands launch the macOS recorder and begin logging activities.

### Induce Human Workflows

Install dependencies and run the induction pipeline against a directory that contains recorded sessions (defaults to `~/Downloads/records`):

```bash
cd ../induce
pip install -r requirements.txt
python get_human_trajectory.py --data_dir <data_dir>
python segment.py --data_dir <data_dir>
python induce.py --data_dir <data_dir> --auto
```

`get_human_trajectory.py` merges duplicate actions, `segment.py` detects state transitions, and `induce.py` performs semantic-based segment merging. The resulting workflow artifacts are saved to `{data_dir}/workflow.json` and `{data_dir}/workflow.txt`.

## Contributing

Expand Down
99 changes: 0 additions & 99 deletions gum/batcher.py

This file was deleted.

Loading