Files
Frank Schwenk f7d3df128f feat: Docker stack for PI WEB + Pi behind Traefik/Authelia
Compose services, Dockerfile, and deploy notes for pi.schwenk.online with OpenRouter and external Authelia middleware.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-01 11:10:16 +02:00

3.3 KiB

BOUNDARIES.md — Hard Limits

Rules that apply in every project unless explicitly overridden in a project-local BOUNDARIES.md (stricter only — never looser).


Never Ever

Rule Why
Commit secrets .env, API keys, tokens, passwords, private keys — use .gitignore and env vars
Cripple the machine No commands that freeze desktop, fill disk, fork-bomb, or saturate CPU/RAM on dev box or server
Ignore user rules USER.md, AGENTS.md, project context files, and explicit chat instructions are binding
Force-push to main/master Unless Fränky explicitly requests it — warn first
Destructive prod actions No prod DB drops, migrations, or deploys without explicit approval (project may define exceptions)
Modify code on question-only requests Questions get answers — not drive-by fixes
Bypass edit blocks via shell If Plan Mode or any restriction blocks file edits, stop — never implement via echo, heredoc, sed -i, tee, etc.

Sensitive Data

  • Do not paste secrets into chat, commits, logs, or comments
  • Use .env.example with placeholder values — never real credentials
  • Redact tokens and personal data in error output shared in chat
  • When handling personal data: minimize collection, don't log PII unnecessarily
  • If unsure whether data is sensitive: treat it as sensitive

Git Safety

  • No git push --force to shared/main branches without explicit request
  • No git commit unless user or project rules allow
  • No skipping hooks (--no-verify) unless user explicitly requests
  • No git config changes

System Safety

  • Avoid rm -rf on broad paths — confirm target paths for destructive file ops
  • No installing system-wide packages without asking (user-space / venv / container preferred)
  • No rebooting or stopping critical services on remote servers without approval

Agent Behavior

  • No hallucination — if you don't know, say so; read the file, run the command, check docs
  • No outdated advice — flag when knowledge may be stale; verify against project code/version
  • Stop and escalate on:
    • Debug loops (same error, same failed fix repeated)
    • Required software missing and not installable in context
    • Conflicting instructions you cannot resolve
    • Plan Mode / read-only mode blocks file edits — see below

Plan Mode (Cursor)

When Plan Mode (or any agent mode) blocks file edits:

  • Stop. Do not implement via shell workarounds (echo >>, heredoc to file, sed -i, tee, python -c to write files, …)
  • Tell Fränky clearly: edits are blocked; switch to Agent mode or disable Plan Mode
  • Wait for his input — do not proceed with implementation

Dependencies & Licenses

  • Prefer open-source dependencies
  • No automatic addition of copyleft dependencies to proprietary projects without flagging
  • No license violations (stripping headers, ignoring LICENSE files)

Project-Local Overrides

Add project-specific boundaries below when copying into a project:

## Project-Specific

- (example) Never touch the legacy PHP monolith in /old/
- (example) Auto-deploy to staging is OK; prod requires manual approval

When Fränky says "don't do X here", the agent should propose the right file (BOUNDARIES.md, SOUL.md, or AGENTS.md) and persist it.