--- description: MainAX25-Stack project conventions for all work in this repo alwaysApply: true --- # MainAX25-Stack (MAX25) project rules **Governance:** [00-master-repo-governance.mdc](00-master-repo-governance.mdc) — MASTER `AGENT-INDEX.md` precedes this file. Resync every 60 min via hook. Read local [AGENT-INDEX.md](../../AGENT-INDEX.md) → [AGENTS.md](../../AGENTS.md) → [docs/DEVELOPMENT.md](../../docs/DEVELOPMENT.md) after MASTER rules are applied. ## Product **Main AX.25 Stack** — standalone Packet Radio / AX.25 hardware lifecycle. HyBBX attaches as external consumer (`packet_radio`, `baycom`, `crdop`). **v1.0.0**. Plugin hierarchy: operating mode (`betriebsform/`) → Hardware → Device. Registry: `plugins/manifest.yaml`. ## Code & scripts - Bash/shell for operator tooling; C for merged stack binaries - **Language:** entire repo **English** — docs, UI strings, examples, user-facing script output ([english-only-project.mdc](english-only-project.mdc)) - Source code comments may stay German temporarily; new comments in English - Plugin IDs, scripts, and shipped docs: **English** - Minimal scope; link to `stacks/*/` — do not duplicate stack READMEs - MAX25 owns modem/TNC prep; HyBBX owns sessions — no session logic in MAX25 ## Platform - **Linux-primary** development and operator docs (`/dev/ttyS*`, kernel BayCom, `systemctl`) - *BSD supported in principle; porting **much later** — [docs/PLATFORMS.md](../../docs/PLATFORMS.md) - BayCom kernel path and kernel AX.25 are Linux-only ## Docs - **FIXED:** No documents in `./*` — [00-master-repo-governance.mdc](00-master-repo-governance.mdc). All docs in MASTER only. - **Read** frozen `docs/` when coding; never author or edit here - **Research:** MASTER vault `projects/max25-stack/` only - [docs/MERGE-REPORT.md](../../docs/MERGE-REPORT.md) — archive only, do not extend ## Git - **Identity only:** `ngteq ` — no other author name or email in this repo (`.git/config`: `user.name`, `user.email`) - **Push only:** SSH `~/.ssh/id_ed25519_ngteq` → `git@github.com:ngteq/MAX25-Stack.git` - No commit/push unless the user asks