Skip to content

hoen.yaml — repo configuration

Single committed config file for HoEN library tooling in a consuming git repo. For work-tracking: ask before creating or committing — useful, not mandatory. Per-plan ## Tracking can carry Plan ID + Board item when the file is absent.

Naming

Use hoen.yaml at the repo root — visible, committed, team-owned (like AGENTS.md). Do not use a leading dot; this is shared project config.

Avoid Why
.hoen.yaml Suggests gitignored/local config
.hoen/ directory Unnecessary until the file outgrows ~200 lines

Location

your-repo/
├── hoen.yaml           # ← here (repo root)
├── AGENTS.md
├── docs/
└── ...

Shape (version 1)

version: 1

work_tracking:
  backend: notion   # or github_projects
  component_type: ExampleComponent
  board: { ... }
  repository: { ... }

Only include sections your repo uses. backend selects adapter board keys — see work-tracking-manifest.md.

Templates

# Notion (default example)
cp path/to/hoen-library/library/skills/work-tracking/assets/hoen.example.yaml \
  hoen.yaml

# GitHub Projects
cp path/to/hoen-library/library/skills/work-tracking/assets/hoen.example.github.yaml \
  hoen.yaml

Edit work_tracking.component_type, board identity, repository, and plan_globs. Board UUIDs / project numbers belong in the consumer repo only.

Validation

node library/skills/work-tracking/scripts/validate-hoen-yaml.mjs
Layer Role
hoen.yaml Long-term linkage — board, repo, optional field IDs
Plan ## Tracking Per-plan Plan ID + Board item + Work type
AGENTS.md Human guidance — board URL, component type, sync rules

Shared field contract: shared-fields.md.