Getting Started
Project Structure
packages/core/— Shared types, constants, registries, and utilities (@clawup/core)packages/cli/— CLI package (commands, config, adapters)packages/pulumi/— Pulumi infrastructure components (@clawup/pulumi)packages/web/— Next.js dashboardexamples/— Example identities for referencedocs/— Mintlify documentation
Development Workflow
- Create a feature branch from
main - Make your changes
- Run
pnpm buildto verify - Submit a PR with a clear description
Conventions
- Commits: Use conventional commits (
feat:,fix:,docs:, etc.) - PRs: One PR per feature/fix, link to relevant issues
- TypeScript: Strict mode, no
anywithout comment
Adding a New Cloud Provider
- Create a new component in
packages/pulumi/src/components/ - Add provider constants to
packages/core/src/constants.ts - Update the CLI adapter and web dashboard
- Document in
docs/architecture/cloud-providers.mdx
Adding a Registry Entry
- Coding agent: Add to
packages/core/src/coding-agent-registry.tswith install script and model config - Dep: Add to
packages/core/src/dep-registry.tswith install script - Plugin: Add to
packages/core/src/plugin-registry.tswith metadata