This document defines guidelines for AI agents working on the Launchpad project. These instructions take precedence over general tool defaults.
- Generalization: Support all AI agents, not just specific providers.
- Consistency: Follow Launchpad’s architectural patterns and conventions.
- Clarity: Document decisions and reasoning for human reviewers.
- Branching: NEVER work on, push to, or merge to the
mainbranch. All work MUST be done on feature branches.
Documentation is organized to minimize context overhead for agents:
docs/guidance/: Foundational principles and project vision.docs/requirements/: High-level product requirements (PRDs).docs/specifications/: Technical specifications, architecture, and design.docs/development/: Development workflows, building, and testing.docs/usage/: User-facing documentation.
- Read
docs/guidance/project.mdto understand core architectural principles. - For feature requests, review the relevant PRD in
docs/requirements/. - For bug fixes, review the relevant specification in
docs/specifications/. - Environment: Ensure
GOTOOLCHAIN=autois used for allgocommands to support the required toolchain.
- ALWAYS create a new feature branch from
main. - Propose changes that align with the Phase Manager architecture (
docs/specifications/architecture.md). - Ensure changes are backwards compatible or include migrations (
docs/specifications/architecture.md). - Document trade-offs and decisions in the PR description.
- NEVER push directly to
main. - NEVER merge into
main. - All work MUST be pushed to a remote feature branch for human review.
- All commits MUST be signed.
- Follow the testing strategy outlined in
docs/development/workflow.md. - Use
make localfor rapid iteration and validation.
- Language: Go (Golang).
- Core Library: k0sproject Rig for host management.
- Build System: Goreleaser (invoked via
Makefile). - Telemetry: Maintain existing telemetry patterns for installation, upgrades, and errors.
- State: Launchpad is stateless between runs; use phases for discovery.