Skip to content

Source code

Repository agent guidance

Scope and safety

  • Treat this repository as the writable project. Sibling repositories are reference-only unless the user explicitly expands the scope.
  • Preserve pre-existing user changes.
  • Never discard work, force-push, or remove broad directories without explicit authorization.
  • Commit, push, tag, deploy, publish, or upload only when the user requests the action. Existing authorization remains valid for the current task.
  • Never execute release, registry-publishing, tagging, or remote deployment jobs locally. Local builds, package archives, template publication into disposable applications, and fixture servers are development checks.
  • Never expose or commit secrets. Ask before adding or upgrading production dependencies unless dependency work is already authorized.

Project discovery and implementation

  • Inspect working-tree state, package configuration, and relevant source before editing.
  • For template changes, read skills/atrium-theme/SKILL.md.
  • For documentation site content, rendering, search, or hosting configuration, read skills/atrium-documentation-site/SKILL.md.
  • For demonstration pages, demo adapters, or public showcase hosting, read skills/atrium-showcase-site/SKILL.md.
  • For product-tour narration, video generation, screenshots, or editable decks, read skills/atrium-presentation-video/SKILL.md.
  • Read docs/agents/README.md and every dedicated guidance file matching the task. More specific nested agent instructions also apply.
  • Keep maintained application, library, helper, and test code under src/. Keep Docker Bake, Dockerfiles, and NGINX configuration under resources/infrastructure/.docker/, and Coolify Compose definitions under resources/infrastructure/.deploy/, matching the sibling repositories. Keep CI jobs in the established stage-based .gitlab/ci/ includes. Root tooling configuration and manifests are allowed. Keep documentation under docs/, apart from root entrypoints and the historical audit.
  • Use Node and Yarn versions declared in package.json. Preserve yarn.lock and avoid npm or pnpm lockfiles.
  • Use the latest published stable releases for development and production libraries. Verify registry versions, pin direct dependencies exactly, and validate upgrades together. Honor the approved compatibility exceptions in development setup. Document and obtain approval for new exceptions instead of silently keeping outdated versions or installing prereleases.
  • Keep the shared UI independent of demo fixtures and application domains. Consumers own API adapters, route definitions, capabilities, and branding.
  • Provide a dedicated, complete JSDoc contract for every function and method, including anonymous callbacks, test bodies, empty functions, and configuration helpers. Follow the precise JavaScript scope in docs/agents/frontend.md.
  • Keep source, tests, exports, build paths, documentation, and generated-file exclusions synchronized.

Quality gates

  • Run the smallest relevant check while iterating. Run yarn check for repository-wide changes.
  • Run affected browser workflows when markup, styling, routing, lifecycle, or layout changes. Repository-wide moves require the full production browser suite and a packed-package consumer check.
  • Use development setup for commands and maintainer verification for production acceptance checks.
  • Review generated files and Git status after broad checks. State a concrete reason for skipped or blocked required checks.

Changelog conventions

  • Update CHANGELOG.md for behavioral, architectural, dependency, security, or user-facing documentation changes.
  • Add development changes under ## [<version>] - UNRELEASED. Create the next-version section when none exists. Before a maintainer releases that version, its committed heading must contain the publication date in English long format, such as 20 September 2026, matching the current day in Europe/Zurich. CI validates this date and never rewrites it. Do not date a release as part of ordinary development work.
  • Use - KEYWORD: (scope[,scope...]) Summary. with NEW, BUG, SEC, REV, or DOC.
  • Keep scopes concise, lowercase, and comma-separated without spaces.
  • Use indented continuation bullets only when useful, and end every parent and child item with a period.
  • Preserve released sections except to correct an actual changelog error.

Documentation and handoff

  • End every Markdown list item with a period. Never use semicolons to join prose sentences in Markdown, comments, or JSDoc. Start the next sentence with an uppercase letter. Preserve executable syntax and code examples.
  • Follow docs/agents/documentation.md for prose, metadata, and documentation ownership.
  • Explain the resulting behavior, relevant files, checks and results, dependency changes, and material limitations.
  • Report local services left running and how to stop them. Identify external state changes and delivery actions actually performed.

Author

Laurent Declercq l.declercq@agon-innovation.ch

License

Unless otherwise stated all source code is licensed under LGPL 2.1 and has the following copyright:

© 2026, Agon Partners Innovation AG, All rights reserved.

The design material and the “Agon Ātrium” trademark is the property of their authors. Reuse of them without prior consent of their respective authors is strictly prohibited.

Version

Version: 20260921