# Workspace — Shared Agent Configuration This file contains shared rules for all repositories in this workspace. Each member repository may have its own ``.muse/agent.md`` with repo-specific additions. Managed by `muse agent-config` — regenerate adapters with `muse agent-config sync`. --- ## Workspace Members | Repo | Path | Branch | |------|------|--------| | **muse** | `muse` | `dev` | | **musehub** | `musehub` | `dev` | | **agentception** | `agentception` | `dev` | | **contracts** | `contracts` | `dev` | | **Stori** | `Stori` | `dev` | | **maestro** | `maestro` | `dev` | | **muse-zsh** | `muse-zsh` | `dev` | --- ## Version Control This workspace uses **Muse** for version control — not git, not GitHub. - Never run `git`, `gh`, or any git subcommand. - Never reference GitHub, GitHub Actions, or GitHub URLs. - Use `muse -C ~/path/to/repo ` when CWD differs from the target repo. If you find a `git` or `gh` call anywhere — delete it in the same commit. --- ## Branch Flow Always work on a feature branch — never commit directly to `main` or `dev`. ```bash muse -C ~/path/to/repo checkout dev muse -C ~/path/to/repo checkout -b task/my-thing muse code add . muse commit -m "feat: ..." muse -C ~/path/to/repo checkout dev muse -C ~/path/to/repo merge task/my-thing muse -C ~/path/to/repo branch -d task/my-thing muse -C ~/path/to/repo push local dev ``` --- ## Code Intelligence | Task | Command | |------|---------| | Find symbol declaration | `muse code grep "Name" --json` | | Read one symbol | `muse code cat "file.py::Symbol" --json` | | File structure | `muse code symbols --file file.py --json` | | Blast radius | `muse code impact "file.py::Symbol" --json` | | Dependencies | `muse code deps "file.py" --json` | | Tests for changed code | `muse code test --json` | --- ## Testing Rules — Read Before Running Any Test **NEVER run the full test suite.** Gabriel runs it when he's ready. Triggering it wastes time, freezes terminals, and defeats the purpose of targeted feedback. ### Correct workflow 1. **Start with `muse code test --json`** — it identifies tests relevant to the files you changed and runs only those. Use it before reaching for pytest. 2. **Run one file at a time** when fixing a specific failure: ```bash python3 -m pytest tests/test_foo.py -q --tb=short ``` 3. **Run one test by name** to verify a fix: ```bash python3 -m pytest tests/test_foo.py::test_bar -q --tb=short ``` ### Forbidden - `python3 -m pytest tests/` — runs everything, never do this - `python3 -m pytest` with no path — same as above - `pytest -x tests/` or any whole-suite invocation - Looping retries on the same command after a failure — diagnose first | Run tests for changed code | `muse code test --json` | --- ## Testing Rules **Never run the full test suite.** It is slow and gabriel runs it when he's ready. - Use `muse code test --json` first — it identifies and runs only the tests relevant to recently changed files. - When fixing a specific failing test, run only that file: `python3 -m pytest tests/test_foo.py -q --tb=short` - When verifying a fix, run only the affected test(s) by name: `python3 -m pytest tests/test_foo.py::test_bar -q --tb=short` - Never run `python3 -m pytest tests/` or any command that collects the entire suite. - Never use `-x` with the full suite — targeted runs only. - If gabriel pastes a failing test name, fix that test and verify it in isolation. Do not expand scope. # muse — Agent Configuration This repository is a member of a workspace. Shared workspace rules live in the parent ``.muse/agent.md``. This file contains only muse-specific additions. Managed by `muse agent-config` — regenerate adapters with `muse agent-config sync`. --- ## Repo-Specific Notes Add muse-specific agent rules below this line.