Scaffold Cloudron packaging workspace

This commit is contained in:
2025-10-02 13:39:36 -05:00
parent 482d4ff1b8
commit fe0ade1dd9
366 changed files with 4035 additions and 2493 deletions

37
AGENTS.md Normal file
View File

@@ -0,0 +1,37 @@
# Agent Operations Guide
## Non-negotiable rules
- Host commands are limited to `git`, `docker`, and `curl`. Everything else runs inside the provided wrapper scripts.
- Use `./run/dev.sh` for all development automation (scaffolding, linting, status updates).
- Use `./run/packager.sh` for packaging tasks that require the Cloudron CLI.
- Containers mount the repo at `/workspace`; do not write outside it.
## Images
- `knel/cloudron-devtools` built automatically by `./run/dev.sh`; contains Python tooling.
- `knel/cloudron-packager` built automatically by `./run/packager.sh`; contains the Cloudron CLI.
## Common workflows
```bash
# Generate/refresh a scaffold
./run/dev.sh python scripts/new_app.py --slug apache-apisix
# Regenerate the full catalog (overwrites existing scaffolds)
./run/dev.sh python scripts/new_app.py --force
# Lint an app (fails on TODO placeholders)
./run/dev.sh python scripts/lint_repo.py --slug apache-apisix --strict
# Refresh docs/APP_STATUS.md without changing the timestamp
./run/dev.sh python scripts/generate_status.py --preserve-timestamp
# Open the Cloudron packaging shell (add BUILD=1 to rebuild the image first)
./run/packager.sh
```
## Notes
- The first invocation of either wrapper builds the corresponding Docker image if it is missing.
- Update documentation whenever command sequences change so future agents stay aligned.