Claude Code skills and sync tooling for Asana-based studio project management.
studio/— Asana sync script, project registry (projects.md, gitignored), credentials (.env, gitignored)skills/— PM-specific Claude Code skills
git clone https://github.com/markbain/bain-studio ~/dev/bain-studiomkdir -p ~/.claude/skills
for skill in ~/dev/bain-studio/skills/*/; do
ln -s "$skill" ~/.claude/skills/"$(basename $skill)"
donecp ~/dev/bain-studio/studio/.env.example ~/dev/bain-studio/studio/.env
# Edit .env and fill in your valuescd ~/dev/bain-studio/studio
pip3 install -r requirements.txtpython3 ~/dev/bain-studio/studio/sync.py # all projects
python3 ~/dev/bain-studio/studio/sync.py --project MCF # one project
python3 ~/dev/bain-studio/studio/sync.py --dry-run # previewScans STUDIO_SCAN_ROOTS for CLAUDE.md files containing ASANA_PROJECT_GID. For each project, fetches open tasks assigned to your Asana user and writes a mirror to .claude/asana-mirror.md. Tasks get sequential local IDs (e.g. MCF-001) stored in a custom Asana field.
Add to a project's CLAUDE.md:
ASANA_PROJECT_GID: 1234567890
ASANA_TASK_PREFIX: MCF
ASANA_PROJECT_NAME: My Client Project
| Skill | Description |
|---|---|
asana-sync |
Sync current project's Asana tasks to local mirror |
pm-onboard |
Wire up a new project to the PM system |
project-todos |
Manage TODO.md and push tasks to Asana |
retro |
Run a session retrospective |
- bain-skills — generic Claude Code skills