From 25bc29b8a42b3ce6db13815ebe91078b134b0811 Mon Sep 17 00:00:00 2001 From: Julian lechner Date: Fri, 11 Sep 2026 14:42:21 +0200 Subject: [PATCH] chore: add repository metadata and governance --- .gitignore | 11 +++++++++ AGENTS.md | 1 + AI-Instructions.md | 60 ++++++++++++++++++++++++++++++++++++++++++++++ CLAUDE.md | 1 + LICENSE | 21 ++++++++++++++++ 5 files changed, 94 insertions(+) create mode 100644 .gitignore create mode 100644 AGENTS.md create mode 100644 AI-Instructions.md create mode 100644 CLAUDE.md create mode 100644 LICENSE diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7391d9b --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +generated/ +*.log +*.tmp +*.bak +backups/ +.env +.env.* +auth.json +credentials.json +secrets.json +!.env.example diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..7398cef --- /dev/null +++ b/AGENTS.md @@ -0,0 +1 @@ +Read and follow `AI-Instructions.md` before working in this repository. diff --git a/AI-Instructions.md b/AI-Instructions.md new file mode 100644 index 0000000..6265c96 --- /dev/null +++ b/AI-Instructions.md @@ -0,0 +1,60 @@ +# AI instructions + +This file contains maintenance instructions for this repository only. It is not +part of the generated Codex or Claude Code configuration and must not be read +or processed by build output. + +## Architecture + +Keep the architecture as: + +`shared definitions -> client adapters -> generated output -> optional installation` + +- Modify shared definitions first. +- Keep adapters limited to client-specific formats and metadata. +- Do not duplicate shared behavior in adapters. +- Treat `generated/` as reproducible build output. +- Maintain equivalent support for both Codex and Claude Code. +- Keep technology-specific rules in separate files under `shared/rules/`. +- Generate those rule files beside `AGENTS.md` and `CLAUDE.md`; load them only when their subject applies. + +## Portability + +- Design scripts, hooks, generated configuration, and installation behavior for both Windows and Linux. +- Use cross-platform tools and paths where practical. +- When platform-specific behavior is necessary, provide an equivalent implementation or a safe no-op for the other supported platform. +- Provide equivalent native Bash (`.sh`) and PowerShell (`.ps1`) entry points for every script and hook. +- Support Windows PowerShell 5.1 and newer on Windows, and PowerShell 7 (`pwsh`) on Linux. Keep shared PowerShell syntax compatible with 5.1; Windows must not require PowerShell 7. +- Validate relevant changes on both supported platforms when practical. + +## Language + +Write all repository content, generated instructions, scripts, prompts, documentation, and user-facing script output in English. + +## Workflow + +- Run `scripts/build.ps1` to validate every project change before completion. +- Rebuild generated output after semantic changes. +- Run `scripts/doctor.ps1` when changes affect generated output, installation, client configuration, hooks, or environment validation. +- Preserve backward compatibility where practical. +- Keep changes focused on the requested configuration behavior. + +## Instruction sources + +- Define repository-maintenance rules only in `AI-Instructions.md`. +- Keep the repository-root AGENTS.md and CLAUDE.md as pointer-only files. +- Keep generated global instructions in shared/global-instructions.md; the build copies that file into each generated client package. +- Do not include `AI-Instructions.md` in generated output. + +## Installation and security + +- Do not install global configuration automatically. +- Perform global installation only after explicit user instruction, using `scripts/install.ps1` so replaced managed files are backed up. +- Do not add project-specific rules, secrets, credentials, authentication state, or generated runtime state. + +## Version control + +- Never commit changes unless explicitly instructed. +- Preserve unrelated user changes. + + diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..7398cef --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1 @@ +Read and follow `AI-Instructions.md` before working in this repository. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..01cc77c --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Julian Lechner + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE.