Do not switch the main checkout away from main for sprint work.
- Keep the primary repo checkout on
main - Use git worktrees for feature work when parallel branches are needed
- Prefer short-lived feature branches targeting
develop
sc-compose is a standalone template-composition workspace.
It contains:
sc-composer: reusable rendering librarysc-compose: CLI wrapper around the library
This repo is intentionally independent from ATM. Do not introduce
agent-team-mail-* dependencies or ATM path/runtime assumptions.
docs/requirements.mddocs/architecture.mddocs/project-plan.mddocs/git-workflows.mddocs/cross-platform-guidelines.mddocs/team-protocol.md.claude/skills/rust-development/guidelines.txt
sc-composermust remain a pure library.sc-composemay depend onsc-composer,sc-composer-beads, and standalone observability crates only.bindings/pythonis a Python-facing adapter package that may depend onsc-composeronly.bindings/pythonmust not depend onsc-compose,sc-observability, or ATM-specific crates.sc-composermust not depend onbindings/python.- Do not read
ATM_HOME. - Any ATM integration belongs in ATM adapters, not in this repo.
sc-shais a pure computation crate. It may depend only on approved hashing/encoding dependencies, and may be depended on only bysc-composer,bindings/sc-sha-python, andbindings/sc-sha-go. See ADR-0018.bindings/sc-sha-pythonis a Python-facing adapter forsc-shaonly. It may depend on publishedsc-shaplus PyO3/maturin packaging dependencies only. See ADR-0018.bindings/sc-sha-gois a generated UniFFI adapter forsc-shaonly. It may depend onsc-shaplus its approved pinned UniFFI generation/runtime dependencies; it must not depend onsc-compose,sc-composer, ATM code, filesystem/resolver policy, or another adapter.sc-shamust not depend on it. See ADR-0018 and ADR-0020.sc-composer-beadsis the host-neutral Beads formula-composition library. It may depend only onsc-composer, workspace serde/error dependencies, and the approvedprocess-wrapplatform-containment dependency. It must not depend onsc-compose, a foreign-language adapter, Beads source or database libraries, or ATM/runtime code. See ADR-0021.sc-composeis the CLI adapter oversc-composer-beads; the Beads library must not depend on the CLI.bindings/sc-composer-beads-pythonis the Python-facing adapter forsc-composer-beadsonly. It may depend on that crate plus approved PyO3/maturin/serde dependencies. It must not depend onsc-compose,sc-composer, a Beads source/database library, ATM/runtime code, or another adapter.
If this repo is being run with ATM team workflow enabled, follow
docs/team-protocol.md for all ATM messages.