# Heyeddi Setup

> ALWAYS-ON prefs gate: ensures `.heyeddi/stack.json` holds git/env and agent prefs. Incomplete prefs fail git/CI/commit/push assumptions until verify_setup --check passes. Asks env layout, custom workflow escape hatch, worktrees, commit/push autonomy. Tech stack is discovered by other skills. Use when setup is incomplete or the user says setup, preferences, or heyeddi-setup.

- Skill: `heyeddi-com/heyeddi-setup` (Agent Skill, multi-file: 18 files)
- Install (CLI): `npx skillmds@latest add heyeddi-com/heyeddi-setup`
- Raw SKILL.md: https://api.skillmd.com/api/skills/heyeddi-com/heyeddi-setup/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: HeyEddi-com (https://skillmd.com/u/heyeddi-com)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/heyeddi-com/heyeddi-setup

---


# HeyEddi Setup

**Project working agreement** for agents: ensure `.heyeddi/stack.json` has **git/env + agent prefs**. Re-run anytime to update.

**Always on** as the prefs hard gate before git/CI/commit/push or agent autonomy. See `reference/setup-always-on.md` and hub `docs/always-on-skills.md`.

Does **not** quiz frontend, backends, package manager, or CI — those are filled by scaffold / engineering / CI skills as the project evolves.

## When to use

- Missing `git` / `agent` / `setup` prefs in `stack.json`
- User says "setup", "preferences", or `@heyeddi-setup`
- Session start when `verify_setup --check` fails (**hard route** — do not invent prefs)
- Before commit, push, PR base, or branch/env assumptions
- Re-run to change env layout or agent autonomy

## Hard gate

```bash
python .agents/skills/heyeddi-setup/scripts/verify_setup.py --project-root . --check
```

- **Exit 0** — honor prefs in `stack.json`
- **Exit 1** — stop git/CI/agent assumptions; finish this skill until check passes

Non-git work may continue. Never invent branch names, PR bases, or auto-commit/push while incomplete.

## Mandatory pipeline

1. `load_setup` — current `stack.json` + `missing` paths
2. `list_questions` — ask all on re-run; `--missing-only` on first pass OK
3. Ask the user (defaults shown)
4. `write_setup --json '…'`
5. `verify_setup --check` — must pass before you stop

## Questions (prefs only)

| # | Ask | Choices |
|---|-----|---------|
| 1 | Env / branch layout? | `main_staging_dev` (default) or `main_dev` |
| 2 | Different workflow? | no → keep preset; or describe (gitflow, trunk+tags, …) → `custom` |
| 3 | Git worktrees for parallel features? | yes / no |
| 4 | Agent may commit without asking? | `ask` / `auto` |
| 5 | Agent may push without asking? | `ask` / `auto` |

### Presets (always production + staging)

| Preset | Mapping |
|--------|---------|
| `main_staging_dev` | prod ← `main`, staging ← `staging`, dev ← `dev`; `pr_base` = `dev` |
| `main_dev` | prod ← `main`, staging ← `dev`; `pr_base` = `dev` |

## Tools

```bash
python .agents/skills/heyeddi-setup/scripts/load_setup.py --project-root .
python .agents/skills/heyeddi-setup/scripts/list_questions.py --project-root .
python .agents/skills/heyeddi-setup/scripts/write_setup.py --project-root . --json '{"git.preset":"main_staging_dev","git.custom_workflow":null,"git.worktrees":false,"agent.commit":"ask","agent.push":"ask"}'
python .agents/skills/heyeddi-setup/scripts/verify_setup.py --project-root . --check
```

## Agents: always honor prefs

Read `.heyeddi/stack.json` before git/commit/push (only after `verify_setup --check` passes):

- `git.environments` — which branch maps to production / staging / (optional) dev
- `git.pr_base` / `git.default_branch`
- `git.custom_workflow` — if set, follow that description over the preset
- `agent.commit` / `agent.push` — if `ask`, confirm first

## Never

- Ask frontend / backends / package manager / CI in this skill
- Put prefs outside `.heyeddi/stack.json`
- Claim setup done without `verify_setup --check`
- Treat incomplete prefs as advisory when about to commit, push, or assume branches
- Replace `@project-engineering` / `@flutter-engineering` scaffold duties

## When the task is complete: suggest next skills

```bash
python .agents/skills/heyeddi-orchestrator/scripts/suggest_next_skill.py --current-skill heyeddi-setup --project-root .
```

Include the script's **`### Next step`** block in your final reply.

## Related

- `reference/setup-always-on.md` — hard gate policy
- `reference/stack-schema.md` — key list
- `@heyeddi-orchestrator` — hard-route setup when prefs incomplete
- `@pre-merge-gate` — runs `verify_setup --check`
- `@project-engineering` / `@flutter-engineering` — discover and write tech into `stack.json`

